diff --git a/teuthology/suite/merge.py b/teuthology/suite/merge.py index f13058e47..9c2f634d0 100644 --- a/teuthology/suite/merge.py +++ b/teuthology/suite/merge.py @@ -1,4 +1,5 @@ import copy +import itertools import logging import lupa import os @@ -115,13 +116,15 @@ def config_merge(configs, suite_name=None, **kwargs): the entire job (config) from the list. """ seed = kwargs.setdefault('seed', 1) + base_config = kwargs.setdefault('base_config', {}) if not isinstance(seed, int): log.debug("no valid seed input: using 1") seed = 1 log.debug("configuring Lua randomseed to %d", seed) L.execute(f'local math = require"math"; math.randomseed({seed});') new_script = L.eval('new_script') - yaml_cache = {} + base_config_path = '\0' # not a valid path + yaml_cache = {base_config_path: base_config} for desc, paths in configs: log.debug("merging config %s", desc) @@ -130,7 +133,7 @@ def config_merge(configs, suite_name=None, **kwargs): yaml_complete_obj = {} deep_merge(yaml_complete_obj, dict(TEUTHOLOGY_TEMPLATE)) - for path in paths: + for path in itertools.chain((base_config_path,), paths): if path not in yaml_cache: with open(path) as f: txt = f.read() diff --git a/teuthology/suite/run.py b/teuthology/suite/run.py index 7df601385..124d860f5 100644 --- a/teuthology/suite/run.py +++ b/teuthology/suite/run.py @@ -514,7 +514,6 @@ def collect_jobs(self, arch, configs, newest=False, limit=0): '--description', description, '--', ]) - arg.extend(self.base_yaml_paths) parsed_yaml_txt = yaml.dump(parsed_yaml) arg.append('-')