config: refactor how per step tasks are generated
The per step tasks generation was introduced by: I4d864f374d6f840585fafef2c7678e55c154898e This patch is refactoring a little bit so we can easily re-use that interface for the other tasks. It introduces a new constant: PER_STEP_TASKS It's a list of tasks that are "per step" ready. Note about the 'else' in tripleo_common/utils/config.py : Once all tasks are adapted in THT to run per step, we will be able to move this condition to the upper level We include it here to allow the CI to pass until THT changed is not merged. Backport note: Included in this backport is the switch in tripleo_common/tests/utils/test_config.py from UPGRADE_STEPS_MAX to DEFAULT_STEPS_MAX to maintain a functional result. Change-Id: Ie03084bb599b7b06aeeb321d2a7938a908487788 (cherry picked from commitd9c82d8c79
) (cherry picked from commitccfa1ad194
)
This commit is contained in:
parent
9e928d1f44
commit
152b42c46c
|
@ -211,4 +211,6 @@ MISTRAL_WORK_DIR = '/var/lib/mistral'
|
|||
|
||||
EXCLUSIVE_NEUTRON_DRIVERS = ['ovn', 'openvswitch']
|
||||
|
||||
UPGRADE_STEPS_MAX = 6
|
||||
DEFAULT_STEPS_MAX = 6
|
||||
|
||||
PER_STEP_TASKS = ['upgrade_tasks']
|
||||
|
|
|
@ -163,7 +163,7 @@ class TestConfig(base.TestCase):
|
|||
for role in fake_role:
|
||||
filedir = os.path.join(self.tmp_dir, role)
|
||||
os.makedirs(filedir)
|
||||
for step in range(constants.UPGRADE_STEPS_MAX):
|
||||
for step in range(constants.DEFAULT_STEPS_MAX):
|
||||
filepath = os.path.join(filedir, "upgrade_tasks_step%s.yaml"
|
||||
% step)
|
||||
playbook_tasks = self.config._write_tasks_per_step(
|
||||
|
|
|
@ -223,15 +223,18 @@ class Config(object):
|
|||
role_group_vars[role_name] = {}
|
||||
role_group_vars[role_name].update(role[config])
|
||||
else:
|
||||
# NOTE(jfrancoa): Move this upgrade_tasks condition to the
|
||||
# upper level once THT is adapted. We include it here to
|
||||
# allow the CI to pass until THT changed is not merged.
|
||||
if config == 'upgrade_tasks':
|
||||
for i in range(constants.UPGRADE_STEPS_MAX):
|
||||
# NOTE(emilien): Move this condition to the
|
||||
# upper level once THT is adapted for all tasks to be
|
||||
# run per step.
|
||||
# We include it here to allow the CI to pass until THT
|
||||
# changed is not merged.
|
||||
if config in constants.PER_STEP_TASKS:
|
||||
for i in range(constants.DEFAULT_STEPS_MAX):
|
||||
filepath = os.path.join(role_path, '%s_step%s.yaml'
|
||||
% (config, i))
|
||||
self._write_tasks_per_step(role[config], role_name,
|
||||
filepath, i)
|
||||
|
||||
try:
|
||||
data = role[config]
|
||||
except KeyError as e:
|
||||
|
|
Loading…
Reference in New Issue