ffu: Introduce Neutron fast-forward upgrade tasks

fast_forward_upgrade_tasks for neutron covering Ocata and Pike.
- Service status check
- Stop service when updating from Ocata to Pike
- Update neutron package
- Db sync

bp fast-forward-upgrades
Change-Id: I8858bbab2d5ec0e5a88fff3275368711a0bf8a8a
This commit is contained in:
Lee Yarwood 2017-11-16 17:49:03 +00:00 committed by Lukas Bezdicka
parent 3004c31d72
commit de40fe5cbd
6 changed files with 118 additions and 2 deletions

@ -217,3 +217,38 @@ outputs:
- remove_neutron_package|bool
metadata_settings:
get_attr: [NeutronBase, role_data, metadata_settings]
fast_forward_upgrade_tasks:
- name: Check if neutron_server is deployed
command: systemctl is-enabled --quiet neutron-server
ignore_errors: True
register: neutron_server_enabled_result
when:
- step|int == 0
- release == 'ocata'
- name: Set fact neutron_server_enabled
set_fact:
neutron_server_enabled: "{{ neutron_server_enabled_result.rc == 0 }}"
when:
- step|int == 0
- release == 'ocata'
- name: Stop neutron_server
service: name=neutron-server state=stopped enabled=no
when:
- step|int == 1
- release == 'ocata'
- neutron_server_enabled|bool
- name: Neutron package update
yum: name=openstack-neutron* state=latest
when:
- step|int == 6
- is_bootstrap_node|bool
- name: Neutron package update workaround
yum: name=python-networking-odl state=latest
when:
- step|int == 6
- is_bootstrap_node|bool
- name: Neutron db sync
command: neutron-db-manage upgrade head
when:
- step|int == 8
- is_bootstrap_node|bool

@ -172,3 +172,23 @@ outputs:
- step|int == 2
- neutron_dhcp_agent_enabled.rc == 0
service: name=neutron-dhcp-agent state=stopped enabled=no
fast_forward_upgrade_tasks:
- name: Check if neutron_dhcp_agent is deployed
command: systemctl is-enabled --quiet neutron-dhcp-agent
ignore_errors: True
register: neutron_dhcp_agent_enabled_result
when:
- step|int == 0
- release == 'ocata'
- name: Set fact neutron_dhcp_agent_enabled
set_fact:
neutron_dhcp_agent_enabled: "{{ neutron_dhcp_agent_enabled_result.rc == 0 }}"
when:
- step|int == 0
- release == 'ocata'
- name: Stop neutron_dhcp_agent
service: name=neutron-dhcp-agent state=stopped enabled=no
when:
- step|int == 2
- release == 'ocata'
- neutron_dhcp_agent_enabled|bool

@ -141,3 +141,23 @@ outputs:
- step|int == 2
- neutron_l3_agent_enabled.rc == 0
service: name=neutron-l3-agent state=stopped enabled=no
fast_forward_upgrade_tasks:
- name: Check if neutron_l3_agent is deployed
command: systemctl is-enabled --quiet neutron-l3-agent
ignore_errors: True
register: neutron_l3_agent_enabled_result
when:
- step|int == 0
- release == 'ocata'
- name: Set fact neutron_l3_agent_enabled
set_fact:
neutron_l3_agent_enabled: "{{ neutron_l3_agent_enabled_result.rc == 0 }}"
when:
- step|int == 0
- release == 'ocata'
- name: Stop neutron_l3_agent
service: name=neutron-l3-agent state=stopped enabled=no
when:
- step|int == 1
- release == 'ocata'
- neutron_l3_agent_enabled|bool

@ -139,3 +139,23 @@ outputs:
- step|int == 2
- neutron_metadata_agent_enabled.rc == 0
service: name=neutron-metadata-agent state=stopped enabled=no
fast_forward_upgrade_tasks:
- name: Check if neutron_metadata_agent is deployed
command: systemctl is-enabled --quiet neutron-metadata-agent
ignore_errors: True
register: neutron_metadata_agent_enabled_result
when:
- step|int == 0
- release == 'ocata'
- name: Set fact neutron_metadata_agent_enabled
set_fact:
neutron_metadata_agent_enabled: "{{ neutron_metadata_agent_enabled_result.rc == 0 }}"
when:
- step|int == 0
- release == 'ocata'
- name: Stop neutron_metadata_agent
service: name=neutron-metadata-agent state=stopped enabled=no
when:
- step|int == 1
- release == 'ocata'
- neutron_metadata_agent_enabled|bool

@ -202,3 +202,23 @@ outputs:
regexp=".*neutron-"
state=absent
when: step|int == 5
fast_forward_upgrade_tasks:
- name: Check if neutron_ovs_agent is deployed
command: systemctl is-enabled --quiet neutron-openvswitch-agent
ignore_errors: True
register: neutron_ovs_agent_enabled_result
when:
- step|int == 0
- release == 'ocata'
- name: Set fact neutron_ovs_agent_enabled
set_fact:
neutron_ovs_agent_enabled: "{{ neutron_ovs_agent_enabled_result.rc == 0 }}"
when:
- step|int == 0
- release == 'ocata'
- name: Stop neutron_openvswitch_agent
service: name=neutron-openvswitch-agent state=stopped enabled=no
when:
- step|int == 1
- release == 'ocata'
- neutron_ovs_agent_enabled|bool

@ -98,5 +98,6 @@ outputs:
host_prep_tasks:
get_attr: [NeutronOvsAgentDockerBase, role_data, host_prep_tasks]
upgrade_tasks:
get_attr: [NeutronOvsAgentDockerBase, role_data, kolla_config]
get_attr: [NeutronOvsAgentDockerBase, role_data, upgrade_tasks]
fast_forward_upgrade_tasks:
get_attr: [NeutronOvsAgentDockerBase, role_data, fast_forward_upgrade_tasks]