kolla-ansible/ansible/roles/neutron/tasks/neutron_plugin_agent_check.yml
Ivan Halomi 4ce47e2250 Refactor of kolla_container_facts
Refactor that prepares kolla_container_facts
module for introducing more actions that will be moved
from kolla_container module and kolla_container_volume_facts.

This change is based on a discussion about adding a new action
to kolla_container module that retrieves all names of the running
containers. It was agreed that kolla-ansible should follow Ansible's
direction of splitting modules between action modules and facts
modules. Because of this, kolla_container_facts needs to be able
to handle different requests for data about containers or volumes.

Change-Id: Ieaec8f64922e4e5a2199db2d6983518b124cb4aa
Signed-off-by: Ivan Halomi <ivan.halomi@tietoevry.com>
2024-08-12 09:54:05 +02:00

37 lines
1.3 KiB
YAML

---
- name: Get container facts
become: true
kolla_container_facts:
action: get_containers
container_engine: "{{ kolla_container_engine }}"
name:
- neutron_openvswitch_agent
- ovn_controller
check_mode: false
register: container_facts
- name: Get container volume facts
become: true
kolla_container_volume_facts:
container_engine: "{{ kolla_container_engine }}"
name:
- ovn_nb_db
- ovn_sb_db
check_mode: false
register: container_volume_facts
- name: Check for ML2/OVN presence
assert:
that: neutron_plugin_agent == 'ovn'
fail_msg: "ML2/OVN agent detected, neutron_plugin_agent is not set to 'ovn', Kolla-Ansible does not support this migration operation."
when: (container_facts['ovn_controller'] is defined) or (container_volume_facts['ovn_nb_db'] is defined) or (container_volume_facts['ovn_sb_db'] is defined)
- name: Check for ML2/OVS presence
assert:
that:
- neutron_plugin_agent == 'openvswitch'
- container_volume_facts['ovn_nb_db'] is not defined
- container_volume_facts['ovn_sb_db'] is not defined
fail_msg: "ML2/OVS agent detected, neutron_plugin_agent is not set to 'openvswitch', Kolla-Ansible does not support this migration operation."
when: container_facts['neutron_openvswitch_agent'] is defined