ansible-roles/percona/tasks/main.yml

74 lines
2.0 KiB
YAML

---
- ansible.builtin.set_fact:
percona__apt_config_package_file: "percona-release_latest.{{ ansible_distribution_release }}_all.deb"
- name: Look for legacy apt keyring
ansible.builtin.stat:
path: /etc/apt/trusted.gpg
register: _trusted_gpg_keyring
- name: Percona embedded GPG key is absent
ansible.builtin.apt_key:
id: "8507EFA5"
keyring: /etc/apt/trusted.gpg
state: absent
when: _trusted_gpg_keyring.stat.exists
- name: "Ensure {{ apt_keyring_dir }} directory exists"
file:
path: "{{ apt_keyring_dir }}"
state: directory
mode: "755"
owner: root
group: root
- name: Add Percona GPG key
ansible.builtin.copy:
src: percona.asc
dest: "{{ apt_keyring_dir }}/percona.asc"
force: true
mode: "0644"
owner: root
group: root
- name: Check if percona-release is installed
ansible.builtin.shell:
cmd: "set -o pipefail && dpkg -l percona-release 2>/dev/null | grep -q -E '^(i|h)i'"
executable: /bin/bash
check_mode: no
failed_when: False
changed_when: False
register: percona__apt_config_package_installed
- name: Percona APT config package is available
ansible.builtin.copy:
src: "{{ percona__apt_config_package_file }}"
dest: "/root/{{ percona__apt_config_package_file }}"
when: not (percona__apt_config_package_installed | bool)
# - include_role:
# name: evolix/remount-usr
- name: Percona APT config package is installed from deb file
ansible.builtin.apt:
deb: "/root/{{ percona__apt_config_package_file }}"
state: present
register: percona__apt_config_deb
when: not (percona__apt_config_package_installed | bool)
- name: Percona APT config package is installed from repository
ansible.builtin.apt:
name: percona-release
state: latest
register: percona__apt_config_deb
when: percona__apt_config_package_installed | bool
- name: APT cache is up-to-date
ansible.builtin.apt:
update_cache: yes
when: percona__apt_config_deb is changed
- ansible.builtin.include: xtrabackup.yml
when: percona__install_xtrabackup | bool