46aeb9843f
When running in check mode, some prechecks previously failed because they use the command module which is silently not run in check mode. Other prechecks were not running correctly in check mode due to e.g. looking for a string in empty command output or not querying which containers are running. This change fixes these issues. Closes-Bug: #2002657 Change-Id: I5219cb42c48d5444943a2d48106dc338aa08fa7c
27 lines
919 B
YAML
27 lines
919 B
YAML
---
|
|
- name: Get container facts
|
|
become: true
|
|
kolla_container_facts:
|
|
container_engine: "{{ kolla_container_engine }}"
|
|
name:
|
|
- hacluster_pacemaker_remote
|
|
check_mode: false
|
|
register: container_facts
|
|
|
|
# NOTE(yoctozepto): Corosync runs over UDP so one cannot use wait_for to check
|
|
# for it being up or down (TCP-only). In fact, such prechecks should only really
|
|
# check if the port is taken already by the host and not contact it.
|
|
|
|
# NOTE(yoctozepto): The below is a slight simplification because
|
|
# pacemaker_remoted always listens on all addresses (wildcard listen).
|
|
- name: Check free port for Pacemaker Remote
|
|
wait_for:
|
|
host: "{{ api_interface_address }}"
|
|
port: "{{ hacluster_pacemaker_remote_port }}"
|
|
connect_timeout: 1
|
|
timeout: 1
|
|
state: stopped
|
|
when:
|
|
- container_facts['hacluster_pacemaker_remote'] is not defined
|
|
- inventory_hostname in groups['hacluster-remote']
|