Merge "Use list_concat in place of yaql"

This commit is contained in:
Jenkins 2017-09-01 18:27:28 +00:00 committed by Gerrit Code Review
commit e80b2f0191
12 changed files with 276 additions and 311 deletions

View File

@ -182,54 +182,52 @@ resources:
puppet_step_config: {get_param: [role_data, {{role.name}}, step_config]} puppet_step_config: {get_param: [role_data, {{role.name}}, step_config]}
tasks: tasks:
# Join host_prep_tasks with the other per-host configuration # Join host_prep_tasks with the other per-host configuration
yaql: list_concat:
expression: $.data.host_prep_tasks + $.data.template_tasks - {get_param: [role_data, {{role.name}}, host_prep_tasks]}
data: -
host_prep_tasks: {get_param: [role_data, {{role.name}}, host_prep_tasks]}
template_tasks:
{%- raw %} {%- raw %}
# Write the manifest for baremetal puppet configuration # Write the manifest for baremetal puppet configuration
- name: Create /var/lib/tripleo-config directory - name: Create /var/lib/tripleo-config directory
file: path=/var/lib/tripleo-config state=directory file: path=/var/lib/tripleo-config state=directory
- name: Write the puppet step_config manifest - name: Write the puppet step_config manifest
copy: content="{{puppet_step_config}}" dest=/var/lib/tripleo-config/puppet_step_config.pp force=yes copy: content="{{puppet_step_config}}" dest=/var/lib/tripleo-config/puppet_step_config.pp force=yes
# this creates a JSON config file for our docker-puppet.py script # this creates a JSON config file for our docker-puppet.py script
- name: Create /var/lib/docker-puppet - name: Create /var/lib/docker-puppet
file: path=/var/lib/docker-puppet state=directory file: path=/var/lib/docker-puppet state=directory
- name: Write docker-puppet-tasks json files - name: Write docker-puppet-tasks json files
copy: content="{{puppet_config | to_json}}" dest=/var/lib/docker-puppet/docker-puppet.json force=yes copy: content="{{puppet_config | to_json}}" dest=/var/lib/docker-puppet/docker-puppet.json force=yes
# FIXME: can we move docker-puppet somewhere so it's installed via a package? # FIXME: can we move docker-puppet somewhere so it's installed via a package?
- name: Write docker-puppet.py - name: Write docker-puppet.py
copy: content="{{docker_puppet_script}}" dest=/var/lib/docker-puppet/docker-puppet.py force=yes copy: content="{{docker_puppet_script}}" dest=/var/lib/docker-puppet/docker-puppet.py force=yes
# Here we are dumping all the docker container startup configuration data # Here we are dumping all the docker container startup configuration data
# so that we can have access to how they are started outside of heat # so that we can have access to how they are started outside of heat
# and docker-cmd. This lets us create command line tools to test containers. # and docker-cmd. This lets us create command line tools to test containers.
# FIXME do we need the docker-container-startup-configs.json or is the new per-step # FIXME do we need the docker-container-startup-configs.json or is the new per-step
# data consumed by paunch enough? # data consumed by paunch enough?
- name: Write docker-container-startup-configs - name: Write docker-container-startup-configs
copy: content="{{docker_startup_configs | to_json}}" dest=/var/lib/docker-container-startup-configs.json force=yes copy: content="{{docker_startup_configs | to_json}}" dest=/var/lib/docker-container-startup-configs.json force=yes
- name: Write per-step docker-container-startup-configs - name: Write per-step docker-container-startup-configs
copy: content="{{item.value|to_json}}" dest="/var/lib/tripleo-config/docker-container-startup-config-{{item.key}}.json" force=yes copy: content="{{item.value|to_json}}" dest="/var/lib/tripleo-config/docker-container-startup-config-{{item.key}}.json" force=yes
with_dict: "{{docker_startup_configs}}" with_dict: "{{docker_startup_configs}}"
- name: Create /var/lib/kolla/config_files directory - name: Create /var/lib/kolla/config_files directory
file: path=/var/lib/kolla/config_files state=directory file: path=/var/lib/kolla/config_files state=directory
- name: Write kolla config json files - name: Write kolla config json files
copy: content="{{item.value|to_json}}" dest="{{item.key}}" force=yes copy: content="{{item.value|to_json}}" dest="{{item.key}}" force=yes
with_dict: "{{kolla_config}}" with_dict: "{{kolla_config}}"
######################################################## ########################################################
# Bootstrap tasks, only performed on bootstrap_server_id # Bootstrap tasks, only performed on bootstrap_server_id
######################################################## ########################################################
- name: Clean /var/lib/docker-puppet/docker-puppet-tasks*.json files - name: Clean /var/lib/docker-puppet/docker-puppet-tasks*.json files
file: file:
path: "{{item}}" path: "{{item}}"
state: absent state: absent
with_fileglob: with_fileglob:
- /var/lib/docker-puppet/docker-puppet-tasks*.json - /var/lib/docker-puppet/docker-puppet-tasks*.json
when: deploy_server_id == bootstrap_server_id when: deploy_server_id == bootstrap_server_id
- name: Write docker-puppet-tasks json files - name: Write docker-puppet-tasks json files
copy: content="{{item.value|to_json}}" dest=/var/lib/docker-puppet/docker-puppet-tasks{{item.key.replace("step_", "")}}.json force=yes copy: content="{{item.value|to_json}}" dest=/var/lib/docker-puppet/docker-puppet-tasks{{item.key.replace("step_", "")}}.json force=yes
with_dict: "{{docker_puppet_tasks}}" with_dict: "{{docker_puppet_tasks}}"
when: deploy_server_id == bootstrap_server_id when: deploy_server_id == bootstrap_server_id
{%- endraw %} {%- endraw %}
{{role.name}}HostPrepDeployment: {{role.name}}HostPrepDeployment:

