From 9c7586c7c3a235672ec6490d1a8bc44a222ce5d1 Mon Sep 17 00:00:00 2001 From: Colin Wilk Date: Tue, 1 Sep 2026 21:01:05 +0200 Subject: Add borg prune and compact jobs Run repository retention either after a successful backup or from a dedicated systemd timer. Clean up script generation with templates and expand molecule test coverage. BREAKING CHANGE: Aggregate backup scripts are no longer managed, and state=preset now requires at least one readable included directory. --- templates/borg_backup_script.j2 | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 templates/borg_backup_script.j2 (limited to 'templates/borg_backup_script.j2') diff --git a/templates/borg_backup_script.j2 b/templates/borg_backup_script.j2 new file mode 100644 index 0000000..0ef22ff --- /dev/null +++ b/templates/borg_backup_script.j2 @@ -0,0 +1,15 @@ +#!/bin/bash +export BORG_PASSPHRASE={{ borg_passphrase | quote }} +{% if borg_ssh_key_per_repo %} +export BORG_RSH="ssh -i {{ borg_ssh_key_path }}" +{% endif %} +borg create \ + -C {{ borg_compression }} \ +{% for excluded_dir in borg_excluded_dirs %} + --exclude {{ excluded_dir | quote }} \ +{% endfor %} +{% if borg_create_additional_arguments %} + {{ borg_create_additional_arguments }} \ +{% endif %} + {{ borg_server_user }}@{{ borg_server_host_url }}:{{ borg_server_user_home }}/{{ borg_repo_name }}::{{ borg_backup_name_format }} \ + {{ borg_included_dirs | map('quote') | join(' ') }} -- cgit v1.2.3