From e8510c8aebceb852a38df228caaed8d8f4bab55c Mon Sep 17 00:00:00 2001 From: decentral1se Date: Thu, 17 Jun 2021 21:25:29 +0200 Subject: [PATCH] Add change log and --output for app-json.py Closes https://git.autonomic.zone/coop-cloud/auto-apps-json/issues/2. --- CHANGELOG.md | 2 ++ bin/app-json.py | 12 +++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f663d2e..c38c9e5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ - Add `--bump` to `deploy` command to allow packagers to make minor package related releases ([#173](https://git.autonomic.zone/coop-cloud/abra/issues/173)) - Drop `--skip-version-check`/`--no-domain-poll`/`--no-state-poll` in favour of `--fast` ([#169](https://git.autonomic.zone/coop-cloud/abra/issues/169)) +- Move `abra` image under the new `thecoopcloud/...` namespace ([#1](https://git.autonomic.zone/coop-cloud/auto-apps-json/issues/1)) +- Add a `--output` flag to the `app-json.py` app generator for the CI environment ([#2](https://git.autonomic.zone/coop-cloud/auto-apps-json/issues/2)) # abra 9.0.0 (2021-06-10) diff --git a/bin/app-json.py b/bin/app-json.py index ff3fdc4..33ca45a 100755 --- a/bin/app-json.py +++ b/bin/app-json.py @@ -6,9 +6,11 @@ # ~/.abra/apps), and format it as JSON so that it can be hosted here: # https://apps.coopcloud.tech +import argparse from json import dump from os import chdir, getcwd, listdir from os.path import basename +from pathlib import Path from re import findall, search from subprocess import DEVNULL @@ -25,6 +27,9 @@ from abralib import ( log, ) +parser = argparse.ArgumentParser(description="Generate a new apps.json") +parser.add_argument("--output", type=Path, default=f"{getcwd()}/apps.json") + def get_published_apps_json(): """Retrieve already published apps json.""" @@ -195,11 +200,12 @@ def get_app_versions(app_path, cached_apps_json): def main(): """Run the script.""" + args = parser.parse_args() + repos_json = get_repos_json() clone_all_apps(repos_json) - target = f"{getcwd()}/apps.json" - with open(target, "w", encoding="utf-8") as handle: + with open(args.output, "w", encoding="utf-8") as handle: dump( generate_apps_json(repos_json), handle, @@ -208,7 +214,7 @@ def main(): sort_keys=True, ) - log.info(f"Successfully generated {target}") + log.info(f"Successfully generated {args.output}") main()