''' @author: olivier.massot, 2019 ''' import configparser from core import constants from zipfile import ZipFile from path import Path build_dir = constants.MAIN / "build" version = constants.VERSION name = f"MnCheck_v{version}.zip" config = configparser.ConfigParser() config["general"] = {"name" : "MnCheck", "qgisminimumversion" : "3.4", "description" : "Contrôle des données FTTH format MN", "version" : version, "author" : "Manche Numérique 2019", "email" : constants.CONTACT, "about" : "Auto-contrôle des livrables FTTH aux formats Manche Numérique", "tracker" : "", "repository" : "", "tags" : "python", "homepage" : "http://www.manchenumerique.fr/", "category" : "Plugins", "icon" : "icon.png", "experimental" : "False", "deprecated" : "False"} with open(build_dir / 'metadata.txt', 'w+') as mdf: config.write(mdf) with ZipFile(build_dir / name, 'w') as zip_: def _zip_write(p): if p.ext == ".pyc": return zip_.write(p, p.relpath(constants.MAIN)) for f in Path(constants.MAIN / "ext").walkfiles(): _zip_write(f) for f in Path(constants.MAIN / "core").walkfiles(): _zip_write(f) for f in Path(constants.MAIN / "schemas").walkfiles(): _zip_write(f) for f in Path(constants.MAIN / "ui").walkfiles(): _zip_write(f) _zip_write(constants.MAIN / "__init__.py") _zip_write(constants.MAIN / "main.py") _zip_write(constants.MAIN / "README.md") _zip_write(constants.MAIN / "icon.png") _zip_write(constants.MAIN / "LICENSE") zip_.write(build_dir / "metadata.txt", "metadata.txt") Path(build_dir / "metadata.txt").remove_p()