Murano fails to deploy - cannot check core library

Murano sometimes fails to deploy due to delay in haproxy
identifying started API services. Instead of waiting for all the
services and checking existance of core library via VIP deploy
task should connect to one of the services directly for testing
service status and for package import.

Change-Id: I2934579edc910e81730dd89dbd8ff9eb11a2cc1c
Closes-Bug: #1634531
This commit is contained in:
Vladislav Belogrudov 2016-10-18 18:00:45 +03:00
parent 761713ddf5
commit d7d8fc8069
1 changed files with 9 additions and 5 deletions

View File

@ -23,9 +23,9 @@
- "kolla_logs:/var/log/kolla/"
when: inventory_hostname in groups['murano-api']
- name: Waiting for Murano API service to be ready
- name: Waiting for Murano API service to be ready on first node
wait_for:
host: "{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}"
host: "{{ api_interface_address }}"
port: "{{ murano_api_port }}"
connect_timeout: 1
timeout: 60
@ -34,7 +34,7 @@
until: check_murano_port | success
retries: 10
delay: 6
when: inventory_hostname in groups['murano-api']
delegate_to: "{{ groups['murano-api'][0] }}"
- name: Checking if Murano core library package exists
command: "docker exec murano_api murano \
@ -43,11 +43,13 @@
--os-project-name admin \
--os-auth-url \
{{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_admin_port }}/v3 \
--murano-url \
{{ admin_protocol }}://{{ api_interface_address }}:{{ murano_api_port }} \
package-list"
register: status
changed_when: False
run_once: True
when: inventory_hostname in groups['murano-api']
delegate_to: "{{ groups['murano-api'][0] }}"
- name: Importing Murano core library package
command: "docker exec murano_api murano \
@ -56,8 +58,10 @@
--os-project-name admin \
--os-auth-url \
{{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_admin_port }}/v3 \
--murano-url \
{{ admin_protocol }}://{{ api_interface_address }}:{{ murano_api_port }} \
package-import --is-public /io.murano.zip"
run_once: True
delegate_to: "{{ groups['murano-api'][0] }}"
when:
- inventory_hostname in groups['murano-api']
- status.stdout.find("io.murano") == -1