Move the Overcloud common bootstrap tasks for step 1 before the deploy tasks

The "Overcloud common bootstrap tasks for step 1" setup pulls in the
tasks from the following file:
common_deploy_steps_tasks_step_1: {get_file: deploy-steps-tasks-step-1.yaml}

Now in that file we mainly do the following tasks:
- Set up the /var/lib/{tripleo-config,container-puppet,kolla} folders
- Write the container config json files
- Set up some puppet folders
- Write puppet step_config manifestes

Not only it makes sense to have these preparation steps before the
deployment steps, even at step1, but it also is strictly needed for
the Frr/Bgp service. The reason for that is that Frr runs containerized
and needs to start at deploy_step 1, so that traffic to the other bgp nodes
is working before step_config step 1 which contains the puppet
invocation to set up the cluster.

In particular the frr/bgp container needs to be started during
deployment step1 and to do so we need the kolla files and the other
container startup files to be set up before we invoke podman.

I could not figure out from the git history as to why this was not done
in the first place, it seems to not have been done on purpose.

So I did some extra testing to make sure nothing got broken by this:
1) Tested a composable control plane largish env with this patch only (train)
2) Tested a minor updated process on (1)
3) Tested a redeploy on (1)
4) Tested an FFU upgrade from queens to train with this change applied
   (3xctrl + 2xcmp)
5) Tested a BGP deployment spread over 3 racks in a spine/leaf
   configuration (~a dozen of deployments)

Change-Id: I0e6594bfd1ff2e27bb4917c157f163643a811ca6
This commit is contained in:
Michele Baldessari 2021-01-27 17:08:46 +01:00
parent 215d732e29
commit 5bf5dd9d9c
1 changed files with 11 additions and 11 deletions

View File

@ -693,17 +693,6 @@ outputs:
force: true
mode: '0600'
{% endraw %}
- name: Deploy step tasks for {{step}}
delegate_to: localhost
run_once: true
debug:
msg: Use --start-at-task 'Deploy step tasks for {{step}}' to resume from this task
{%- for role in roles %}
- include_tasks: "{{role.name}}/deploy_steps_tasks_step{{step}}.yaml"
when:
- tripleo_role_name == '{{role.name}}'
- "'{{role.name}}/deploy_steps_tasks_step{{step}}.yaml' is exists"
{%- endfor %}
{% if step == 1 %}
- name: Overcloud common bootstrap tasks for step 1
block:
@ -722,6 +711,17 @@ outputs:
- ((deploy_identifier is defined and deploy_identifier != "" and deploy_identifier is not none) or
not container_startup_configs_json_stat.stat.exists)
{% endif %}
- name: Deploy step tasks for {{step}}
delegate_to: localhost
run_once: true
debug:
msg: Use --start-at-task 'Deploy step tasks for {{step}}' to resume from this task
{%- for role in roles %}
- include_tasks: "{{role.name}}/deploy_steps_tasks_step{{step}}.yaml"
when:
- tripleo_role_name == '{{role.name}}'
- "'{{role.name}}/deploy_steps_tasks_step{{step}}.yaml' is exists"
{%- endfor %}
- name: Overcloud common deploy step tasks {{step}}
block:
- name: Overcloud common deploy step tasks {{step}}