View File

@ -116,12 +116,9 @@ outputs:
metadata_settings: metadata_settings:
get_attr: [ApacheServiceBase, role_data, metadata_settings] get_attr: [ApacheServiceBase, role_data, metadata_settings]
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.apache_upgrade + $.data.aodh_api_upgrade - get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
data: -
apache_upgrade: - name: Stop aodh_api service (running under httpd)
get_attr: [ApacheServiceBase, role_data, upgrade_tasks] tags: step1
aodh_api_upgrade: service: name=httpd state=stopped
- name: Stop aodh_api service (running under httpd)
tags: step1
service: name=httpd state=stopped

View File

@ -186,22 +186,19 @@ outputs:
metadata_settings: metadata_settings:
get_attr: [ApacheServiceBase, role_data, metadata_settings] get_attr: [ApacheServiceBase, role_data, metadata_settings]
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.apache_upgrade + $.data.barbican_api_upgrade - get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
data: -
apache_upgrade: - name: Check if barbican_api is deployed
get_attr: [ApacheServiceBase, role_data, upgrade_tasks] command: systemctl is-enabled openstack-barbican-api
barbican_api_upgrade: tags: common
- name: Check if barbican_api is deployed ignore_errors: True
command: systemctl is-enabled openstack-barbican-api register: barbican_api_enabled
tags: common - name: "PreUpgrade step0,validation: Check service openstack-barbican-api is running"
ignore_errors: True shell: /usr/bin/systemctl show 'openstack-barbican-api' --property ActiveState | grep '\bactive\b'
register: barbican_api_enabled when: barbican_api_enabled.rc == 0
- name: "PreUpgrade step0,validation: Check service openstack-barbican-api is running" tags: step0,validation
shell: /usr/bin/systemctl show 'openstack-barbican-api' --property ActiveState | grep '\bactive\b' - name: Install openstack-barbican-api package if it was disabled
when: barbican_api_enabled.rc == 0 tags: step3
tags: step0,validation yum: name=openstack-barbican-api state=latest
- name: Install openstack-barbican-api package if it was disabled when: barbican_api_enabled.rc != 0
tags: step3
yum: name=openstack-barbican-api state=latest
when: barbican_api_enabled.rc != 0

