playbooks/minio backup.yml

31 lines
1.1 KiB
YAML
Raw Normal View History

2025-02-10 13:30:40 +03:30
- name: Backup MongoDB Databases
hosts: all
become: yes
tasks:
- name: Process each item
2025-02-10 13:45:21 +03:30
block:
2025-02-10 13:30:40 +03:30
- name: Export data
command: "s3cmd sync --preserve --config {{ config }} s3://{{ item }} {{ backup_dir }}"
- name: Create tar archive
2025-02-10 13:33:00 +03:30
command: >
tar -czf "{{ backup_dir }}/{{server}}-{{service}}-{{ item }}.tar.gz" -C "{{ backup_dir }}" "{{ item }}"
2025-02-10 13:30:40 +03:30
- name: Delete backed-up directories
file:
path: "{{ backup_dir }}/{{ item }}"
state: absent
- name: Get the current weekday
shell: date +%a
register: weekday
changed_when: false
- name: send them to s3
command: >
s3cmd put {{ backup_dir }}/{{server}}-{{service}}-{{ item }}.tar.gz
{{ s3_folder }}/{{ weekday.stdout }}/{{server}}-{{service}}-{{ item }}.tar.gz
- name: Delete backed-up files
file:
path: "{{ backup_dir }}/{{server}}-{{service}}-{{ item }}.tar.gz"
2025-02-10 13:45:21 +03:30
state: absent
when: item is defined
loop: '{{ buckets }}'
loop_control:
loop_var: item