From 9551ecd53c88e3d9924c025d4dc34e82fff0fbdc Mon Sep 17 00:00:00 2001 From: auricom <27022259+auricom@users.noreply.github.com> Date: Thu, 18 Jan 2024 20:52:17 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20github-releases=20truenas-core?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/github-releases/config/config.yaml | 8 ++++++++ .../app/github-releases/config/script.py | 15 ++++++++++----- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/kubernetes/apps/default/pushover-notifier/app/github-releases/config/config.yaml b/kubernetes/apps/default/pushover-notifier/app/github-releases/config/config.yaml index 12534e081..cf7d919bc 100644 --- a/kubernetes/apps/default/pushover-notifier/app/github-releases/config/config.yaml +++ b/kubernetes/apps/default/pushover-notifier/app/github-releases/config/config.yaml @@ -1,8 +1,16 @@ repositories: - name: fluxcd/flux2 + check: "releases" - name: opnsense/core + check: "tags" ignore_tags_containing: - a - b - r - name: siderolabs/talos + check: "releases" + - name: truenas/core-build + check: "tags" + ignore_tags_containing: + - TrueNAS + - FN diff --git a/kubernetes/apps/default/pushover-notifier/app/github-releases/config/script.py b/kubernetes/apps/default/pushover-notifier/app/github-releases/config/script.py index 32660d44e..4570ef96e 100644 --- a/kubernetes/apps/default/pushover-notifier/app/github-releases/config/script.py +++ b/kubernetes/apps/default/pushover-notifier/app/github-releases/config/script.py @@ -93,19 +93,24 @@ def main(): for repo_config in config["repositories"]: repo_name = repo_config["name"] - print(f"Checking releases for repository: {repo_name}") + check_type = repo_config.get("check", "releases") ignore_list = repo_config.get("ignore_tags_containing", []) - try: + print(f"Checking {check_type} for repository: {repo_name}") + + if check_type == "releases": latest_tag, release_date = check_new_release(repo_name) if latest_tag is None or release_date is None: - print(f"No release found for {repo_name}, checking for tags.") - raise ValueError("No release found, checking for tags.") - except ValueError: + print(f"No release found for {repo_name}") + continue + elif check_type == "tags": latest_tag, release_date = check_latest_tag(repo_name, ignore_list) if latest_tag is None or release_date is None: print(f"No valid tags found for {repo_name}, moving to next repository.") continue + else: + print(f"Invalid check type for {repo_name}: {check_type}") + continue print(f"Latest tag for {repo_name}: {latest_tag}, published at: {release_date}") release_date = datetime.strptime(release_date, "%Y-%m-%dT%H:%M:%SZ")