View File

@ -118,12 +118,9 @@ outputs:
metadata_settings: metadata_settings:
get_attr: [ApacheServiceBase, role_data, metadata_settings] get_attr: [ApacheServiceBase, role_data, metadata_settings]
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.apache_upgrade + $.data.ceilometer_api_upgrade - get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
data: -
apache_upgrade: - name: Stop ceilometer_api service (running under httpd)
get_attr: [ApacheServiceBase, role_data, upgrade_tasks] tags: step1
ceilometer_api_upgrade: service: name=httpd state=stopped
- name: Stop ceilometer_api service (running under httpd)
tags: step1
service: name=httpd state=stopped

View File

@ -184,31 +184,28 @@ outputs:
metadata_settings: metadata_settings:
get_attr: [ApacheServiceBase, role_data, metadata_settings] get_attr: [ApacheServiceBase, role_data, metadata_settings]
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.apache_upgrade + $.data.cinder_api_upgrade - get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
data: -
apache_upgrade: - name: Check if cinder_api is deployed
get_attr: [ApacheServiceBase, role_data, upgrade_tasks] command: systemctl is-enabled openstack-cinder-api
cinder_api_upgrade: tags: common
- name: Check if cinder_api is deployed ignore_errors: True
command: systemctl is-enabled openstack-cinder-api register: cinder_api_enabled
tags: common - name: "PreUpgrade step0,validation: Check service openstack-cinder-api is running"
ignore_errors: True shell: /usr/bin/systemctl show 'openstack-cinder-api' --property ActiveState | grep '\bactive\b'
register: cinder_api_enabled when: cinder_api_enabled.rc == 0
- name: "PreUpgrade step0,validation: Check service openstack-cinder-api is running" tags: step0,validation
shell: /usr/bin/systemctl show 'openstack-cinder-api' --property ActiveState | grep '\bactive\b' - name: check for cinder running under apache (post upgrade)
when: cinder_api_enabled.rc == 0 tags: step1
tags: step0,validation shell: "httpd -t -D DUMP_VHOSTS | grep -q cinder"
- name: check for cinder running under apache (post upgrade) register: cinder_apache
tags: step1 ignore_errors: true
shell: "httpd -t -D DUMP_VHOSTS | grep -q cinder" - name: Stop cinder_api service (running under httpd)
register: cinder_apache tags: step1
ignore_errors: true service: name=httpd state=stopped
- name: Stop cinder_api service (running under httpd) when: cinder_apache.rc == 0
tags: step1 - name: Stop and disable cinder_api service (pre-upgrade not under httpd)
service: name=httpd state=stopped tags: step1
when: cinder_apache.rc == 0 when: cinder_api_enabled.rc == 0
- name: Stop and disable cinder_api service (pre-upgrade not under httpd) service: name=openstack-cinder-api state=stopped enabled=no
tags: step1
when: cinder_api_enabled.rc == 0
service: name=openstack-cinder-api state=stopped enabled=no

View File

@ -151,12 +151,9 @@ outputs:
metadata_settings: metadata_settings:
get_attr: [ApacheServiceBase, role_data, metadata_settings] get_attr: [ApacheServiceBase, role_data, metadata_settings]
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.apache_upgrade + $.data.gnocchi_api_upgrade - get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
data: -
apache_upgrade: - name: Stop gnocchi_api service (running under httpd)
get_attr: [ApacheServiceBase, role_data, upgrade_tasks] tags: step1
gnocchi_api_upgrade: service: name=httpd state=stopped
- name: Stop gnocchi_api service (running under httpd)
tags: step1
service: name=httpd state=stopped

View File

