From 41f8a49fa85d29685d7868c780e6ee9d073aba0c Mon Sep 17 00:00:00 2001
From: Tim Jaacks <tim.jaacks@seco.com>
Date: Thu, 12 Oct 2023 10:56:44 +0200
Subject: [PATCH] Confluence: add error handling if artifact not found

---
 scripts/collect_release_information.py | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/scripts/collect_release_information.py b/scripts/collect_release_information.py
index 179ead06..f39b3047 100755
--- a/scripts/collect_release_information.py
+++ b/scripts/collect_release_information.py
@@ -5,6 +5,7 @@ import fnmatch
 import sys
 import tempfile
 
+from gitlab import GitlabGetError
 from gitlab.client import Gitlab
 from gitlab.v4.objects import Project, ProjectPipelineJob
 
@@ -35,13 +36,18 @@ def get_job_env_variables(
 
         with tempfile.NamedTemporaryFile() as target_file:
             print(f"Downloading file {env_file} from job {job.name}", file=sys.stderr)
-            download_job_artifact(
-                gitlab,
-                target_file.name,
-                env_file,
-                job.id,
-                project=project,
-            )
+            try:
+                download_job_artifact(
+                    gitlab,
+                    target_file.name,
+                    env_file,
+                    job.id,
+                    project=project,
+                )
+            except GitlabGetError:
+                print(
+                    f"Artifact '{env_file}' not found in {job.web_url}", file=sys.stderr
+                )
 
             lines = [line.decode("utf-8").rstrip() for line in target_file.readlines()]
 
-- 
GitLab