diff --git a/README.md b/README.md index f22c5c3..3ab7404 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,14 @@ host\_vars\client1: borgbackup_passphrase: Ahl9EiNohr5koosh1Wohs3Shoo3ooZ6p ``` +Per default the role creates a cronjob in /etc/cron.d/borg-backup running as root every day on a random hour between 0 and 5am on a random minute. Override the defaults if necessary: +``` +borgbackup_cron_user: root +borgbackup_cron_day: "*" +borgbackup_cron_hour: "{{ 59|random }}" +borgbackup_cron_minute: "{{ 5|random }}" +``` + Set borgbackup\_appendonly: True in host or group vars if you want append-only repositories. In that case it's possible to define a hostname in borgbackup\_management\_station where a borg prune script will be configured. *Make sure to check the configured defaults for this role, which contains the list of default locations being backed up in backup_include.* Override this in your inventory where required. diff --git a/defaults/main.yml b/defaults/main.yml index a2589ac..aaee5a7 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -22,6 +22,11 @@ borgbackup_retention: monthly: 6 yearly: 1 +borgbackup_cron_user: root +borgbackup_cron_day: "*" +borgbackup_cron_hour: "{{ 59|random }}" +borgbackup_cron_minute: "{{ 5|random }}" + borgbackup_appendonly: False borgbackup_management_station: '' borgbackup_management_user: '' diff --git a/tasks/borg-client.yml b/tasks/borg-client.yml index 7227a77..6dc27ee 100644 --- a/tasks/borg-client.yml +++ b/tasks/borg-client.yml @@ -89,10 +89,11 @@ - name: client | create backup cronjob cron: cron_file: "borg-backup" - user: "root" + user: "{{ borgbackup_cron_user }}" name: "borg-backup" - minute: "{{ 59|random }}" - hour: "{{ 5|random }}" + minute: "{{ borgbackup_cron_minute }}" + hour: "{{ borgbackup_cron_hour }}" + day: "{{ borgbackup_cron_day }}" job: "/usr/local/bin/borg-backup backup" - name: client | disable automysqlbackup cronjob, it's in our pre-backup-tasks