kolla-ansible/ansible/roles/octavia/tasks/config.yml
Mark Goddard a4bb8567da Fix up config file permissions on the host
Several config file permissions are incorrect on the host. In general,
files should be 0660, and directories and executables 0770.

Change-Id: Id276ac1864f280554e98b937f2845bb424d521de
Closes-Bug: #1821579
2019-04-02 17:23:31 +01:00

156 lines
4.5 KiB
YAML

---
- 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
local_action: stat path="{{ item }}"
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
register: octavia_policy_overwriting
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"
- 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
register: octavia_config_jsons
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.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
register: octavia_confs
when:
- inventory_hostname in groups[item.value.group]
- item.value.enabled | bool
with_dict: "{{ octavia_services }}"
notify:
- "Restart {{ item.key }} container"
- 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
register: octavia_worker_certificate
when:
- inventory_hostname in groups[service.group]
- service.enabled | bool
with_items:
- cakey.pem
- ca_01.pem
- client.pem
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
register: octavia_housekeeping_certificate
when:
- inventory_hostname in groups[service.group]
- service.enabled | bool
with_items:
- cakey.pem
- ca_01.pem
- client.pem
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
register: octavia_health_manager_certificate
when:
- inventory_hostname in groups[service.group]
- service.enabled | bool
with_items:
- cakey.pem
- ca_01.pem
- client.pem
notify:
- Restart octavia-health-manager container
- name: Check octavia containers
become: true
kolla_docker:
action: "compare_container"
common_options: "{{ docker_common_options }}"
name: "{{ item.value.container_name }}"
image: "{{ item.value.image }}"
volumes: "{{ item.value.volumes }}"
dimensions: "{{ item.value.dimensions }}"
register: check_octavia_containers
when:
- kolla_action != "config"
- inventory_hostname in groups[item.value.group]
- item.value.enabled | bool
with_dict: "{{ octavia_services }}"
notify:
- "Restart {{ item.key }} container"