# Base image version class extension DEPENDS_append = " os-release" def do_get_version(d): import configparser import io path = d.getVar('STAGING_DIR_TARGET', True) + d.getVar('sysconfdir', True) path = os.path.join(path, 'os-release') parser = configparser.SafeConfigParser(strict=False) parser.optionxform = str version = '' try: with open(path, 'r') as fd: buf = '[root]\n' + fd.read() fd = io.StringIO(buf) parser.readfp(fd) version = parser['root']['VERSION_ID'] except: pass return version def do_get_versionID(d): import hashlib version = do_get_version(d) version = version.strip('"') version_id = (hashlib.sha512(version.encode('utf-8')).hexdigest())[:8] return version_id