43c83b51cf
The neutron containers were not being restarted if only the ml2_conf.ini file is changed. This is due to the XenAPI ml2_conf.ini config task registering a variable of the same name as the task that generates ml2_conf.ini for other services. Since the XenAPI service is typically not running, the tasks show as not changed, and the handler skips restarting the container. This change adds a second variable for XenAPI to avoid this shadowing. Change-Id: I77819ed8defb8a7653e1e5aec92013b1d40fbf02 Closes-Bug: #1783268
397 lines
18 KiB
YAML
397 lines
18 KiB
YAML
---
|
|
- name: Restart neutron-server container
|
|
vars:
|
|
service_name: "neutron-server"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_lbaas_conf: "{{ neutron_lbaas_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_vpnaas_conf: "{{ neutron_vpnaas_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_server_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_lbaas_conf | changed
|
|
or neutron_vpnaas_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or nsx_ini | changed
|
|
or policy_json | changed
|
|
or neutron_server_container | changed
|
|
|
|
- name: Restart neutron-openvswitch-agent container
|
|
vars:
|
|
service_name: "neutron-openvswitch-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_openvswitch_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or policy_json | changed
|
|
or neutron_openvswitch_agent_container | changed
|
|
|
|
- name: Restart neutron-openvswitch-agent-xenapi container
|
|
vars:
|
|
service_name: "neutron-openvswitch-agent-xenapi"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_xenapi_conf: "{{ neutron_ml2_xenapi_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_openvswitch_agent_xenapi_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_xenapi_conf | changed
|
|
or policy_json | changed
|
|
or neutron_openvswitch_agent_xenapi_container | changed
|
|
|
|
- name: Restart fake neutron-openvswitch-agent container
|
|
vars:
|
|
service_name: "neutron-openvswitch-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_openvswitch_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
with_sequence: "start=1 end={{ num_nova_fake_per_node }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- enable_nova_fake | bool
|
|
- neutron_plugin_agent == "openvswitch"
|
|
- inventory_hostname in groups["compute"]
|
|
- fake_config_json | changed
|
|
or fake_neutron_conf | changed
|
|
or fake_neutron_ml2_conf_ini | changed
|
|
or check_fake_neutron_openvswitch_agent | changed
|
|
|
|
- name: Restart neutron-linuxbridge-agent container
|
|
vars:
|
|
service_name: "neutron-linuxbridge-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_linuxbridge_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
environment: "{{ service.environment }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or policy_json | changed
|
|
or neutron_linuxbridge_agent_container | changed
|
|
|
|
- name: Restart neutron-dhcp-agent container
|
|
vars:
|
|
service_name: "neutron-dhcp-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_dhcp_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or dhcp_agent_ini | changed
|
|
or dnsmasq_conf | changed
|
|
or policy_json | changed
|
|
or neutron_dhcp_agent_container | changed
|
|
|
|
- name: Restart neutron-l3-agent container
|
|
vars:
|
|
service_name: "neutron-l3-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_l3_agent_ini: "{{ neutron_l3_agent_inis.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_fwaas_driver_ini: "{{ neutron_fwaas_driver_inis.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_vpnaas_conf: "{{ neutron_vpnaas_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_l3_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_l3_agent_ini | changed
|
|
or neutron_fwaas_driver_ini | changed
|
|
or neutron_vpnaas_conf | changed
|
|
or policy_json | changed
|
|
or neutron_l3_agent_wrapper | changed
|
|
or neutron_l3_agent_container | changed
|
|
|
|
- name: Restart neutron-lbaas-agent container
|
|
vars:
|
|
service_name: "neutron-lbaas-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_lbaas_conf: "{{ neutron_lbaas_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_lbaas_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_lbaas_conf | changed
|
|
or neutron_lbaas_agent_ini | changed
|
|
or policy_json | changed
|
|
or neutron_lbaas_agent_container | changed
|
|
|
|
- name: Restart neutron-sriov-agent container
|
|
vars:
|
|
service_name: "neutron-sriov-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_sriov_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_sriov_agent_ini | changed
|
|
or policy_json | changed
|
|
or neutron_sriov_agent_container | changed
|
|
|
|
- name: Restart neutron-metadata-agent container
|
|
vars:
|
|
service_name: "neutron-metadata-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_metadata_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_metadata_agent_ini | changed
|
|
or policy_json | changed
|
|
or neutron_metadata_agent_container | changed
|
|
|
|
- name: Restart neutron-bgp-dragent container
|
|
vars:
|
|
service_name: "neutron-bgp-dragent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_bgp_dragent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_bgp_dragent_ini | changed
|
|
or policy_json | changed
|
|
or neutron_bgp_dragent_container | changed
|
|
|
|
- name: Restart neutron-infoblox-ipam-agent container
|
|
vars:
|
|
service_name: "neutron-infoblox-ipam-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_infoblox_ipam_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or neutron_infoblox_ipam_agent_container | changed
|
|
|
|
- name: Restart neutron-metering-agent container
|
|
vars:
|
|
service_name: "neutron-metering-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_metering_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_metering_agent_ini | changed
|
|
or neutron_metering_agent_container | changed
|
|
|
|
- name: Restart ironic-neutron-agent container
|
|
vars:
|
|
service_name: "ironic-neutron-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
ironic_neutron_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or ironic_neutron_agent_ini | changed
|
|
or ironic_neutron_agent_container | changed
|