From 1c09fb1ba6f7bc3885d2918e22c8b96c95a7e3d9 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Feb 09 2021 14:06:15 +0000 Subject: Fix mdapi fallback for update table (marking rawhide as "rawhide") Signed-off-by: Fabio Valentini --- diff --git a/pagure_distgit/plugin.py b/pagure_distgit/plugin.py index 469e30d..60dfbdd 100644 --- a/pagure_distgit/plugin.py +++ b/pagure_distgit/plugin.py @@ -436,6 +436,21 @@ def bodhi_updates_endpoint(namespace, repo): break page += 1 + # Set Rawhide as the highest-sorted Fedora release + rawhide_number = 0 + for release in releases: + # Skip EL / EPEL / ELN releases + if not release["name"].startswith("F"): + continue + # Skip Container, Flatpak, and Module releases + try: + base_release = int(release["name"].lstrip("F").rstrip("CFM")) + except ValueError: + continue + if base_release > rawhide_number: + rawhide_number = base_release + rawhide = "F" + str(rawhide_number) + # Retrieves the updates of that package in bodhi update_url = "%s/updates?packages=%s" % ( bodhi_base_url.rstrip("/"), @@ -485,11 +500,15 @@ def bodhi_updates_endpoint(namespace, repo): ) ) else: - # This makes things a little slower and is only needed up until - # all releases will have gone through bodhi all the time - # (ie: up until about F31 is eol). + # This makes things a little slower but is needed for builds + # that do not go through bodhi, for example, via releng-managed + # side tags (like for Fedora mass rebuilds), which bypass bodhi. + if release == rawhide: + mdapi_release = "rawhide" + else: + mdapi_release = release.lower() mdapi_url = "https://mdapi.fedoraproject.org/%s/srcpkg/%s" % ( - release.lower(), + mdapi_release, repo.name, ) _log.info("Calling mdapi at: %s", mdapi_url)