--- - name: Ensuring config directories exist file: path: "{{ node_config_directory }}/{{ item.key }}" state: "directory" owner: "{{ config_owner_user }}" group: "{{ config_owner_group }}" mode: "0770" become: true when: - inventory_hostname in groups[item.value.group] - item.value.enabled | bool with_dict: "{{ octavia_services }}" - name: Check if policies shall be overwritten stat: path: "{{ item }}" delegate_to: localhost run_once: True register: octavia_policy with_first_found: - files: "{{ supported_policy_format_list }}" paths: - "{{ node_custom_config }}/octavia/" skip: true - name: Set octavia policy file set_fact: octavia_policy_file: "{{ octavia_policy.results.0.stat.path | basename }}" octavia_policy_file_path: "{{ octavia_policy.results.0.stat.path }}" when: - octavia_policy.results - name: Copying over existing policy file template: src: "{{ octavia_policy_file_path }}" dest: "{{ node_config_directory }}/{{ item.key }}/{{ octavia_policy_file }}" mode: "0660" become: true when: - octavia_policy_file is defined - inventory_hostname in groups[item.value.group] - item.value.enabled | bool with_dict: "{{ octavia_services }}" notify: - "Restart {{ item.key }} container" - include_tasks: copy-certs.yml when: - kolla_copy_ca_into_containers | bool or octavia_enable_tls_backend | bool - name: Copying over config.json files for services template: src: "{{ item.key }}.json.j2" dest: "{{ node_config_directory }}/{{ item.key }}/config.json" mode: "0660" become: true when: - inventory_hostname in groups[item.value.group] - item.value.enabled | bool with_dict: "{{ octavia_services }}" notify: - "Restart {{ item.key }} container" - name: Copying over octavia-wsgi.conf vars: service: "{{ octavia_services['octavia-api'] }}" become: true template: src: "{{ item }}" dest: "{{ node_config_directory }}/octavia-api/octavia-wsgi.conf" mode: "0660" with_first_found: - "{{ node_custom_config }}/octavia/{{ inventory_hostname }}/octavia-wsgi.conf" - "{{ node_custom_config }}/octavia/octavia-wsgi.conf" - "octavia-wsgi.conf.j2" when: - inventory_hostname in groups[service.group] - service.enabled | bool notify: - Restart octavia-api container - name: Copying over octavia.conf vars: service_name: "{{ item.key }}" merge_configs: sources: - "{{ role_path }}/templates/octavia.conf.j2" - "{{ node_custom_config }}/global.conf" - "{{ node_custom_config }}/octavia.conf" - "{{ node_custom_config }}/octavia/{{ item.key }}.conf" - "{{ node_custom_config }}/octavia/{{ inventory_hostname }}/octavia.conf" dest: "{{ node_config_directory }}/{{ item.key }}/octavia.conf" mode: "0660" become: true when: - inventory_hostname in groups[item.value.group] - item.value.enabled | bool with_dict: "{{ octavia_services }}" notify: - "Restart {{ item.key }} container" - block: - name: Copying over Octavia SSH key copy: content: "{{ octavia_amp_ssh_key.private_key }}" dest: "{{ node_config_directory }}/octavia-worker/{{ octavia_amp_ssh_key_name }}" owner: "{{ config_owner_user }}" group: "{{ config_owner_group }}" mode: "0400" become: True when: - inventory_hostname in groups[octavia_services['octavia-worker']['group']] - octavia_auto_configure | bool - name: Copying certificate files for octavia-worker vars: service: "{{ octavia_services['octavia-worker'] }}" copy: src: "{{ node_custom_config }}/octavia/{{ item }}" dest: "{{ node_config_directory }}/octavia-worker/{{ item }}" mode: "0660" become: true when: - inventory_hostname in groups[service.group] - service.enabled | bool with_items: "{{ octavia_amphora_keys }}" notify: - Restart octavia-worker container - name: Copying certificate files for octavia-housekeeping vars: service: "{{ octavia_services['octavia-housekeeping'] }}" copy: src: "{{ node_custom_config }}/octavia/{{ item }}" dest: "{{ node_config_directory }}/octavia-housekeeping/{{ item }}" mode: "0660" become: true when: - inventory_hostname in groups[service.group] - service.enabled | bool with_items: "{{ octavia_amphora_keys }}" notify: - Restart octavia-housekeeping container - name: Copying certificate files for octavia-health-manager vars: service: "{{ octavia_services['octavia-health-manager'] }}" copy: src: "{{ node_custom_config }}/octavia/{{ item }}" dest: "{{ node_config_directory }}/octavia-health-manager/{{ item }}" mode: "0660" become: true when: - inventory_hostname in groups[service.group] - service.enabled | bool with_items: "{{ octavia_amphora_keys }}" notify: - Restart octavia-health-manager container when: "'amphora' in octavia_provider_drivers" vars: octavia_amphora_keys: - client.cert-and-key.pem - client_ca.cert.pem - server_ca.cert.pem - server_ca.key.pem