test: fix parsing the mksquashfs version number

Testing with mksquasshfs 4.5.1 results in an error

    ValueError: could not convert string to float: '4.5.1'

Version 4.10 would be considered to be lower than 4.4.

Fixes: 04c9813e95 ("test/py: rewrite common tools for SquashFS tests")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
This commit is contained in:
Heinrich Schuchardt 2022-05-24 13:36:21 +02:00 committed by Tom Rini
parent d9402bd49b
commit d051a91c8d

View File

@ -146,15 +146,14 @@ def get_mksquashfs_version():
out = subprocess.run(['mksquashfs -version'], shell=True, check=True,
capture_output=True, text=True)
# 'out' is: mksquashfs version X (yyyy/mm/dd) ...
return float(out.stdout.split()[2].split('-')[0])
return out.stdout.split()[2].split('.')[0:2]
def check_mksquashfs_version():
""" Checks if mksquashfs meets the required version. """
required_version = 4.4
if get_mksquashfs_version() < required_version:
print('Error: mksquashfs is too old.')
print('Required version: {}'.format(required_version))
version = get_mksquashfs_version();
if int(version[0]) < 4 or int(version[0]) == 4 and int(version[1]) < 4 :
print('Error: mksquashfs is too old, required version: 4.4')
raise AssertionError
def make_all_images(build_dir):