49fb55f182
We assume that all groups are present in the inventory, and quite obtuse errors can result if any are not. This change adds a precheck that checks for the presence of all expected groups in the inventory for each service. It also introduces a common service-precheck role that we can use for other common prechecks. Change-Id: Ia0af1e7df4fff7f07cd6530e5b017db8fba530b3 Partially-Implements: blueprint improve-prechecks
50 lines
1.3 KiB
YAML
50 lines
1.3 KiB
YAML
---
|
|
- import_role:
|
|
name: service-precheck
|
|
vars:
|
|
service_precheck_services: "{{ octavia_services }}"
|
|
service_name: "{{ project_name }}"
|
|
|
|
- name: Get container facts
|
|
become: true
|
|
kolla_container_facts:
|
|
name:
|
|
- octavia_api
|
|
- octavia_health_manager
|
|
register: container_facts
|
|
|
|
- name: Checking free port for Octavia API
|
|
wait_for:
|
|
host: "{{ api_interface_address }}"
|
|
port: "{{ octavia_api_listen_port }}"
|
|
connect_timeout: 1
|
|
timeout: 1
|
|
state: stopped
|
|
when:
|
|
- container_facts['octavia_api'] is not defined
|
|
- inventory_hostname in groups['octavia-api']
|
|
|
|
- name: Checking free port for Octavia Health Manager
|
|
wait_for:
|
|
host: "{{ api_interface_address }}"
|
|
port: "{{ octavia_health_manager_port }}"
|
|
connect_timeout: 1
|
|
timeout: 1
|
|
state: stopped
|
|
when:
|
|
- container_facts['octavia_health_manager'] is not defined
|
|
- inventory_hostname in groups['octavia-health-manager']
|
|
|
|
- name: Checking certificate files exist for octavia
|
|
stat:
|
|
path: "{{ node_custom_config }}/octavia/{{ item }}"
|
|
delegate_to: localhost
|
|
run_once: True
|
|
register: result
|
|
failed_when: not result.stat.exists
|
|
when: inventory_hostname in groups['octavia-worker']
|
|
with_items:
|
|
- cakey.pem
|
|
- ca_01.pem
|
|
- client.pem
|