Ansible/playbooks/install_borgbackup.yml
2024-02-10 12:45:22 +01:00

36 lines
1.0 KiB
YAML

---
- hosts: all
become: yes
vars:
borg_repo_path: "/var/backups/backup.borg/"
borg_repo_encryption: "none"
borg_script_install_path: "/opt/borgbackup.sh"
borg_backup_paths: "/"
borg_exclude_paths: "--exclude={{borg_repo_path}} --exclude=*.log --exclude=*.log.gz --exclude=/proc/ --exclude=/dev/ --exclude=/run/ --exclude=/sys/ --exclude=/tmp/"
tasks:
- name: "Install borg backup"
apt:
name: borgbackup
state: latest
- name: "Create backup repository"
ansible.builtin.command: borg init -e {{borg_repo_encryption}} {{borg_repo_path}}
args:
creates: "{{borg_repo_path}}"
- name: "Configure backup script"
ansible.builtin.template:
src: ../templates/borgbackup.j2
dest: "{{borg_script_install_path}}"
owner: root
group: root
mode: '744'
- name: "Configure cronjob"
ansible.builtin.cron:
name: "Borg backup"
minute: "0"
hour: "1"
job: "{{borg_script_install_path}}"