@ -400,12 +400,9 @@ outputs:
metadata_settings: metadata_settings:
get_attr: [ApacheServiceBase, role_data, metadata_settings] get_attr: [ApacheServiceBase, role_data, metadata_settings]
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.apache_upgrade + $.data.keystone_upgrade - get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
data: -
apache_upgrade: - name: Stop keystone service (running under httpd)
get_attr: [ApacheServiceBase, role_data, upgrade_tasks] tags: step1
keystone_upgrade: service: name=httpd state=stopped
- name: Stop keystone service (running under httpd)
tags: step1
service: name=httpd state=stopped

View File

@ -140,22 +140,19 @@ outputs:
step_config: | step_config: |
include ::tripleo::profile::base::neutron::ovs include ::tripleo::profile::base::neutron::ovs
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.ovs_upgrade + $.data.neutron_ovs_upgrade - get_attr: [Ovs, role_data, upgrade_tasks]
data: -
ovs_upgrade: - name: Check if neutron_ovs_agent is deployed
get_attr: [Ovs, role_data, upgrade_tasks] command: systemctl is-enabled neutron-openvswitch-agent
neutron_ovs_upgrade: tags: common
- name: Check if neutron_ovs_agent is deployed ignore_errors: True
command: systemctl is-enabled neutron-openvswitch-agent register: neutron_ovs_agent_enabled
tags: common - name: "PreUpgrade step0,validation: Check service neutron-openvswitch-agent is running"
ignore_errors: True shell: /usr/bin/systemctl show 'neutron-openvswitch-agent' --property ActiveState | grep '\bactive\b'
register: neutron_ovs_agent_enabled when: neutron_ovs_agent_enabled.rc == 0
- name: "PreUpgrade step0,validation: Check service neutron-openvswitch-agent is running" tags: step0,validation
shell: /usr/bin/systemctl show 'neutron-openvswitch-agent' --property ActiveState | grep '\bactive\b' - name: Stop neutron_ovs_agent service
when: neutron_ovs_agent_enabled.rc == 0 tags: step1
tags: step0,validation when: neutron_ovs_agent_enabled.rc == 0
- name: Stop neutron_ovs_agent service service: name=neutron-openvswitch-agent state=stopped
tags: step1
when: neutron_ovs_agent_enabled.rc == 0
service: name=neutron-openvswitch-agent state=stopped

View File

