--- - 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: Warn about certificate changes debug: msg: >- Octavia's certificate configuration has been changed since Train. The new configuration requires 4 PEM files. Please check certificate configuration guide at https://docs.openstack.org/octavia/latest/admin/guides/certificates.html when: "'amphora' in octavia_provider_drivers" - 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'] - "'amphora' in octavia_provider_drivers" with_items: - client.cert-and-key.pem - client_ca.cert.pem - server_ca.cert.pem - server_ca.key.pem - name: Fail when Neutron plugin agent is not supported fail: msg: > Neutron plugin agent {{ neutron_plugin_agent }} is not supported when octavia_network_type is tenant, only openvswitch is supported currently run_once: True when: - octavia_auto_configure | bool - octavia_network_type == "tenant" - neutron_plugin_agent != 'openvswitch'