Introduce proper steps to external update/upgrade tasks

So far the tasks for external update/upgrade were not using the step
mechanism as other tasks, we had a single step. As external
deploy/update/upgrade tasks are being used for more things nowadays,
it's likely that we'll need to go towards a similar model like we have
for deploy/update/upgrade tasks -- proper usage of steps.

For now we have just 2:

* Step 0 for setting global facts, and performing validations.

* Step 1 for actual update/upgrade tasks. (There's an upcoming change
  to run online data migrations in step 1).

Change-Id: I1933bd0eedab71caab56c0e5d93ba7927fb7c20f
Partial-Bug: #1793332
This commit is contained in:
Jiri Stransky 2018-10-04 11:50:11 +02:00
parent 9f93bb7a9e
commit bcd6cde608
3 changed files with 17 additions and 11 deletions

View File

@ -16,10 +16,10 @@
# primary role is: {{primary_role_name}}
{% set deploy_steps_max = 6 -%}
{% set update_steps_max = 6 -%}
{% set external_update_steps_max = 1 -%}
{% set external_update_steps_max = 2 -%}
{% set pre_upgrade_rolling_steps_max = 1 -%}
{% set upgrade_steps_max = 6 -%}
{% set external_upgrade_steps_max = 1 -%}
{% set external_upgrade_steps_max = 2 -%}
{% set post_upgrade_steps_max = 4 -%}
{% set fast_forward_upgrade_steps_max = 9 -%}
{% set fast_forward_upgrade_prep_steps_max = 3 -%}

View File

@ -592,12 +592,16 @@ outputs:
curl_put_http_status.stdout == "201")
when: local_ceph_ansible_fetch_directory_backup == ""
external_update_tasks:
- name: set ceph_ansible_playbooks_default
- when: step|int == 0
tags: ceph
set_fact:
ceph_ansible_playbooks_default: ["/usr/share/ceph-ansible/infrastructure-playbooks/rolling_update.yml"]
block:
- name: set ceph_ansible_playbooks_default
set_fact:
ceph_ansible_playbooks_default: ["/usr/share/ceph-ansible/infrastructure-playbooks/rolling_update.yml"]
external_upgrade_tasks:
- name: set ceph_ansible_playbooks_default
- when: step|int == 0
tags: ceph
set_fact:
ceph_ansible_playbooks_default: ["/usr/share/ceph-ansible/infrastructure-playbooks/rolling_update.yml"]
block:
- name: set ceph_ansible_playbooks_default
set_fact:
ceph_ansible_playbooks_default: ["/usr/share/ceph-ansible/infrastructure-playbooks/rolling_update.yml"]

View File

@ -436,7 +436,9 @@ outputs:
exit ${PIPESTATUS[0]}
external_upgrade_tasks:
- name: set OpenShift upgrade facts
- when: step|int == 0
tags: openshift
set_fact:
openshift_upgrade: true
block:
- name: set OpenShift upgrade facts
set_fact:
openshift_upgrade: true