@ -199,88 +199,85 @@ outputs:
metadata_settings: metadata_settings:
get_attr: [ApacheServiceBase, role_data, metadata_settings] get_attr: [ApacheServiceBase, role_data, metadata_settings]
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.apache_upgrade + $.data.nova_api_upgrade - get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
data: -
apache_upgrade: - name: get bootstrap nodeid
get_attr: [ApacheServiceBase, role_data, upgrade_tasks] tags: common
nova_api_upgrade: command: hiera bootstrap_nodeid
- name: get bootstrap nodeid register: bootstrap_node
tags: common - name: set is_bootstrap_node fact
command: hiera bootstrap_nodeid tags: common
register: bootstrap_node set_fact: is_bootstrap_node={{bootstrap_node.stdout|lower == ansible_hostname|lower}}
- name: set is_bootstrap_node fact - name: Extra migration for nova tripleo/+bug/1656791
tags: common tags: step0,pre-upgrade
set_fact: is_bootstrap_node={{bootstrap_node.stdout|lower == ansible_hostname|lower}} when: is_bootstrap_node
- name: Extra migration for nova tripleo/+bug/1656791 command: nova-manage db online_data_migrations
tags: step0,pre-upgrade - name: Stop and disable nova_api service (pre-upgrade not under httpd)
when: is_bootstrap_node tags: step2
command: nova-manage db online_data_migrations service: name=openstack-nova-api state=stopped enabled=no
- name: Stop and disable nova_api service (pre-upgrade not under httpd) - name: Create puppet manifest to set transport_url in nova.conf
tags: step2 tags: step5
service: name=openstack-nova-api state=stopped enabled=no when: is_bootstrap_node
- name: Create puppet manifest to set transport_url in nova.conf copy:
tags: step5 dest: /root/nova-api_upgrade_manifest.pp
when: is_bootstrap_node mode: 0600
copy: content: >
dest: /root/nova-api_upgrade_manifest.pp $transport_url = os_transport_url({
mode: 0600 'transport' => hiera('messaging_service_name', 'rabbit'),
content: > 'hosts' => any2array(hiera('rabbitmq_node_names', undef)),
$transport_url = os_transport_url({ 'port' => sprintf('%s',hiera('nova::rabbit_port', '5672') ),
'transport' => hiera('messaging_service_name', 'rabbit'), 'username' => hiera('nova::rabbit_userid', 'guest'),
'hosts' => any2array(hiera('rabbitmq_node_names', undef)), 'password' => hiera('nova::rabbit_password'),
'port' => sprintf('%s',hiera('nova::rabbit_port', '5672') ), 'ssl' => sprintf('%s', bool2num(str2bool(hiera('nova::rabbit_use_ssl', '0'))))
'username' => hiera('nova::rabbit_userid', 'guest'), })
'password' => hiera('nova::rabbit_password'), oslo::messaging::default { 'nova_config':
'ssl' => sprintf('%s', bool2num(str2bool(hiera('nova::rabbit_use_ssl', '0')))) transport_url => $transport_url
}) }
oslo::messaging::default { 'nova_config': - name: Run puppet apply to set tranport_url in nova.conf
transport_url => $transport_url tags: step5
} when: is_bootstrap_node
- name: Run puppet apply to set tranport_url in nova.conf command: puppet apply --modulepath /etc/puppet/modules:/opt/stack/puppet-modules:/usr/share/openstack-puppet/modules --detailed-exitcodes /root/nova-api_upgrade_manifest.pp
tags: step5 register: puppet_apply_nova_api_upgrade
when: is_bootstrap_node failed_when: puppet_apply_nova_api_upgrade.rc not in [0,2]
command: puppet apply --modulepath /etc/puppet/modules:/opt/stack/puppet-modules:/usr/share/openstack-puppet/modules --detailed-exitcodes /root/nova-api_upgrade_manifest.pp changed_when: puppet_apply_nova_api_upgrade.rc == 2
register: puppet_apply_nova_api_upgrade - name: Setup cell_v2 (map cell0)
failed_when: puppet_apply_nova_api_upgrade.rc not in [0,2] tags: step5
changed_when: puppet_apply_nova_api_upgrade.rc == 2 when: is_bootstrap_node
- name: Setup cell_v2 (map cell0) shell: nova-manage cell_v2 map_cell0 --database_connection=$(hiera nova::cell0_database_connection)
tags: step5 - name: Setup cell_v2 (create default cell)
when: is_bootstrap_node tags: step5
shell: nova-manage cell_v2 map_cell0 --database_connection=$(hiera nova::cell0_database_connection) when: is_bootstrap_node
- name: Setup cell_v2 (create default cell) # (owalsh) puppet-nova expects the cell name 'default'
tags: step5 # (owalsh) pass the db uri explicitly to avoid https://bugs.launchpad.net/tripleo/+bug/1662344
when: is_bootstrap_node shell: nova-manage cell_v2 create_cell --name='default' --database_connection=$(hiera nova::database_connection)
# (owalsh) puppet-nova expects the cell name 'default' register: nova_api_create_cell
# (owalsh) pass the db uri explicitly to avoid https://bugs.launchpad.net/tripleo/+bug/1662344 failed_when: nova_api_create_cell.rc not in [0,2]
shell: nova-manage cell_v2 create_cell --name='default' --database_connection=$(hiera nova::database_connection) changed_when: nova_api_create_cell.rc == 0
register: nova_api_create_cell - name: Setup cell_v2 (sync nova/cell DB)
failed_when: nova_api_create_cell.rc not in [0,2] tags: step5
changed_when: nova_api_create_cell.rc == 0 when: is_bootstrap_node
- name: Setup cell_v2 (sync nova/cell DB) command: nova-manage db sync
tags: step5 async: {get_param: NovaDbSyncTimeout}
when: is_bootstrap_node poll: 10
command: nova-manage db sync - name: Setup cell_v2 (get cell uuid)
async: {get_param: NovaDbSyncTimeout} tags: step5
poll: 10 when: is_bootstrap_node
- name: Setup cell_v2 (get cell uuid) shell: nova-manage cell_v2 list_cells | sed -e '1,3d' -e '$d' | awk -F ' *| *' '$2 == "default" {print $4}'
tags: step5 register: nova_api_cell_uuid
when: is_bootstrap_node - name: Setup cell_v2 (migrate hosts)
shell: nova-manage cell_v2 list_cells | sed -e '1,3d' -e '$d' | awk -F ' *| *' '$2 == "default" {print $4}' tags: step5
register: nova_api_cell_uuid when: is_bootstrap_node
- name: Setup cell_v2 (migrate hosts) command: nova-manage cell_v2 discover_hosts --cell_uuid {{nova_api_cell_uuid.stdout}} --verbose
tags: step5 - name: Setup cell_v2 (migrate instances)
when: is_bootstrap_node tags: step5
command: nova-manage cell_v2 discover_hosts --cell_uuid {{nova_api_cell_uuid.stdout}} --verbose when: is_bootstrap_node
- name: Setup cell_v2 (migrate instances) command: nova-manage cell_v2 map_instances --cell_uuid {{nova_api_cell_uuid.stdout}}
tags: step5 - name: Sync nova_api DB
when: is_bootstrap_node tags: step5
command: nova-manage cell_v2 map_instances --cell_uuid {{nova_api_cell_uuid.stdout}} command: nova-manage api_db sync
- name: Sync nova_api DB when: is_bootstrap_node
tags: step5 - name: Online data migration for nova
command: nova-manage api_db sync tags: step5
when: is_bootstrap_node when: is_bootstrap_node
- name: Online data migration for nova command: nova-manage db online_data_migrations
tags: step5
when: is_bootstrap_node
command: nova-manage db online_data_migrations

