From c60e7a964cca019d4f44d5b3a9a17c784bbc50d7 Mon Sep 17 00:00:00 2001 From: Yurii Prokulevych Date: Wed, 9 May 2018 16:49:52 +0200 Subject: [PATCH] Convert CLI options to variables for updates/upgrades/ffwd. Some cli options like --ntp-server/--control-scaler have variables e.g.: NtpServer or RoleFlavor/Count. It makes sense to convert them to env file and use it in follow up update/upgrade/ffwd operations, rather then maintain a list of cli options. Change-Id: Ie1305b8783de403fe0c725b1207782dd8336c053 --- tasks/common/convert_cli_opts_params.yaml | 10 ++++++++++ tasks/fast-forward-upgrade/main.yml | 4 ++-- tasks/update/create-update-scripts.yaml | 3 +++ tasks/upgrade/create-upgrade-scripts.yaml | 3 +++ templates/ceph-upgrade-run.sh.j2 | 4 +++- templates/overcloud_upgrade_converge.sh.j2 | 4 +++- templates/overcloud_upgrade_prepare.sh.j2 | 3 +++ 7 files changed, 27 insertions(+), 4 deletions(-) diff --git a/tasks/common/convert_cli_opts_params.yaml b/tasks/common/convert_cli_opts_params.yaml index 3be32405..d75de65d 100644 --- a/tasks/common/convert_cli_opts_params.yaml +++ b/tasks/common/convert_cli_opts_params.yaml @@ -96,3 +96,13 @@ force: no when: - control_scale|succeeded or compute_scale|succeeded or ceph_scale|succeeded or control_flavor|succeeded or compute_flavor|succeeded or ceph_flavor|succeeded or ntp_server|succeeded + +- name: check "{{working_dir}}/cli_opts_params.yaml" exists + stat: + path: "{{working_dir}}/cli_opts_params.yaml" + register: cli_opts_param_file + +- name: set cli_converted_options fact + set_fact: + cli_converted_options: true + when: cli_opts_param_file.stat.exists|bool diff --git a/tasks/fast-forward-upgrade/main.yml b/tasks/fast-forward-upgrade/main.yml index d7930ef2..a4502f4a 100644 --- a/tasks/fast-forward-upgrade/main.yml +++ b/tasks/fast-forward-upgrade/main.yml @@ -42,12 +42,12 @@ - name: set upgrade_prepare_extra_params for ffu prepare with default repos set_fact: - upgrade_prepare_extra_params: ["{{working_dir}}/cli_opts_params.yaml", "{{ tht_directory }}/environments/docker.yaml", "{{ tht_directory }}/environments/docker-ha.yaml"] + upgrade_prepare_extra_params: ["{{ tht_directory }}/environments/docker.yaml", "{{ tht_directory }}/environments/docker-ha.yaml"] when: "'tripleo-repos' in ffu_overcloud_repo_type" - name: set upgrade_prepare_extra_params for ffu prepare with custom repos set_fact: - upgrade_prepare_extra_params: ["{{working_dir}}/cli_opts_params.yaml", "{{working_dir}}/ffu_repos.yaml"] + upgrade_prepare_extra_params: ["{{working_dir}}/ffu_repos.yaml"] when: "'tripleo-repos' not in ffu_overcloud_repo_type" - name: set upgrade_prepare_extra_params for ffu prepare with deployed server diff --git a/tasks/update/create-update-scripts.yaml b/tasks/update/create-update-scripts.yaml index 3469545e..d5cb408f 100644 --- a/tasks/update/create-update-scripts.yaml +++ b/tasks/update/create-update-scripts.yaml @@ -4,6 +4,9 @@ tags: use_oooq when: use_oooq|bool +- name: Convert CLI options to parameters + include: ../common/convert_cli_opts_params.yaml + - name: get auxiliary facts for major upgrades include: ../common/auxilary-facts.yaml diff --git a/tasks/upgrade/create-upgrade-scripts.yaml b/tasks/upgrade/create-upgrade-scripts.yaml index 47b160d0..9618112e 100644 --- a/tasks/upgrade/create-upgrade-scripts.yaml +++ b/tasks/upgrade/create-upgrade-scripts.yaml @@ -4,6 +4,9 @@ tags: use_oooq when: use_oooq|bool +- name: Convert CLI options to parameters + include: ../common/convert_cli_opts_params.yaml + - name: get auxiliary facts for major upgrades include: ../common/auxilary-facts.yaml diff --git a/templates/ceph-upgrade-run.sh.j2 b/templates/ceph-upgrade-run.sh.j2 index b6cc2d67..dc3f7c31 100644 --- a/templates/ceph-upgrade-run.sh.j2 +++ b/templates/ceph-upgrade-run.sh.j2 @@ -12,8 +12,10 @@ openstack overcloud ceph-upgrade run \ -e {{ _env }} \ {% endfor %} {% endif %} - {% if ffu_overcloud_upgrade %} + {% if cli_converted_options|default(false)|bool %} -e {{working_dir}}/cli_opts_params.yaml \ + {% endif %} + {% if ffu_overcloud_upgrade %} -e {{working_dir}}/ceph-ansible-env.yaml \ --ceph-ansible-playbook '/usr/share/ceph-ansible/infrastructure-playbooks/switch-from-non-containerized-to-containerized-ceph-daemons.yml,/usr/share/ceph-ansible/infrastructure-playbooks/rolling_update.yml' \ {% endif %} diff --git a/templates/overcloud_upgrade_converge.sh.j2 b/templates/overcloud_upgrade_converge.sh.j2 index 1c5f3970..d098010c 100644 --- a/templates/overcloud_upgrade_converge.sh.j2 +++ b/templates/overcloud_upgrade_converge.sh.j2 @@ -26,8 +26,10 @@ openstack overcloud {% if ffu_overcloud_upgrade %} ffwd-upgrade {% else %} upgra -e {{ _env }} \ {% endfor %} {% endif %} - {% if ffu_overcloud_upgrade %} + {% if cli_converted_options|default(false)|bool %} -e {{working_dir}}/cli_opts_params.yaml \ + {% endif %} + {% if ffu_overcloud_upgrade %} -e {{ working_dir }}/{{ container_registry_file }} \ {% if ceph_osd_enabled %} -e {{working_dir}}/ceph-ansible-env.yaml \ diff --git a/templates/overcloud_upgrade_prepare.sh.j2 b/templates/overcloud_upgrade_prepare.sh.j2 index dfb2301c..55d97bd3 100644 --- a/templates/overcloud_upgrade_prepare.sh.j2 +++ b/templates/overcloud_upgrade_prepare.sh.j2 @@ -27,6 +27,9 @@ openstack overcloud{% if ffu_overcloud_upgrade %} ffwd-upgrade {% else %} upgrad -e {{ _env }} \ {% endfor %} {% endif %} + {% if cli_converted_options|default(false)|bool %} + -e {{working_dir}}/cli_opts_params.yaml \ + {% endif %} {% if upgrade_prepare_extra_params %} -e {{ upgrade_prepare_extra_params | join(' -e ') }} \ {% endif %}