Files
mininet/util/versioncheck.py
T
Godopu 6f0e0f5e21
mininet-tests / Mininet Tests (ubuntu-20.04, python2) (push) Canceled after 0s
mininet-tests / Mininet Tests (ubuntu-20.04, python3) (push) Canceled after 0s
mininet-tests / Mininet Tests (ubuntu-22.04, python2) (push) Canceled after 0s
mininet-tests / Mininet Tests (ubuntu-22.04, python3) (push) Canceled after 0s
code-check / Mininet Code Check (push) Canceled after 0s
Fix Python 3.12+ compatibility for StrictVersion, pexpect, and test runner
2026-08-31 01:47:56 +00:00

30 lines
856 B
Python
Executable File

#!/usr/bin/env python
from subprocess import check_output as co
from sys import exit, version_info
def run(*args, **kwargs):
"Run co and decode for python3"
result = co(*args, **kwargs)
return result.decode() if version_info[ 0 ] >= 3 else result
# Actually run bin/mn rather than importing via python path
version = 'Mininet ' + run( 'PYTHONPATH=. bin/mn --version 2>&1', shell=True )
version = version.strip()
# Find all Mininet path references
lines = run( r"egrep -or 'Mininet [0-9\.\+]+\w*' *", shell=True )
error = False
for line in lines.split( '\n' ):
if line and 'Binary' not in line:
fname, fversion = line.split( ':' )
if version != fversion:
print( "%s: incorrect version '%s' (should be '%s')" % (
fname, fversion, version ) )
error = True
if error:
exit( 1 )