View File

@ -141,22 +141,19 @@ outputs:
step_config: | step_config: |
include tripleo::profile::base::neutron::plugins::ovs::opendaylight include tripleo::profile::base::neutron::plugins::ovs::opendaylight
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.ovs_upgrade + $.data.opendaylight_upgrade - get_attr: [Ovs, role_data, upgrade_tasks]
data: -
ovs_upgrade: - name: Check if openvswitch is deployed
get_attr: [Ovs, role_data, upgrade_tasks] command: systemctl is-enabled openvswitch
opendaylight_upgrade: tags: common
- name: Check if openvswitch is deployed ignore_errors: True
command: systemctl is-enabled openvswitch register: openvswitch_enabled
tags: common - name: "PreUpgrade step0,validation: Check service openvswitch is running"
ignore_errors: True shell: /usr/bin/systemctl show 'openvswitch' --property ActiveState | grep '\bactive\b'
register: openvswitch_enabled when: openvswitch_enabled.rc == 0
- name: "PreUpgrade step0,validation: Check service openvswitch is running" tags: step0,validation
shell: /usr/bin/systemctl show 'openvswitch' --property ActiveState | grep '\bactive\b' - name: Stop openvswitch service
when: openvswitch_enabled.rc == 0 tags: step1
tags: step0,validation when: openvswitch_enabled.rc == 0
- name: Stop openvswitch service service: name=openvswitch state=stopped
tags: step1
when: openvswitch_enabled.rc == 0
service: name=openvswitch state=stopped

View File

