Switch from run_once back to inventory scoping
As it turns out, run_once executes a task once per batch when executed from a serialised playbook instead of once per set of play hosts as previously thought. In this patch we implement a combination of dynamic inclusion, inventory scoping and play host scoping to achieve the required goal of only running it once, even when the playbook is executed using limits. Depends-On: I548971e2de92280fe2cc4ff0a6a926497733fa7d Change-Id: Icde03cd2610f52859fd8d2d7540f442a36e51695
This commit is contained in:
parent
9ef1b61fe9
commit
1bcd6d5812
@ -70,7 +70,8 @@
|
|||||||
delegate_to: "{{ groups[neutron_services['neutron-server']['group']][0] }}"
|
delegate_to: "{{ groups[neutron_services['neutron-server']['group']][0] }}"
|
||||||
when:
|
when:
|
||||||
- "ansible_local['openstack_ansible']['neutron']['need_db_contract'] | bool"
|
- "ansible_local['openstack_ansible']['neutron']['need_db_contract'] | bool"
|
||||||
run_once: yes
|
- "neutron_services['neutron-server']['group'] in group_names"
|
||||||
|
- "inventory_hostname == ansible_play_hosts[0]"
|
||||||
listen: "Restart neutron services"
|
listen: "Restart neutron services"
|
||||||
|
|
||||||
- name: Start services
|
- name: Start services
|
||||||
|
@ -86,15 +86,22 @@
|
|||||||
- neutron-config
|
- neutron-config
|
||||||
|
|
||||||
- include: neutron_db_setup.yml
|
- include: neutron_db_setup.yml
|
||||||
|
static: no
|
||||||
|
when:
|
||||||
|
- "neutron_services['neutron-server']['group'] in group_names"
|
||||||
tags:
|
tags:
|
||||||
- neutron-config
|
- neutron-config
|
||||||
|
|
||||||
- include: neutron_service_setup.yml
|
- include: neutron_service_setup.yml
|
||||||
run_once: yes
|
static: no
|
||||||
|
when:
|
||||||
|
- "neutron_services['neutron-server']['group'] in group_names"
|
||||||
|
- "inventory_hostname == ansible_play_hosts[0]"
|
||||||
tags:
|
tags:
|
||||||
- neutron-config
|
- neutron-config
|
||||||
|
|
||||||
- include: neutron_l3_ha.yml
|
- include: neutron_l3_ha.yml
|
||||||
|
static: no
|
||||||
when:
|
when:
|
||||||
- "neutron_services['neutron-l3-agent']['group'] in group_names"
|
- "neutron_services['neutron-l3-agent']['group'] in group_names"
|
||||||
tags:
|
tags:
|
||||||
|
@ -17,10 +17,9 @@
|
|||||||
command: "{{ neutron_bin }}/neutron-db-manage upgrade --expand"
|
command: "{{ neutron_bin }}/neutron-db-manage upgrade --expand"
|
||||||
become: yes
|
become: yes
|
||||||
become_user: "{{ neutron_system_user_name }}"
|
become_user: "{{ neutron_system_user_name }}"
|
||||||
delegate_to: "{{ groups[neutron_services['neutron-server']['group']][0] }}"
|
|
||||||
when:
|
when:
|
||||||
- "ansible_local['openstack_ansible']['neutron']['need_db_expand'] | bool"
|
- "ansible_local['openstack_ansible']['neutron']['need_db_expand'] | bool"
|
||||||
run_once: yes
|
- "inventory_hostname == ansible_play_hosts[0]"
|
||||||
|
|
||||||
- name: Disable the db expand fact
|
- name: Disable the db expand fact
|
||||||
ini_file:
|
ini_file:
|
||||||
@ -33,13 +32,13 @@
|
|||||||
command: "{{ neutron_bin }}/neutron-db-manage has_offline_migrations"
|
command: "{{ neutron_bin }}/neutron-db-manage has_offline_migrations"
|
||||||
become: yes
|
become: yes
|
||||||
become_user: "{{ neutron_system_user_name }}"
|
become_user: "{{ neutron_system_user_name }}"
|
||||||
delegate_to: "{{ groups[neutron_services['neutron-server']['group']][0] }}"
|
when:
|
||||||
|
- "inventory_hostname == ansible_play_hosts[0]"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
register: _offline_migrations_check
|
register: _offline_migrations_check
|
||||||
failed_when:
|
failed_when:
|
||||||
- "_offline_migrations_check.rc == 1"
|
- "_offline_migrations_check.rc == 1"
|
||||||
- "'Need to apply migrations from neutron contract branch' not in _offline_migrations_check.stdout"
|
- "'Need to apply migrations from neutron contract branch' not in _offline_migrations_check.stdout"
|
||||||
run_once: yes
|
|
||||||
|
|
||||||
- name: Set the fact for the required offline migrations
|
- name: Set the fact for the required offline migrations
|
||||||
ini_file:
|
ini_file:
|
||||||
|
@ -29,7 +29,6 @@
|
|||||||
until: add_service|success
|
until: add_service|success
|
||||||
retries: 5
|
retries: 5
|
||||||
delay: 2
|
delay: 2
|
||||||
run_once: yes
|
|
||||||
|
|
||||||
# Create an admin user
|
# Create an admin user
|
||||||
- name: Ensure neutron user
|
- name: Ensure neutron user
|
||||||
@ -48,7 +47,6 @@
|
|||||||
until: add_service|success
|
until: add_service|success
|
||||||
retries: 5
|
retries: 5
|
||||||
delay: 10
|
delay: 10
|
||||||
run_once: yes
|
|
||||||
|
|
||||||
# Add a role to the user
|
# Add a role to the user
|
||||||
- name: Ensure neutron user to admin role
|
- name: Ensure neutron user to admin role
|
||||||
@ -67,7 +65,6 @@
|
|||||||
until: add_service|success
|
until: add_service|success
|
||||||
retries: 5
|
retries: 5
|
||||||
delay: 10
|
delay: 10
|
||||||
run_once: yes
|
|
||||||
|
|
||||||
# Create an endpoint
|
# Create an endpoint
|
||||||
- name: Ensure neutron endpoint
|
- name: Ensure neutron endpoint
|
||||||
@ -92,4 +89,3 @@
|
|||||||
until: add_service|success
|
until: add_service|success
|
||||||
retries: 5
|
retries: 5
|
||||||
delay: 10
|
delay: 10
|
||||||
run_once: yes
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user