2023-04-08 23:02:47 +02:00
|
|
|
---
|
2023-04-08 23:08:58 +02:00
|
|
|
- name: "Borg | Copy borgmatic configuration"
|
2023-04-08 23:02:47 +02:00
|
|
|
ansible.builtin.template:
|
|
|
|
src: config.yaml.j2
|
|
|
|
dest: "/etc/borgmatic/{{ borgmatic_config_name }}"
|
|
|
|
mode: "0600"
|
|
|
|
|
2023-04-08 23:08:58 +02:00
|
|
|
- name: "Borg | Add borgmatic cron job"
|
2023-04-08 23:02:47 +02:00
|
|
|
ansible.builtin.cron:
|
|
|
|
name: "{{ borgmatic_timer_cron_name }}"
|
|
|
|
hour: "{{ borgmatic_timer_hour }}"
|
|
|
|
minute: "{{ borgmatic_timer_minute }}"
|
|
|
|
user: "{{ borg_user }}"
|
|
|
|
cron_file: "{{ borgmatic_timer_cron_name }}"
|
|
|
|
job: "borgmatic -c /etc/borgmatic/{{ borgmatic_config_name }}"
|
|
|
|
|
2023-04-08 23:08:58 +02:00
|
|
|
- name: "Borg | Init borg repository"
|
2023-04-08 23:02:47 +02:00
|
|
|
ansible.builtin.expect:
|
|
|
|
command: "borgmatic init -e {{ borg_repo_key }}"
|
|
|
|
responses:
|
|
|
|
^.*want to continue connecting.*$: "yes"
|
|
|
|
|
2023-04-08 23:08:58 +02:00
|
|
|
- name: "Borg | Create backup"
|
2023-04-08 23:02:47 +02:00
|
|
|
ansible.builtin.command:
|
|
|
|
cmd: "borgmatic -c /etc/borgmatic/{{ borgmatic_config_name }}"
|
|
|
|
|
2023-04-08 23:08:58 +02:00
|
|
|
- name: "Borg | Export repo key"
|
2023-04-08 23:02:47 +02:00
|
|
|
ansible.builtin.command:
|
2023-04-08 23:08:58 +02:00
|
|
|
cmd: "borg key export {{ item }}"
|
2023-04-08 23:02:47 +02:00
|
|
|
loop: "{{ borg_repository }}"
|
2023-04-08 23:08:58 +02:00
|
|
|
register: repo_key_export
|
|
|
|
|
|
|
|
- name: "Borg | Save repo key to localhost"
|
|
|
|
ansible.builtin.copy:
|
|
|
|
content: "{{ repo_key_export.stdout }}"
|
|
|
|
dest: "{{ borg_key_export_path }}"
|
2023-04-08 23:02:47 +02:00
|
|
|
delegate_to: localhost
|