From e61718d44e0175bcd28c8a5ee44dc46880d74482 Mon Sep 17 00:00:00 2001 From: Matej Matuska Date: Tue, 5 Aug 2025 12:20:23 +0200 Subject: [PATCH 16/55] checktargetrepos: Skip if not RHEL Skip the target repos check on non-RHEL distros. On non-RHEL distros, there is no subscription-manager. The base repositories (BaseOS, AppStream, ...) should always be present. This is checked using the seatbelts in target userspace creator. --- .../system_upgrade/common/actors/checktargetrepos/actor.py | 4 +++- .../actors/checktargetrepos/libraries/checktargetrepos.py | 7 ++++--- .../actors/checktargetrepos/tests/test_checktargetrepos.py | 2 -- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/repos/system_upgrade/common/actors/checktargetrepos/actor.py b/repos/system_upgrade/common/actors/checktargetrepos/actor.py index d61fb685..a5bdde10 100644 --- a/repos/system_upgrade/common/actors/checktargetrepos/actor.py +++ b/repos/system_upgrade/common/actors/checktargetrepos/actor.py @@ -6,7 +6,9 @@ from leapp.tags import ChecksPhaseTag, IPUWorkflowTag class Checktargetrepos(Actor): """ - Check whether target yum repositories are specified. + Check whether target dnf repositories are specified on RHEL. + + NOTE: this actor does nothing on distros other than RHEL. RHSM | RHUI | ER | CTR | CTRF || result -----+------+----+-----+------++------- diff --git a/repos/system_upgrade/common/actors/checktargetrepos/libraries/checktargetrepos.py b/repos/system_upgrade/common/actors/checktargetrepos/libraries/checktargetrepos.py index 141cf8e4..ea21e1de 100644 --- a/repos/system_upgrade/common/actors/checktargetrepos/libraries/checktargetrepos.py +++ b/repos/system_upgrade/common/actors/checktargetrepos/libraries/checktargetrepos.py @@ -40,9 +40,10 @@ def process(): rhui_info = next(api.consume(RHUIInfo), None) - if not rhsm.skip_rhsm() or rhui_info: - # getting RH repositories through RHSM or RHUI; resolved by seatbelts - # implemented in other actors + if config.get_distro_id() != 'rhel' or (not rhsm.skip_rhsm() or rhui_info): + # RHEL: getting RH repositories through RHSM or RHUI; + # resolved by seatbelts in other actors + # other: distro repos provided by the distro directly, seatbelts elsewhere return # rhsm skipped; take your seatbelts please diff --git a/repos/system_upgrade/common/actors/checktargetrepos/tests/test_checktargetrepos.py b/repos/system_upgrade/common/actors/checktargetrepos/tests/test_checktargetrepos.py index ea93ce7e..e055b3a6 100644 --- a/repos/system_upgrade/common/actors/checktargetrepos/tests/test_checktargetrepos.py +++ b/repos/system_upgrade/common/actors/checktargetrepos/tests/test_checktargetrepos.py @@ -65,9 +65,7 @@ _CUSTOM_TARGET_REPOFILE = CustomTargetRepositoryFile(file='/etc/leapp/files/leap def test_checktargetrepos_rhsm(monkeypatch): monkeypatch.setattr(reporting, 'create_report', create_report_mocked()) monkeypatch.setattr(rhsm, 'skip_rhsm', lambda: False) - monkeypatch.setattr(api, 'consume', MockedConsume()) monkeypatch.setattr(api, 'current_actor', CurrentActorMocked()) - monkeypatch.setattr(checktargetrepos, 'get_target_major_version', lambda: '8') checktargetrepos.process() assert reporting.create_report.called == 0 -- 2.51.1