From 57ee8b3751955380934e89c041296f6bd6f75a49 Mon Sep 17 00:00:00 2001 From: caoyuan Date: Wed, 28 Dec 2016 14:08:35 +0800 Subject: [PATCH] Move heat precheck into its own role Change-Id: I7de1322ae1efe3797ed5be8ebe2f7359142b077f Partially-implements: blueprint condition-pre-check --- ansible/roles/haproxy/tasks/precheck.yml | 22 ++++++++++++ ansible/roles/heat/tasks/precheck.yml | 26 ++++++++++++++ ansible/roles/prechecks/tasks/port_checks.yml | 36 ------------------- 3 files changed, 48 insertions(+), 36 deletions(-) diff --git a/ansible/roles/haproxy/tasks/precheck.yml b/ansible/roles/haproxy/tasks/precheck.yml index 8a68c6c890..0d5972e777 100644 --- a/ansible/roles/haproxy/tasks/precheck.yml +++ b/ansible/roles/haproxy/tasks/precheck.yml @@ -58,6 +58,28 @@ - inventory_hostname in groups['haproxy'] - "{{ 'glance_registry' not in haproxy_stat }}" +- name: Checking free port for Heat API HAProxy + wait_for: + host: "{{ kolla_internal_vip_address }}" + port: "{{ heat_api_port }}" + connect_timeout: 1 + state: stopped + when: + - enable_heat | bool + - "{{ 'heat_api' not in haproxy_stat }}" + - inventory_hostname in groups['haproxy'] + +- name: Checking free port for Heat API CFN HAProxy + wait_for: + host: "{{ kolla_internal_vip_address }}" + port: "{{ heat_api_cfn_port }}" + connect_timeout: 1 + state: stopped + when: + - enable_heat | bool + - "{{ 'heat_api_cfn' not in haproxy_stat }}" + - inventory_hostname in groups['haproxy'] + - name: Checking free port for watcher API HAProxy wait_for: host: "{{ kolla_internal_vip_address }}" diff --git a/ansible/roles/heat/tasks/precheck.yml b/ansible/roles/heat/tasks/precheck.yml index ed97d539c0..6391fbdffd 100644 --- a/ansible/roles/heat/tasks/precheck.yml +++ b/ansible/roles/heat/tasks/precheck.yml @@ -1 +1,27 @@ --- +- name: Get container facts + kolla_container_facts: + name: + - heat_api + - heat_api_cfn + register: container_facts + +- name: Checking free port for Heat API + wait_for: + host: "{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}" + port: "{{ heat_api_port }}" + connect_timeout: 1 + state: stopped + when: + - container_facts['heat_api'] is not defined + - inventory_hostname in groups['heat-api'] + +- name: Checking free port for Heat API CFN + wait_for: + host: "{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}" + port: "{{ heat_api_cfn_port }}" + connect_timeout: 1 + state: stopped + when: + - container_facts['heat_api_cfn'] is not defined + - inventory_hostname in groups['heat-api-cfn'] diff --git a/ansible/roles/prechecks/tasks/port_checks.yml b/ansible/roles/prechecks/tasks/port_checks.yml index 9e94f9065c..b2427d8869 100644 --- a/ansible/roles/prechecks/tasks/port_checks.yml +++ b/ansible/roles/prechecks/tasks/port_checks.yml @@ -193,45 +193,9 @@ - enable_haproxy | bool - inventory_hostname in groups['haproxy'] -- name: Checking free port for Heat API - wait_for: - host: "{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}" - port: "{{ heat_api_port }}" - connect_timeout: 1 - state: stopped - when: - - enable_heat | bool - - inventory_hostname in groups['heat-api'] -- name: Checking free port for Heat API HAProxy - wait_for: - host: "{{ kolla_internal_vip_address }}" - port: "{{ heat_api_port }}" - connect_timeout: 1 - state: stopped - when: - - enable_heat | bool - - inventory_hostname in groups['haproxy'] -- name: Checking free port for Heat API CFN - wait_for: - host: "{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}" - port: "{{ heat_api_cfn_port }}" - connect_timeout: 1 - state: stopped - when: - - enable_heat | bool - - inventory_hostname in groups['heat-api-cfn'] -- name: Checking free port for Heat API CFN HAProxy - wait_for: - host: "{{ kolla_internal_vip_address }}" - port: "{{ heat_api_cfn_port }}" - connect_timeout: 1 - state: stopped - when: - - enable_heat | bool - - inventory_hostname in groups['haproxy'] - name: Checking free port for Horizon wait_for: