From ba46700ed91381458fefe556fb68ca0d2d3b758c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michal=20He=C4=8Dko?= Date: Mon, 10 Jun 2024 22:30:39 +0200 Subject: [PATCH 62/92] rhui(gcp): add SAP RHEL 8.10 client (#1253) * rhui(gcp): add SAP RHEL 8.10 client Add a dedicated entry for SAP RHEL 8.10 on GCP due to the same reasons as with other cloud providers - 8.10 is the last RHEL8 release, thus, there are no content channels. A dedicated client is introduced, providing SAP systems with GA content. * Add spaces to message strings --------- Co-authored-by: mhecko Co-authored-by: Toshio Kuratomi --- .../libraries/userspacegen.py | 15 ++++++++++++++- repos/system_upgrade/common/libraries/rhui.py | 4 ++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py b/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py index dc93c9a0..6e8214dd 100644 --- a/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py +++ b/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py @@ -1220,7 +1220,20 @@ def setup_target_rhui_access_if_needed(context, indata): _apply_rhui_access_postinstall_tasks(context, setup_info) # Do a cleanup so there are not duplicit repoids - files_owned_by_clients = _query_rpm_for_pkg_files(context, indata.rhui_info.target_client_pkg_names) + try: + files_owned_by_clients = _query_rpm_for_pkg_files(context, indata.rhui_info.target_client_pkg_names) + except CalledProcessError as err: # We failed to rpm -qf PKG, the PKG is most likely not installed + api.current_logger().critical('Failed to query files owned by target RHUI clients (clients=%s). This is caused' + ' by failing to install the target clients during the client-swap step.' + ' Full error: %s', indata.rhui_info.target_client_pkg_names, err) + + target_major = get_target_major_version() + plural_suffix = 's' if len(indata.rhui_info.target_client_pkg_names) > 1 else '' + client_rpms = ', '.join(indata.rhui_info.target_client_pkg_names) + msg = ('Could not find the RHEL {target_major} RHUI client rpm{plural_suffix} ({client_rpms})' + ' in the cloud provider\'s client repository.') + raise StopActorExecutionError(msg.format(target_major=target_major, plural_suffix=plural_suffix, + client_rpms=client_rpms)) for copy_task in setup_info.preinstall_tasks.files_to_copy_into_overlay: dest = get_copy_location_from_copy_in_task(context.base_dir, copy_task) diff --git a/repos/system_upgrade/common/libraries/rhui.py b/repos/system_upgrade/common/libraries/rhui.py index dbb3d71e..86f74084 100644 --- a/repos/system_upgrade/common/libraries/rhui.py +++ b/repos/system_upgrade/common/libraries/rhui.py @@ -323,6 +323,10 @@ RHUI_SETUPS = { mandatory_files=[('leapp-google-sap.repo', YUM_REPOS_PATH)], files_supporting_client_operation=['leapp-google-sap.repo'], os_version='8', content_channel=ContentChannel.E4S), + mk_rhui_setup(clients={'google-rhui-client-rhel810-sap'}, leapp_pkg='leapp-rhui-google-sap', + mandatory_files=[('leapp-google-sap.repo', YUM_REPOS_PATH)], + files_supporting_client_operation=['leapp-google-sap.repo'], + os_version='8.10', content_channel=ContentChannel.GA), mk_rhui_setup(clients={'google-rhui-client-rhel9-sap'}, leapp_pkg='leapp-rhui-google-sap', mandatory_files=[('leapp-google-sap.repo', YUM_REPOS_PATH)], files_supporting_client_operation=['leapp-google-sap.repo'], -- 2.42.0