38 lines
1.2 KiB
Django/Jinja
38 lines
1.2 KiB
Django/Jinja
repositories:
|
|
- path: {{ borg_repo }}
|
|
label: storagebox
|
|
|
|
source_directories:
|
|
{% for path in backup_sources %}
|
|
- {{ path }}
|
|
{% endfor %}
|
|
|
|
ssh_command: ssh -i {{ borg_ssh_key }}
|
|
remote_path: {{ borg_remote_path }}
|
|
encryption_passphrase: "{{ borg_passphrase }}"
|
|
compression: {{ borg_compression }}
|
|
archive_name_format: '{{ inventory_hostname }}-{now:%Y-%m-%d_%H-%M}'
|
|
|
|
keep_daily: {{ borg_retention_daily }}
|
|
keep_weekly: {{ borg_retention_weekly }}
|
|
keep_monthly: {{ borg_retention_monthly }}
|
|
|
|
checks:
|
|
- name: repository
|
|
frequency: 2 weeks
|
|
- name: archives
|
|
frequency: 4 weeks
|
|
|
|
before_backup:
|
|
- echo "[$(date)] Starte Backup auf {{ inventory_hostname }}"
|
|
|
|
after_backup:
|
|
- curl -fsS -m 10 "https://status.guck.tv/api/push/borg-{{ inventory_hostname }}?status=up&msg=OK&ping=" || true
|
|
- /usr/local/bin/borg-sentinel-push --host {{ inventory_hostname }} || true
|
|
|
|
on_error:
|
|
- curl -fsS -m 10 "https://status.guck.tv/api/push/borg-{{ inventory_hostname }}?status=down&msg=FEHLER&ping=" || true
|
|
- >-
|
|
curl -fsS -m 10 -X POST -H "Content-Type: application/json"
|
|
-d '{"host":"{{ inventory_hostname }}","status":"error","message":"Backup fehlgeschlagen"}'
|
|
"http://10.1.1.111:9999/api/push" || true
|