Files
Dmitriy Rabotyagov 0a70ad7623 Apply linters autofix to the role
We combine this patch with switch Manila jobs to Noble
in order to resolve the conflict and fix CI for the role.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/948255
Change-Id: Id63a340123f31dc1f214126fe9f702673fb3b3f8
2025-04-30 09:37:51 +02:00

247 lines
8.3 KiB
YAML

---
# Copyright 2019, 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: Gather variables for each operating system
ansible.builtin.include_vars: "{{ lookup('first_found', params) }}"
vars:
params:
files:
- "{{ ansible_facts['distribution'] | lower }}-{{ ansible_facts['distribution_version'] | lower }}.yml"
- "{{ ansible_facts['distribution'] | lower }}-{{ ansible_facts['distribution_major_version'] | lower }}.yml"
- "{{ ansible_facts['os_family'] | lower }}-{{ ansible_facts['distribution_major_version'] | lower }}.yml"
- "{{ ansible_facts['distribution'] | lower }}.yml"
- "{{ ansible_facts['os_family'] | lower }}-{{ ansible_facts['distribution_version'].split('.')[0] }}.yml"
- "{{ ansible_facts['os_family'] | lower }}.yml"
paths:
- "{{ role_path }}/vars"
tags:
- always
- name: Fail if service was deployed using a different installation method
ansible.builtin.fail:
msg: "Switching installation methods for OpenStack services is not supported"
when:
- ansible_local is defined
- ansible_local['openstack_ansible'] is defined
- ansible_local['openstack_ansible']['manila'] is defined
- ansible_local['openstack_ansible']['manila']['install_method'] is defined
- ansible_local['openstack_ansible']['manila']['install_method'] != manila_install_method
- name: Check for rpc password
ansible.builtin.fail:
msg: >-
The optiton "manila_oslomsg_rpc_password" is not defined
when:
- manila_oslomsg_rpc_password is undefined
- name: Check for mysql password
ansible.builtin.fail:
msg: >-
The optiton "manila_container_mysql_password" is not defined
when:
- manila_container_mysql_password is undefined
- name: Check for service password
ansible.builtin.fail:
msg: >-
The optiton "manila_service_password" is not defined
when:
- manila_service_password is undefined
- name: Gather variables for installation method
ansible.builtin.include_vars: "{{ manila_install_method }}_install.yml"
tags:
- always
- name: Importing manila_lvm_config tasks
ansible.builtin.import_tasks: manila_lvm_config.yml
when:
- manila_services['manila-share']['group'] in group_names
- manila_backend_lvm_inuse | bool
tags:
- manila-config
- name: Including osa.db_setup role
ansible.builtin.include_role:
name: openstack.osa.db_setup
apply:
tags:
- common-db
- manila-config
when:
- _manila_is_first_play_host
vars:
_oslodb_setup_host: "{{ manila_db_setup_host }}"
_oslodb_ansible_python_interpreter: "{{ manila_db_setup_python_interpreter }}"
_oslodb_setup_endpoint: "{{ manila_galera_address }}"
_oslodb_setup_port: "{{ manila_galera_port }}"
_oslodb_databases:
- name: "{{ manila_galera_database }}"
users:
- username: "{{ manila_galera_user }}"
password: "{{ manila_container_mysql_password }}"
tags:
- always
- name: Including osa.mq_setup role
ansible.builtin.include_role:
name: openstack.osa.mq_setup
apply:
tags:
- common-mq
- manila-config
when:
- _manila_is_first_play_host
vars:
_oslomsg_rpc_setup_host: "{{ manila_oslomsg_rpc_setup_host }}"
_oslomsg_rpc_userid: "{{ manila_oslomsg_rpc_userid }}"
_oslomsg_rpc_password: "{{ manila_oslomsg_rpc_password }}"
_oslomsg_rpc_vhost: "{{ manila_oslomsg_rpc_vhost }}"
_oslomsg_rpc_transport: "{{ manila_oslomsg_rpc_transport }}"
_oslomsg_rpc_policies: "{{ manila_oslomsg_rpc_policies }}"
_oslomsg_notify_setup_host: "{{ manila_oslomsg_notify_setup_host }}"
_oslomsg_notify_userid: "{{ manila_oslomsg_notify_userid }}"
_oslomsg_notify_password: "{{ manila_oslomsg_notify_password }}"
_oslomsg_notify_vhost: "{{ manila_oslomsg_notify_vhost }}"
_oslomsg_notify_transport: "{{ manila_oslomsg_notify_transport }}"
_oslomsg_notify_policies: "{{ manila_oslomsg_notify_policies }}"
_oslomsg_notify_configure: "{{ manila_oslomsg_notify_configure }}"
tags:
- always
- name: Importing manila_pre_install tasks
ansible.builtin.import_tasks: manila_pre_install.yml
tags:
- manila-install
- name: Importing manila_install tasks
ansible.builtin.import_tasks: manila_install.yml
tags:
- manila-install
- name: Create and install SSL certificates
ansible.builtin.include_role:
name: pki
tasks_from: main_certs.yml
apply:
tags:
- manila-config
- pki
vars:
pki_setup_host: "{{ manila_pki_setup_host }}"
pki_dir: "{{ manila_pki_dir }}"
pki_create_certificates: "{{ manila_user_ssl_cert is not defined and manila_user_ssl_key is not defined }}"
pki_regen_cert: "{{ manila_pki_regen_cert }}"
pki_certificates: "{{ manila_pki_certificates }}"
pki_install_certificates: "{{ manila_pki_install_certificates }}"
when:
- manila_backend_ssl
tags:
- always
- name: Importing manila_post_install tasks
ansible.builtin.import_tasks: manila_post_install.yml
tags:
- manila-config
- post-install
- name: Importing manila_keys tasks
ansible.builtin.import_tasks: manila_keys.yml
when:
- manila_keypair_path is defined
- manila_services['manila-share']['group'] in group_names
tags:
- manila-config
- name: Including manila_db_sync tasks
ansible.builtin.include_tasks: manila_db_sync.yml
when:
- _manila_is_first_play_host
tags:
- manila-config
- name: Import uwsgi role
ansible.builtin.import_role:
name: uwsgi
vars:
uwsgi_services: "{{ uwsgi_manila_services }}"
uwsgi_install_method: "source"
when:
- manila_services['manila-api']['group'] in group_names
tags:
- manila-config
- uwsgi
- name: Importing ceph_client role
ansible.builtin.import_role:
name: ceph_client
vars:
openstack_service_system_user: "{{ manila_system_user_name }}"
openstack_service_venv_bin: "{{ (manila_install_method == 'source') | ternary(manila_bin, '') }}"
when:
- manila_services['manila-share']['group'] in group_names
- manila_backend_rbd_inuse | bool
tags:
- ceph
- name: Including osa.service_setup role
ansible.builtin.include_role:
name: openstack.osa.service_setup
apply:
tags:
- common-service
- manila-config
vars:
_service_adminuri_insecure: "{{ keystone_service_adminuri_insecure }}"
_service_in_ldap: "{{ manila_service_in_ldap }}"
_service_setup_host: "{{ manila_service_setup_host }}"
_service_setup_host_python_interpreter: "{{ manila_service_setup_host_python_interpreter }}"
_service_project_name: "{{ manila_service_project_name }}"
_service_region: "{{ manila_service_region }}"
_service_endpoints: "{{ manila_service_endpoints }}"
_service_users:
- name: "{{ manila_service_user_name }}"
password: "{{ manila_service_password }}"
role: "{{ manila_service_role_names }}"
_service_catalog:
- name: "{{ manila_service_name }}"
type: "{{ manila_service_type }}"
description: "{{ manila_service_description }}"
- name: "{{ manila_service_v2_name }}"
type: "{{ manila_service_v2_type }}"
description: "{{ manila_service_v2_description }}"
when:
- _manila_is_first_play_host
tags:
- always
- name: Flush handlers
ansible.builtin.meta: flush_handlers
- name: Create singular manila_backends variable for all hosts
ansible.builtin.set_fact:
_manila_backends: "{{ (_manila_backends | default(manila_backends)) | combine(hostvars[item]['manila_backends'] | default({})) }}"
with_items: "{{ groups[manila_services['manila-share']['group']] }}"
tags:
- manila-config
- name: Importing manila_backends tasks
ansible.builtin.import_tasks: manila_backends.yml
when:
- groups[manila_services['manila-share']['group']] | length > 0
- _manila_share_is_first_play_host
tags:
- manila-config