openstack-ansible-os_manila/tasks/manila_install.yml
Dmitriy Rabotyagov 6a25236b25 Fix linters and metadata
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
2023-07-14 18:49:03 +02:00

106 lines
3.5 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: Record the installation method
ini_file:
dest: "/etc/ansible/facts.d/openstack_ansible.fact"
section: "manila"
option: "install_method"
value: "{{ manila_install_method }}"
mode: "0644"
- name: Refresh local facts to ensure the manila section is present
setup:
filter: ansible_local
gather_subset: "!all"
- name: Install distro packages
package:
name: "{{ manila_package_list }}"
state: "{{ manila_package_state }}"
update_cache: "{{ (ansible_facts['pkg_mgr'] == 'apt') | ternary('yes', omit) }}"
cache_valid_time: "{{ (ansible_facts['pkg_mgr'] == 'apt') | ternary(cache_timeout, omit) }}"
register: install_packages
until: install_packages is success
retries: 5
delay: 2
- name: Install the python venv
include_role:
name: "python_venv_build"
vars:
venv_python_executable: "{{ manila_venv_python_executable }}"
venv_build_constraints: "{{ manila_git_constraints }}"
venv_build_distro_package_list: "{{ manila_devel_distro_packages }}"
venv_install_destination_path: "{{ manila_bin | dirname }}"
venv_pip_install_args: "{{ manila_pip_install_args }}"
venv_pip_packages: >-
{{ manila_pip_packages |
union(manila_user_pip_packages) |
union(((manila_oslomsg_amqp1_enabled | bool) | ternary(manila_optional_oslomsg_amqp1_pip_packages, []))) }}
venv_facts_when_changed:
- section: "manila"
option: "venv_tag"
value: "{{ manila_venv_tag }}"
when: manila_install_method == 'source'
- name: Run the systemd service role
include_role:
name: systemd_service
vars:
systemd_user_name: "{{ manila_system_user_name }}"
systemd_group_name: "{{ manila_system_group_name }}"
systemd_tempd_prefix: openstack
systemd_slice_name: "{{ manila_system_slice_name }}"
systemd_lock_dir: "{{ manila_lock_dir }}"
systemd_service_cpu_accounting: true
systemd_service_block_io_accounting: true
systemd_service_memory_accounting: true
systemd_service_tasks_accounting: true
systemd_services: |-
{% set services = [] %}
{% for service in filtered_manila_services %}
{%
set _ = service.update(
{
'enabled': 'yes',
'state': 'started',
'config_overrides': service.init_config_overrides
}
)
%}
{% set _ = service.pop('init_config_overrides') -%}
{% set _ = services.append(service) -%}
{% endfor %}
{{ services }}
tags:
- manila-config
- systemd-service
- name: Set the upgrade facts
ini_file:
dest: "/etc/ansible/facts.d/openstack_ansible.fact"
section: manila
option: "{{ item }}"
value: true
mode: "0644"
with_items:
- "need_online_data_migrations"
- "need_service_restart"
when:
- (install_packages is changed) or
('need_online_data_migrations' not in ansible_local['openstack_ansible']['manila']) or
('need_service_restart' not in ansible_local['openstack_ansible']['manila'])