mirror of
https://github.com/kubernetes-sigs/kubespray.git
synced 2025-12-13 21:34:40 +03:00
* project: update all dependencies including ansible Upgrade to ansible 7.x and ansible-core 2.14.x. There seems to be issue with ansible 8/ansible-core 2.15 so we remain on those versions for now. It's quite a big bump already anyway. Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * tests: install aws galaxy collection Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * ansible-lint: disable various rules after ansible upgrade Temporarily disable a bunch of linting action following ansible upgrade. Those should be taken care of separately. Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve deprecated-module ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve no-free-form ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve schema[meta] ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve schema[playbook] ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve schema[tasks] ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve risky-file-permissions ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve risky-shell-pipe ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: remove deprecated warn args Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: use fqcn for non builtin tasks Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve syntax-check[missing-file] for contrib playbook Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: use arithmetic inside jinja to fix ansible 6 upgrade Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> --------- Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch>
64 lines
1.7 KiB
YAML
64 lines
1.7 KiB
YAML
---
|
|
- name: Backup etcd data
|
|
command: /bin/true
|
|
notify:
|
|
- Refresh Time Fact
|
|
- Set Backup Directory
|
|
- Create Backup Directory
|
|
- Stat etcd v2 data directory
|
|
- Backup etcd v2 data
|
|
- Backup etcd v3 data
|
|
when: etcd_cluster_is_healthy.rc == 0
|
|
|
|
- name: Refresh Time Fact
|
|
setup:
|
|
filter: ansible_date_time
|
|
|
|
- name: Set Backup Directory
|
|
set_fact:
|
|
etcd_backup_directory: "{{ etcd_backup_prefix }}/etcd-{{ ansible_date_time.date }}_{{ ansible_date_time.time }}"
|
|
|
|
- name: Create Backup Directory
|
|
file:
|
|
path: "{{ etcd_backup_directory }}"
|
|
state: directory
|
|
owner: root
|
|
group: root
|
|
mode: 0600
|
|
|
|
- name: Stat etcd v2 data directory
|
|
stat:
|
|
path: "{{ etcd_data_dir }}/member"
|
|
get_attributes: no
|
|
get_checksum: no
|
|
get_mime: no
|
|
register: etcd_data_dir_member
|
|
|
|
- name: Backup etcd v2 data
|
|
when: etcd_data_dir_member.stat.exists
|
|
command: >-
|
|
{{ bin_dir }}/etcdctl backup
|
|
--data-dir {{ etcd_data_dir }}
|
|
--backup-dir {{ etcd_backup_directory }}
|
|
environment:
|
|
ETCDCTL_API: "2"
|
|
retries: 3
|
|
register: backup_v2_command
|
|
until: backup_v2_command.rc == 0
|
|
delay: "{{ retry_stagger | random + 3 }}"
|
|
|
|
- name: Backup etcd v3 data
|
|
command: >-
|
|
{{ bin_dir }}/etcdctl
|
|
snapshot save {{ etcd_backup_directory }}/snapshot.db
|
|
environment:
|
|
ETCDCTL_API: "3"
|
|
ETCDCTL_ENDPOINTS: "{{ etcd_access_addresses.split(',') | first }}"
|
|
ETCDCTL_CERT: "{{ etcd_cert_dir }}/admin-{{ inventory_hostname }}.pem"
|
|
ETCDCTL_KEY: "{{ etcd_cert_dir }}/admin-{{ inventory_hostname }}-key.pem"
|
|
ETCDCTL_CACERT: "{{ etcd_cert_dir }}/ca.pem"
|
|
retries: 3
|
|
register: etcd_backup_v3_command
|
|
until: etcd_backup_v3_command.rc == 0
|
|
delay: "{{ retry_stagger | random + 3 }}"
|