@ -112,27 +112,24 @@ outputs:
metadata_settings: metadata_settings:
get_attr: [ApacheServiceBase, role_data, metadata_settings] get_attr: [ApacheServiceBase, role_data, metadata_settings]
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.apache_upgrade + $.data.panko_api_upgrade - get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
data: -
apache_upgrade: - name: Check if httpd is deployed
get_attr: [ApacheServiceBase, role_data, upgrade_tasks] command: systemctl is-enabled httpd
panko_api_upgrade: tags: common
- name: Check if httpd is deployed ignore_errors: True
command: systemctl is-enabled httpd register: httpd_enabled
tags: common - name: "PreUpgrade step0,validation: Check if httpd is running"
ignore_errors: True shell: >
register: httpd_enabled /usr/bin/systemctl show 'httpd' --property ActiveState |
- name: "PreUpgrade step0,validation: Check if httpd is running" grep '\bactive\b'
shell: > when: httpd_enabled.rc == 0
/usr/bin/systemctl show 'httpd' --property ActiveState | tags: step0,validation
grep '\bactive\b' - name: Stop panko-api service (running under httpd)
when: httpd_enabled.rc == 0 tags: step1
tags: step0,validation service: name=httpd state=stopped
- name: Stop panko-api service (running under httpd) when: httpd_enabled.rc == 0
tags: step1 - name: Install openstack-panko-api package if it was not installed
service: name=httpd state=stopped tags: step3
when: httpd_enabled.rc == 0 yum: name=openstack-panko-api state=latest
- name: Install openstack-panko-api package if it was not installed
tags: step3
yum: name=openstack-panko-api state=latest

View File

@ -184,37 +184,34 @@ outputs:
metadata_settings: metadata_settings:
get_attr: [ApacheServiceBase, role_data, metadata_settings] get_attr: [ApacheServiceBase, role_data, metadata_settings]
upgrade_tasks: upgrade_tasks:
yaql: list_concat:
expression: $.data.apache_upgrade + $.data.zaqar_upgrade - get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
data: -
apache_upgrade: - name: Check if zaqar is deployed
get_attr: [ApacheServiceBase, role_data, upgrade_tasks] command: systemctl is-enabled openstack-zaqar
zaqar_upgrade: tags: common
- name: Check if zaqar is deployed ignore_errors: True
command: systemctl is-enabled openstack-zaqar register: zaqar_enabled
tags: common - name: "PreUpgrade step0,validation: Check if openstack-zaqar is running"
ignore_errors: True shell: >
register: zaqar_enabled /usr/bin/systemctl show 'openstack-zaqar' --property ActiveState |
- name: "PreUpgrade step0,validation: Check if openstack-zaqar is running" grep '\bactive\b'
shell: > when: zaqar_enabled.rc == 0
/usr/bin/systemctl show 'openstack-zaqar' --property ActiveState | tags: step0,validation
grep '\bactive\b' - name: Check for zaqar running under apache (post upgrade)
when: zaqar_enabled.rc == 0 tags: step1
tags: step0,validation shell: "httpd -t -D DUMP_VHOSTS | grep -q zaqar_wsgi"
- name: Check for zaqar running under apache (post upgrade) register: zaqar_apache
tags: step1 ignore_errors: true
shell: "httpd -t -D DUMP_VHOSTS | grep -q zaqar_wsgi" - name: Stop zaqar service (running under httpd)
register: zaqar_apache tags: step1
ignore_errors: true service: name=httpd state=stopped
- name: Stop zaqar service (running under httpd) when: zaqar_apache.rc == 0
tags: step1 - name: Stop and disable zaqar service (pre-upgrade not under httpd)
service: name=httpd state=stopped tags: step1
when: zaqar_apache.rc == 0 when: zaqar_enabled.rc == 0
- name: Stop and disable zaqar service (pre-upgrade not under httpd) service: name=openstack-zaqar state=stopped enabled=no
tags: step1 - name: Install openstack-zaqar package if it was disabled
when: zaqar_enabled.rc == 0 tags: step3
service: name=openstack-zaqar state=stopped enabled=no yum: name=openstack-zaqar state=latest
- name: Install openstack-zaqar package if it was disabled when: zaqar_enabled.rc != 0
tags: step3
yum: name=openstack-zaqar state=latest
when: zaqar_enabled.rc != 0