From 8b370734443bec6828c5c924878e42037598b815 Mon Sep 17 00:00:00 2001 From: caoyuan Date: Mon, 2 Jan 2017 19:26:26 +0800 Subject: [PATCH] Move trove precheck into its own role Change-Id: Ic878a76787052e9baf9d710d5d174e2b10b9fd10 Partially-implements: blueprint condition-pre-check --- ansible/roles/haproxy/tasks/precheck.yml | 12 +++++++++++- ansible/roles/trove/tasks/precheck.yml | 15 +++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/ansible/roles/haproxy/tasks/precheck.yml b/ansible/roles/haproxy/tasks/precheck.yml index b9dbf33582..74547c406f 100644 --- a/ansible/roles/haproxy/tasks/precheck.yml +++ b/ansible/roles/haproxy/tasks/precheck.yml @@ -113,6 +113,17 @@ - "{{ 'sahara_api' not in haproxy_stat }}" - inventory_hostname in groups['haproxy'] +- name: Checking free port for Trove API HAProxy + wait_for: + host: "{{ kolla_internal_vip_address }}" + port: "{{ trove_api_port }}" + connect_timeout: 1 + state: stopped + when: + - enable_trove | bool + - "{{ 'trove_api' not in haproxy_stat }}" + - inventory_hostname in groups['haproxy'] + - name: Checking free port for Watcher API HAProxy wait_for: host: "{{ kolla_internal_vip_address }}" @@ -123,4 +134,3 @@ - enable_watcher | bool - "{{ 'watcher_api' not in haproxy_stat }}" - inventory_hostname in groups['haproxy'] - diff --git a/ansible/roles/trove/tasks/precheck.yml b/ansible/roles/trove/tasks/precheck.yml index ed97d539c0..164d4e5630 100644 --- a/ansible/roles/trove/tasks/precheck.yml +++ b/ansible/roles/trove/tasks/precheck.yml @@ -1 +1,16 @@ --- +- name: Get container facts + kolla_container_facts: + name: + - trove_api + register: container_facts + +- name: Checking free port for Trove API + wait_for: + host: "{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}" + port: "{{ trove_api_port }}" + connect_timeout: 1 + state: stopped + when: + - container_facts['trove_api'] is not defined + - inventory_hostname in groups['trove-api']