
Many tasks that use Docker have become specified already, but not all. This change ensures all tasks that use the following modules have become: * kolla_docker * kolla_ceph_keyring * kolla_toolbox * kolla_container_facts It also adds become for 'command' tasks that use docker CLI. Change-Id: I4a5ebcedaccb9261dbc958ec67e8077d7980e496
122 lines
3.7 KiB
YAML
122 lines
3.7 KiB
YAML
---
|
|
- 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
|
|
command: "getent ahostsv4 {{ 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(hostvars[item['item']]['ansible_' ~ hostvars[item['item']]['api_interface']]['ipv4']['address']) == -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
|
|
command: "getent ahostsv4 {{ 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(hostvars[item['item']]['ansible_' ~ hostvars[item['item']]['api_interface']]['ipv4']['address']) == -1"
|