242625dff4
If upgrading the nova, cinder or manila services via 'kolla-ansible upgrade', the Ceph config files are not generated. Users will expect that these files are generated, to pull in any changes from their configuration or the base kolla configuration. This change moves Ceph tasks inside config.yml to ensure that they are performed during deploy, reconfigure and upgrade. This has been done for nova, cinder, gnocchi and manila - glance already does this. Change-Id: Ic75692c2bcba9b81dee922ff6fbbccd160e7fa19 Closes-Bug: #1794275
140 lines
4.4 KiB
YAML
140 lines
4.4 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: "{{ manila_services }}"
|
|
|
|
- include_tasks: ceph.yml
|
|
when:
|
|
- enable_ceph | bool
|
|
- enable_ceph_mds | bool
|
|
- (enable_manila_backend_cephfs_native | bool) or (enable_manila_backend_cephfs_nfs | bool)
|
|
- inventory_hostname in groups['manila-share']
|
|
|
|
- include_tasks: external_ceph.yml
|
|
when:
|
|
- enable_ceph| bool == False
|
|
- enable_ceph_mds| bool == False
|
|
- (enable_manila_backend_cephfs_native | bool) or (enable_manila_backend_cephfs_nfs | bool)
|
|
- inventory_hostname in groups['manila-share']
|
|
|
|
- name: Check if policies shall be overwritten
|
|
local_action: stat path="{{ item }}"
|
|
run_once: True
|
|
register: manila_policy
|
|
with_first_found:
|
|
- files: "{{ supported_policy_format_list }}"
|
|
paths:
|
|
- "{{ node_custom_config }}/manila/"
|
|
skip: true
|
|
|
|
- name: Set manila policy file
|
|
set_fact:
|
|
manila_policy_file: "{{ manila_policy.results.0.stat.path | basename }}"
|
|
manila_policy_file_path: "{{ manila_policy.results.0.stat.path }}"
|
|
when:
|
|
- manila_policy.results
|
|
|
|
- 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: manila_config_jsons
|
|
when:
|
|
- inventory_hostname in groups[item.value.group]
|
|
- item.value.enabled | bool
|
|
with_dict: "{{ manila_services }}"
|
|
notify:
|
|
- "Restart {{ item.key }} container"
|
|
|
|
- name: Copying over manila.conf
|
|
vars:
|
|
service_name: "{{ item.key }}"
|
|
merge_configs:
|
|
sources:
|
|
- "{{ role_path }}/templates/manila.conf.j2"
|
|
- "{{ node_custom_config }}/global.conf"
|
|
- "{{ node_custom_config }}/manila.conf"
|
|
- "{{ node_custom_config }}/manila/{{ item.key }}.conf"
|
|
- "{{ node_custom_config }}/manila/{{ inventory_hostname }}/manila.conf"
|
|
dest: "{{ node_config_directory }}/{{ item.key }}/manila.conf"
|
|
mode: "0660"
|
|
become: true
|
|
register: manila_confs
|
|
when:
|
|
- item.key in [ "manila-api", "manila-data", "manila-scheduler" ]
|
|
- inventory_hostname in groups[item.value.group]
|
|
- item.value.enabled | bool
|
|
with_dict: "{{ manila_services }}"
|
|
notify:
|
|
- Restart manila-api container
|
|
- Restart manila-data container
|
|
- Restart manila-scheduler container
|
|
|
|
- name: Copying over manila-share.conf
|
|
vars:
|
|
service: "{{ manila_services['manila-share'] }}"
|
|
service_name: "{{ item }}"
|
|
merge_configs:
|
|
sources:
|
|
- "{{ role_path }}/templates/manila.conf.j2"
|
|
- "{{ role_path }}/templates/manila-share.conf.j2"
|
|
- "{{ node_custom_config }}/global.conf"
|
|
- "{{ node_custom_config }}/manila.conf"
|
|
- "{{ node_custom_config }}/{{ item }}.conf"
|
|
- "{{ node_custom_config }}/manila/{{ item }}.conf"
|
|
- "{{ node_custom_config }}/manila/{{ inventory_hostname }}/manila.conf"
|
|
dest: "{{ node_config_directory }}/{{ item }}/manila.conf"
|
|
mode: "0660"
|
|
become: true
|
|
register: manila_conf_share
|
|
when:
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
with_items:
|
|
- "manila-share"
|
|
notify:
|
|
- Restart manila-share container
|
|
|
|
- name: Copying over existing policy file
|
|
template:
|
|
src: "{{ manila_policy_file_path }}"
|
|
dest: "{{ node_config_directory }}/{{ item.key }}/{{ manila_policy_file }}"
|
|
register: manila_policy_overwriting
|
|
when:
|
|
- manila_policy_file is defined
|
|
- inventory_hostname in groups[item.value.group]
|
|
- item.value.enabled | bool
|
|
with_dict: "{{ manila_services }}"
|
|
notify:
|
|
- "Restart {{ item.key }} container"
|
|
|
|
- name: Check manila containers
|
|
become: true
|
|
kolla_docker:
|
|
action: "compare_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ item.value.container_name }}"
|
|
image: "{{ item.value.image }}"
|
|
privileged: "{{ item.value.privileged|default(False) }}"
|
|
volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
|
|
dimensions: "{{ item.value.dimensions }}"
|
|
register: check_manila_containers
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[item.value.group]
|
|
- item.value.enabled | bool
|
|
with_dict: "{{ manila_services }}"
|
|
notify:
|
|
- "Restart {{ item.key }} container"
|