Mark Goddard b123bf6621 Use become for all docker tasks
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
2019-06-06 19:04:58 +01:00

118 lines
3.9 KiB
YAML

---
- name: Get container facts
become: true
kolla_container_facts:
name:
- swift_account_server
- swift_container_server
- swift_object_server
- swift_proxy_server
register: container_facts
- name: Checking free port for Swift Account Server
wait_for:
host: "{{ hostvars[inventory_hostname]['ansible_' + swift_storage_interface]['ipv4']['address'] }}"
port: "{{ swift_account_server_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['swift_account_server'] is not defined
- inventory_hostname in groups['swift-account-server']
- name: Checking free port for Swift Container Server
wait_for:
host: "{{ hostvars[inventory_hostname]['ansible_' + swift_storage_interface]['ipv4']['address'] }}"
port: "{{ swift_container_server_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['swift_container_server'] is not defined
- inventory_hostname in groups['swift-container-server']
- name: Checking free port for Swift Object Server
wait_for:
host: "{{ hostvars[inventory_hostname]['ansible_' + swift_storage_interface]['ipv4']['address'] }}"
port: "{{ swift_object_server_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['swift_object_server'] is not defined
- inventory_hostname in groups['swift-object-server']
- name: Checking free port for Swift Account Replication Server
wait_for:
host: "{{ hostvars[inventory_hostname]['ansible_' + swift_replication_interface]['ipv4']['address'] }}"
port: "{{ swift_account_server_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['swift_account_server'] is not defined
- inventory_hostname in groups['swift-account-server']
- name: Checking free port for Swift Container Replication Server
wait_for:
host: "{{ hostvars[inventory_hostname]['ansible_' + swift_replication_interface]['ipv4']['address'] }}"
port: "{{ swift_container_server_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['swift_container_server'] is not defined
- inventory_hostname in groups['swift-container-server']
- name: Checking free port for Swift Object Replication Server
wait_for:
host: "{{ hostvars[inventory_hostname]['ansible_' + swift_replication_interface]['ipv4']['address'] }}"
port: "{{ swift_object_server_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['swift_object_server'] is not defined
- inventory_hostname in groups['swift-object-server']
- name: Checking free port for Rsync
wait_for:
host: "{{ hostvars[inventory_hostname]['ansible_' + swift_replication_interface]['ipv4']['address'] }}"
port: "873"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['swift_object_server'] is not defined
- inventory_hostname in groups['swift-object-server']
- name: Checking free port for Swift Proxy Server
wait_for:
host: "{{ api_interface_address }}"
port: "{{ swift_proxy_server_listen_port }}"
connect_timeout: 1
timeout: 1
state: stopped
when:
- container_facts['swift_proxy_server'] is not defined
- inventory_hostname in groups['swift-proxy-server']
- name: Checking Swift ring files
run_once: True
local_action: stat path="{{ node_custom_config }}/swift/{{ item }}"
register: swift_ring_files
with_items:
- "account.builder"
- "account.ring.gz"
- "container.builder"
- "container.ring.gz"
- "object.builder"
- "object.ring.gz"
- name: Fail if ring files don't exist
run_once: True
local_action: fail msg="Swift ring files do not exist. Ensure .builder and .gz are available for each of account/container/object under {{ node_custom_config }}/swift before deploying Swift."
with_items: '{{ swift_ring_files.results }}'
when:
- item.stat.exists == false