1. Don't automount disks (dconf changes) this breaks backups 2. Rewrite the entire backup script to handle mounting, decrypting, many use cases, etc 3. Update main.yaml to not create mount location for backup drive, script will handle it
36 lines
843 B
YAML
36 lines
843 B
YAML
---
|
|
# Backup
|
|
- name: Ensure snapshot directory
|
|
file:
|
|
state: directory
|
|
path: "{{ snapshots.path }}"
|
|
become: yes
|
|
- name: Ensure /usr/local/scripts exists
|
|
file:
|
|
state: directory
|
|
path: '/usr/local/scripts'
|
|
become: yes
|
|
- name: Template btrfs_backup.sh
|
|
ansible.builtin.template:
|
|
src: btrfs_backup.sh.j2
|
|
dest: /usr/local/scripts/btrfs_backup.sh
|
|
owner: root
|
|
group: root
|
|
mode: '0744'
|
|
become: yes
|
|
- name: Ensure hourly backups of each item in backups
|
|
ansible.builtin.cron:
|
|
name: "hourly backup of {{ item }}"
|
|
minute: "0"
|
|
job: "export SOURCE_DIR={{ item }}; /usr/local/scripts/btrfs_backup.sh"
|
|
become: yes
|
|
loop: "{{ backups }}"
|
|
- name: Ensure cronie service started
|
|
ansible.builtin.systemd:
|
|
name: cronie
|
|
state: restarted
|
|
daemon_reload: yes
|
|
enabled: yes
|
|
become: yes
|
|
|