import subprocess from ruamel.yaml import YAML from loguru import logger from ..config import metadata_path, metadata_path_txt yaml = YAML() def patch_metadata(major, minor, patch, build_i): logger.info("Patching metadata") with open(metadata_path, 'r') as file: metadata = yaml.load(file) logger.info(" - metadata loaded") product_name = metadata['ProductName'] old_data = metadata['Version'] logger.info(f" - current version: {old_data}") logger.info(f" - patched version: {major}.{minor}.{patch}.{build_i}") metadata['Version'] = f'{major}.{minor}.{patch}.{build_i}' with open(metadata_path, 'w') as file: yaml.dump(metadata, file) logger.info(" - saved") logger.info(" - creating version file") subprocess.run(['create-version-file', metadata_path, '--outfile', metadata_path_txt]) logger.info("Ready") return old_data, product_name