From be6866189af6bf688abe3ab0b3f7fddd12c950e9 Mon Sep 17 00:00:00 2001 From: Lukas Holecek Date: Jun 30 2021 14:03:32 +0000 Subject: Fix parsing RHEL product version from Brew JIRA: RHELWF-3893 --- diff --git a/greenwave/product_versions.py b/greenwave/product_versions.py index 0a961a3..70ba274 100644 --- a/greenwave/product_versions.py +++ b/greenwave/product_versions.py @@ -24,6 +24,8 @@ def _guess_product_version(toparse, koji_build=False): product_version = 'epel-' elif toparse.startswith('el') and len(toparse) > 2 and toparse[2].isdigit(): product_version = 'rhel-' + elif toparse.startswith('rhel-') and len(toparse) > 5 and toparse[5].isdigit(): + product_version = 'rhel-' elif toparse.startswith('fc') or toparse.startswith('Fedora'): product_version = 'fedora-' diff --git a/greenwave/tests/test_product_versions.py b/greenwave/tests/test_product_versions.py index f626c24..9e5eb8b 100644 --- a/greenwave/tests/test_product_versions.py +++ b/greenwave/tests/test_product_versions.py @@ -7,6 +7,23 @@ import pytest from greenwave import product_versions +@pytest.mark.parametrize('brew_pv, expected_pv', ( + ('rawhide', 'fedora-rawhide'), + ('f35-candidate', 'fedora-35'), + ('epel7-candidate', 'epel-7'), + ('rhel-8.5.0-candidate', 'rhel-8'), + ('rhel-9.0.0-beta-candidate', 'rhel-9'), +)) +def test_guess_koji_build_product_version(brew_pv, expected_pv, koji_proxy, app): + koji_proxy.getTaskRequest.return_value = [ + 'git://pkgs.devel.example.com/rpms/nethack#12345abcde', + brew_pv, + {'scratch': False}] + pv = product_versions._guess_koji_build_product_version( + brew_pv, 'http://localhost:5006/kojihub', koji_task_id=1) + assert pv == expected_pv + + @pytest.mark.parametrize('task_id', (None, 3)) def test_guess_koji_build_product_version_socket_error(task_id, koji_proxy, app): subject_identifier = 'release-e2e-test-1.0.1685-1.el5'