From dd3723c0f597796dbfb74aae0435f7bad6fe50a8 Mon Sep 17 00:00:00 2001 From: vsedmik <46570670+vsedmik@users.noreply.github.com> Date: Mon, 4 Dec 2023 13:48:24 +0100 Subject: [PATCH] Fix capsule download policy update (#13240) (cherry picked from commit 9d7c7bdf79a192ca2b231a8e29b96b2fa4dc5e7f) --- robottelo/hosts.py | 6 ++++++ tests/foreman/api/test_capsulecontent.py | 18 ++++-------------- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/robottelo/hosts.py b/robottelo/hosts.py index 90589ae44e6..980475323f0 100644 --- a/robottelo/hosts.py +++ b/robottelo/hosts.py @@ -1617,6 +1617,12 @@ def capsule_setup(self, sat_host=None, capsule_cert_opts=None, **installer_kwarg f'A core service is not running at capsule host\n{result.stdout}' ) + def update_download_policy(self, policy): + """Updates capsule's download policy to desired value""" + proxy = self.nailgun_smart_proxy.read() + proxy.download_policy = policy + proxy.update(['download_policy']) + def set_rex_script_mode_provider(self, mode='ssh'): """Set provider for remote execution script mode. One of: ssh(default), pull-mqtt, ssh-async""" diff --git a/tests/foreman/api/test_capsulecontent.py b/tests/foreman/api/test_capsulecontent.py index e841612d8df..95cea172837 100644 --- a/tests/foreman/api/test_capsulecontent.py +++ b/tests/foreman/api/test_capsulecontent.py @@ -43,16 +43,6 @@ class TestCapsuleContentManagement: interactions and use capsule. """ - def update_capsule_download_policy( - self, module_capsule_configured, download_policy, module_target_sat - ): - """Updates capsule's download policy to desired value""" - proxy = module_target_sat.api.SmartProxy( - id=module_capsule_configured.nailgun_capsule.id - ).read() - proxy.download_policy = download_policy - proxy.update(['download_policy']) - @pytest.mark.tier3 @pytest.mark.skip_if_not_set('capsule', 'clients', 'fake_manifest') def test_positive_insights_puppet_package_availability(self, module_capsule_configured): @@ -593,7 +583,7 @@ def test_positive_on_demand_sync( assert function_lce.id in [capsule_lce['id'] for capsule_lce in result['results']] # Update capsule's download policy to on_demand - self.update_capsule_download_policy(module_capsule_configured, 'on_demand') + module_capsule_configured.update_download_policy('on_demand') # Create a content view with the repository cv = target_sat.api.ContentView(organization=function_org, repository=[repo]).create() @@ -667,7 +657,7 @@ def test_positive_update_with_immediate_sync( url=repo_url, ).create() # Update capsule's download policy to on_demand to match repository's policy - self.update_capsule_download_policy(module_capsule_configured, 'on_demand') + module_capsule_configured.update_download_policy('on_demand') # Associate the lifecycle environment with the capsule module_capsule_configured.nailgun_capsule.content_add_lifecycle_environment( data={'environment_id': function_lce.id} @@ -704,7 +694,7 @@ def test_positive_update_with_immediate_sync( assert repo.download_policy == 'immediate' # Update capsule's download policy as well - self.update_capsule_download_policy(module_capsule_configured, 'immediate') + module_capsule_configured.update_download_policy('immediate') # Sync repository once again repo.sync() @@ -805,7 +795,7 @@ def test_positive_sync_kickstart_repo( assert lce.id in [capsule_lce['id'] for capsule_lce in result['results']] # Update capsule's download policy to on_demand - self.update_capsule_download_policy(module_capsule_configured, 'on_demand') + module_capsule_configured.update_download_policy('on_demand') # Create a content view with the repository cv = target_sat.api.ContentView(