--- - name: Get container facts become: true kolla_container_facts: name: - rabbitmq - outward_rabbitmq register: container_facts - name: Checking free port for RabbitMQ wait_for: host: "{{ api_interface_address }}" port: "{{ rabbitmq_port }}" connect_timeout: 1 timeout: 1 state: stopped when: - container_facts['rabbitmq'] is not defined - inventory_hostname in groups['rabbitmq'] - name: Checking free port for RabbitMQ Management wait_for: host: "{{ api_interface_address }}" port: "{{ rabbitmq_management_port }}" connect_timeout: 1 timeout: 1 state: stopped when: - container_facts['rabbitmq'] is not defined - inventory_hostname in groups['rabbitmq'] - name: Checking free port for RabbitMQ Cluster wait_for: host: "{{ api_interface_address }}" port: "{{ rabbitmq_cluster_port }}" connect_timeout: 1 timeout: 1 state: stopped when: - container_facts['rabbitmq'] is not defined - inventory_hostname in groups['rabbitmq'] - name: Checking free port for RabbitMQ EPMD wait_for: host: "{{ api_interface_address }}" port: "{{ rabbitmq_epmd_port }}" connect_timeout: 1 timeout: 1 state: stopped when: - container_facts['rabbitmq'] is not defined - inventory_hostname in groups['rabbitmq'] - name: Check if all rabbit hostnames are resolvable vars: nss_database: "{{ 'ahostsv4' if api_address_family == 'ipv4' else 'ahostsv6' }}" command: "getent {{ nss_database }} {{ hostvars[item]['ansible_hostname'] }}" changed_when: false register: rabbitmq_hostnames with_items: "{{ groups['rabbitmq'] }}" - fail: msg="Hostname has to resolve to IP address of api_interface" with_items: "{{ rabbitmq_hostnames.results }}" when: - "item.stdout.find('api' | kolla_address(item['item'])) == -1" - name: Checking free port for outward RabbitMQ wait_for: host: "{{ api_interface_address }}" port: "{{ outward_rabbitmq_port }}" connect_timeout: 1 state: stopped when: - enable_outward_rabbitmq | bool - inventory_hostname in groups['outward-rabbitmq'] - container_facts['outward_rabbitmq'] is not defined - name: Checking free port for outward RabbitMQ Management wait_for: host: "{{ api_interface_address }}" port: "{{ outward_rabbitmq_management_port }}" connect_timeout: 1 state: stopped when: - enable_outward_rabbitmq | bool - inventory_hostname in groups['outward-rabbitmq'] - container_facts['outward_rabbitmq'] is not defined - name: Checking free port for outward RabbitMQ Cluster wait_for: host: "{{ api_interface_address }}" port: "{{ outward_rabbitmq_cluster_port }}" connect_timeout: 1 state: stopped when: - enable_outward_rabbitmq | bool - inventory_hostname in groups['outward-rabbitmq'] - container_facts['outward_rabbitmq'] is not defined - name: Checking free port for outward RabbitMQ EPMD wait_for: host: "{{ api_interface_address }}" port: "{{ outward_rabbitmq_epmd_port }}" connect_timeout: 1 state: stopped when: - enable_outward_rabbitmq | bool - inventory_hostname in groups['outward-rabbitmq'] - container_facts['outward_rabbitmq'] is not defined - name: Check if all outward rabbit hostnames are resolvable vars: nss_database: "{{ 'ahostsv4' if api_address_family == 'ipv4' else 'ahostsv6' }}" command: "getent {{ nss_database }} {{ hostvars[item]['ansible_hostname'] }}" changed_when: false register: outward_rabbitmq_hostnames with_items: "{{ groups['outward-rabbitmq'] }}" when: - enable_outward_rabbitmq | bool - fail: msg="Hostname has to resolve to IP address of api_interface" with_items: "{{ outward_rabbitmq_hostnames.results }}" when: - enable_outward_rabbitmq | bool - "item.stdout.find('api' | kolla_address(item['item'])) == -1"