74 lines
2.0 KiB
YAML
74 lines
2.0 KiB
YAML
|
- name: Check if restic is insalled
|
||
|
stat:
|
||
|
path: /usr/local/bin/restic
|
||
|
register: restic_path
|
||
|
|
||
|
- block:
|
||
|
- name: Download restic binary
|
||
|
get_url:
|
||
|
url: https://github.com/restic/restic/releases/download/v0.14.0/restic_0.14.0_linux_amd64.bz2
|
||
|
dest: /usr/local/bin/restic.bz2
|
||
|
mode: 0644
|
||
|
|
||
|
- name: Unpack restic binary
|
||
|
command: bunzip2 /usr/local/bin/restic.bz2
|
||
|
|
||
|
when:
|
||
|
not restic_path.stat.exists
|
||
|
|
||
|
- name: Ensure restic is executable
|
||
|
file:
|
||
|
path: /usr/local/bin/restic
|
||
|
mode: 0755
|
||
|
|
||
|
- name: Create scaleway key file
|
||
|
template:
|
||
|
src: ./filesystem/{{ ansible_hostname }}/etc/scaleway.keys.j2
|
||
|
dest: /etc/scaleway.keys
|
||
|
mode: 0600
|
||
|
|
||
|
- name: Create restic password file
|
||
|
template:
|
||
|
src: ./filesystem/{{ ansible_hostname }}/etc/restic.password.j2
|
||
|
dest: /etc/restic.password
|
||
|
mode: 0600
|
||
|
|
||
|
- name: Create a cache directory for restic
|
||
|
file:
|
||
|
path: /var/cache/restic
|
||
|
state: directory
|
||
|
mode: 0755
|
||
|
|
||
|
- name: Install the restic backup script
|
||
|
template:
|
||
|
src: ./filesystem/{{ ansible_hostname }}/usr/local/sbin/restic-service-data.j2
|
||
|
dest: /usr/local/sbin/restic-service-data
|
||
|
mode: 0755
|
||
|
|
||
|
- name: Install the restic backup service file
|
||
|
template:
|
||
|
src: ./filesystem/{{ ansible_hostname }}/etc/systemd/system/restic-service-data.service.j2
|
||
|
dest: /etc/systemd/system/restic-service-data.service
|
||
|
mode: 0644
|
||
|
register: systemd_restic_service_data_service_file
|
||
|
|
||
|
- name: Install the restic backup timer file
|
||
|
copy:
|
||
|
src: ./filesystem/{{ ansible_hostname }}/etc/systemd/system/restic-service-data.timer
|
||
|
dest: /etc/systemd/system/restic-service-data.timer
|
||
|
mode: 0644
|
||
|
register: systemd_restic_service_data_timer_file
|
||
|
|
||
|
- name: SystemD daemon reload
|
||
|
systemd:
|
||
|
daemon_reload: true
|
||
|
when:
|
||
|
systemd_restic_service_data_service_file is changed or
|
||
|
systemd_restic_service_data_timer_file is changed
|
||
|
|
||
|
- name: Enable restic backup
|
||
|
systemd:
|
||
|
name: restic-service-data.timer
|
||
|
enabled: yes
|
||
|
state: started
|