Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[6.12.z] Fix capsule download policy update #13250

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions robottelo/hosts.py
Original file line number Diff line number Diff line change
Expand Up @@ -1597,6 +1597,12 @@ def capsule_setup(self, sat_host=None, **installer_kwargs):
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"""
Expand Down
18 changes: 4 additions & 14 deletions tests/foreman/api/test_capsulecontent.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,16 +41,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):
Expand Down Expand Up @@ -605,7 +595,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()
Expand Down Expand Up @@ -681,7 +671,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}
Expand Down Expand Up @@ -718,7 +708,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()
Expand Down Expand Up @@ -823,7 +813,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(
Expand Down
Loading