Files
ansible/tasks/borgmatic.yml
T
Bart Sjerps d07ca7a3ad updates
2026-06-28 16:39:16 +02:00

56 lines
1.1 KiB
YAML

---
- name: Install packages
ansible.builtin.package:
name: "borgmatic"
state: present
- name: Deploy borgmatic config
template:
src: templates/borgmatic-system.yaml
dest: /etc/borgmatic.d/system.yaml
owner: root
group: root
mode: '0644'
- name: Deploy borgmatic excludes
template:
src: templates/borgmatic-excludes
dest: /etc/borgmatic/excludes
owner: root
group: root
mode: '0644'
- name: SSH Keypair
openssh_keypair:
path: /etc/borgmatic/borg_key
owner: root
group: root
- name: Get SSH key
slurp:
src: /etc/borgmatic/borg_key.pub
register: remote_key
- name: Deploy borgmatic authorized_key
template:
src: templates/borgmatic-auth-key
dest: /etc/borgmatic/authorized_keys
owner: root
group: root
mode: '0644'
vars:
included_content: "{{ remote_key.content | b64decode }}"
- name: Pickup authorized_key
fetch:
src: /etc/borgmatic/authorized_keys
dest: authorized_keys/{{ ansible_fqdn }}
flat: yes
- name: Setup Backup Cron Job
ansible.builtin.cron:
name: "borgmatic"
minute: 0
hour: 1
job: /usr/bin/borgmatic