From 0b183417f89a8e1e999b0aa257b25dc6dfce4416 Mon Sep 17 00:00:00 2001 From: Evgeni Golov Date: Mon, 25 Nov 2024 13:28:45 +0100 Subject: [PATCH] create a fake ntp module for FAM tests (#16997) * use sat.put() instead of sat.execute(echo) to place puppet files * allow passing in custom module code * create a fake ntp module the one in the repo is too old (cherry picked from commit 39769a501a118c916923c30769a813cdef023cf6) --- tests/foreman/sys/test_fam.py | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/tests/foreman/sys/test_fam.py b/tests/foreman/sys/test_fam.py index c6a381c6bf..224d66a05b 100644 --- a/tests/foreman/sys/test_fam.py +++ b/tests/foreman/sys/test_fam.py @@ -101,27 +101,29 @@ def setup_fam(module_target_sat, module_sca_manifest, install_import_ansible_rol f'''sed -i 's|subscription_manifest_path:.*|subscription_manifest_path: "data/{module_sca_manifest.name}"|g' {config_file}''' ) - repo_path = '/fake_puppet1/system/releases/p/puppetlabs/' - module_tarball = 'puppetlabs-ntp-3.0.3.tar.gz' - local_path = '/tmp' - module_target_sat.execute( - f'curl --output {local_path}/{module_tarball} {settings.robottelo.repos_hosting_url}{repo_path}{module_tarball}', - ) - module_target_sat.execute( - f'puppet module install --ignore-dependencies {local_path}/{module_tarball}' - ) - def create_fake_module(module_target_sat, module_name, module_classes): base_dir = '/etc/puppetlabs/code/environments/production/modules' module_dir = f'{base_dir}/{module_name}' manifest_dir = f'{module_dir}/manifests' module_target_sat.execute(f'mkdir -p {manifest_dir}') for module_class in module_classes: + if isinstance(module_class, str): + module_code = '(){}' + else: + module_class, module_code = module_class full_class = module_name if module_class == 'init' else f'{module_name}::{module_class}' - module_target_sat.execute( - f'echo "class {full_class}(){{}}" > {manifest_dir}/{module_class}.pp' + module_target_sat.put( + f'class {full_class}{module_code}', + f'{manifest_dir}/{module_class}.pp', + temp_file=True, ) + create_fake_module( + module_target_sat, + 'ntp', + [('init', '($logfile, $config_dir, $servers, $burst, $stepout){}'), 'config'], + ) + create_fake_module( module_target_sat, 'prometheus',