vps/roles/uptime-kuma/tasks/backup.yml

36 lines
1.1 KiB
YAML

- name:
become: true
block:
- name: Backup SQLite database
command:
cmd: |
sqlite3
"{{ volumes['uptime_kuma_datadir'] }}/kuma.db"
".backup {{ volumes['uptime_kuma_datadir'] }}/kuma-backup.db"
- name: Create borg backup
command:
cmd: |
borg create
--compression=lzma
"{{ borg_repodir }}::{{ role_name }}-{now:%Y-%m-%d_%H-%M-%S}"
{{ volumes['uptime_kuma_datadir'] }}/kuma-backup.db
environment:
BORG_PASSCOMMAND: "cat {{ borg_passphrase_file }}"
# The kuma-backup.db file is owned by root which causes
# users['uptime_kuma'] to try to take ownership when it cannot.
- name: Delete temporary backup file
file:
path: "{{ volumes['uptime_kuma_datadir'] }}/kuma-backup.db"
state: absent
- name: Prune borg repository
command:
cmd: |
borg prune
--glob-archives='{{ role_name }}-*'
{{ borg_prune_options }}
{{ borg_repodir }}
environment:
BORG_PASSCOMMAND: "cat {{ borg_passphrase_file }}"