--- # Copyright 2017, Rackspace US, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - name: Implement openrc/clouds.yaml include_role: name: "openstack_openrc" - name: Set the delegated task facts set_fact: _wait_nova_bin: "{{ hostvars[first_conductor]['nova_bin'] | default(nova_bin) }}" - block: - name: Wait for the nova-compute service to initialize command: "{{ _wait_nova_bin }}/openstack --os-cloud default compute service list --service nova-compute --format value --column Host" changed_when: false register: _compute_host_list retries: 10 delay: 5 until: "compute_host_to_wait_for in _compute_host_list.stdout_lines" rescue: - name: Restart nova-compute service service: name: "{{ nova_services['nova-compute']['service_name'] }}" state: restarted delegate_to: "{{ compute_host_to_wait_for }}" - name: Wait for the nova-compute service to initialize command: "{{ _wait_nova_bin }}/openstack --os-cloud default compute service list --service nova-compute --format value --column Host" changed_when: false register: _compute_host_list retries: 10 delay: 5 until: "compute_host_to_wait_for in _compute_host_list.stdout_lines"