6a25236b25
With update of ansible-lint to version >=6.0.0 a lot of new linters were added, that enabled by default. In order to comply with linter rules we're applying changes to the role. With that we also update metdata to reflect current state. Depends-On: https://review.opendev.org/c/openstack/ansible-role-systemd_service/+/888223 Change-Id: I9110294e492a501204c8e92448a2f2929781a509
243 lines
7.7 KiB
YAML
243 lines
7.7 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
|
|
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
|
|
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
|
|
fail:
|
|
msg: >-
|
|
The optiton "manila_oslomsg_rpc_password" is not defined
|
|
when:
|
|
- manila_oslomsg_rpc_password is undefined
|
|
|
|
- name: Check for mysql password
|
|
fail:
|
|
msg: >-
|
|
The optiton "manila_container_mysql_password" is not defined
|
|
when:
|
|
- manila_container_mysql_password is undefined
|
|
|
|
- name: Check for service password
|
|
fail:
|
|
msg: >-
|
|
The optiton "manila_service_password" is not defined
|
|
when:
|
|
- manila_service_password is undefined
|
|
|
|
- name: Gather variables for installation method
|
|
include_vars: "{{ manila_install_method }}_install.yml"
|
|
tags:
|
|
- always
|
|
|
|
- name: Importing manila_lvm_config tasks
|
|
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
|
|
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
|
|
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_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 }}"
|
|
tags:
|
|
- always
|
|
|
|
- name: Importing manila_pre_install tasks
|
|
import_tasks: manila_pre_install.yml
|
|
tags:
|
|
- manila-install
|
|
|
|
- name: Importing manila_install tasks
|
|
import_tasks: manila_install.yml
|
|
tags:
|
|
- manila-install
|
|
|
|
- name: Create and install SSL certificates
|
|
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
|
|
import_tasks: manila_post_install.yml
|
|
tags:
|
|
- manila-config
|
|
|
|
- name: Importing manila_keys tasks
|
|
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
|
|
include_tasks: manila_db_sync.yml
|
|
when:
|
|
- _manila_is_first_play_host
|
|
tags:
|
|
- manila-config
|
|
|
|
- name: Import uwsgi role
|
|
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
|
|
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
|
|
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
|
|
meta: flush_handlers
|
|
|
|
- name: Create singular manila_backends variable for all hosts
|
|
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
|
|
import_tasks: manila_backends.yml
|
|
when:
|
|
- groups[manila_services['manila-share']['group']] | length > 0
|
|
- _manila_share_is_first_play_host
|
|
tags:
|
|
- manila-config
|