From 9706159246887c6f07f02b78b760cb614eef68b2 Mon Sep 17 00:00:00 2001 From: Jeremy Cline Date: May 08 2024 01:09:31 +0000 Subject: Handle UnsupportedComposeError when fetching release fedfind raises an exception if the compose isn't supported (because they don't contain images) so we need to catch it and just skip the message. --- diff --git a/fedora_cloud_image_uploader/handler.py b/fedora_cloud_image_uploader/handler.py index 78712bf..84ad3c2 100644 --- a/fedora_cloud_image_uploader/handler.py +++ b/fedora_cloud_image_uploader/handler.py @@ -9,7 +9,7 @@ import time import ansible_runner from fedora_messaging import config, message as fm_message from fedora_messaging import exceptions as fm_exceptions -from fedfind import release as ff_release +from fedfind import release as ff_release, exceptions as ff_exceptions from requests import Session, adapters from requests.exceptions import RequestException from urllib3.util import Retry @@ -47,7 +47,11 @@ class Uploader: _log.error("Message body is missing 'compose_id' key!") return - compose = ff_release.get_release(cid=compose_id) + try: + compose = ff_release.get_release(cid=compose_id) + except ff_exceptions.UnsupportedComposeError: + _log.info("Skipping compose %s as it contains no images", compose_id) + return cloud_images = [img for img in compose.all_images if img["subvariant"] == "Cloud_Base"] try: