2020-08-19 18:40:17 +01:00
|
|
|
- name: Install dependencies for Arch
|
2020-07-26 18:03:09 +01:00
|
|
|
package:
|
2020-08-19 21:34:23 +01:00
|
|
|
name: "{{ item }}"
|
2020-08-19 18:40:17 +01:00
|
|
|
loop:
|
|
|
|
- perl
|
|
|
|
- perl-capture-tiny
|
|
|
|
- perl-config-inifiles
|
|
|
|
- pv
|
|
|
|
- lzop
|
|
|
|
when: ansible_os_family == 'Archlinux'
|
2020-07-26 18:03:09 +01:00
|
|
|
become: true
|
2020-08-19 21:34:23 +01:00
|
|
|
|
|
|
|
- name: Install dependencies for Debian-based distros
|
|
|
|
package:
|
|
|
|
name: "{{ item }}"
|
|
|
|
loop:
|
|
|
|
- libcapture-tiny-perl
|
|
|
|
- libconfig-inifiles-perl
|
|
|
|
- pv
|
|
|
|
- lzop
|
|
|
|
- mbuffer
|
|
|
|
when: ansible_os_family == 'Debian'
|
|
|
|
become: true
|
2020-07-26 18:03:09 +01:00
|
|
|
|
2020-08-19 18:40:17 +01:00
|
|
|
- name: Download
|
|
|
|
git:
|
|
|
|
repo: https://github.com/jimsalterjrs/sanoid.git
|
|
|
|
dest: /opt/sanoid
|
|
|
|
version: v2.0.3
|
|
|
|
become: true
|
|
|
|
|
|
|
|
- name: Create config directory
|
|
|
|
file:
|
|
|
|
path: /etc/sanoid
|
|
|
|
state: directory
|
|
|
|
become: true
|
|
|
|
|
|
|
|
- name: Install default config
|
|
|
|
file:
|
|
|
|
src: /opt/sanoid/sanoid.defaults.conf
|
|
|
|
dest: /etc/sanoid/sanoid.defaults.conf
|
|
|
|
state: link
|
|
|
|
become: true
|
|
|
|
|
|
|
|
- name: Install executables
|
|
|
|
file:
|
|
|
|
src: /opt/sanoid/{{ item }}
|
|
|
|
dest: /usr/local/sbin/{{ item }}
|
|
|
|
state: link
|
|
|
|
loop:
|
|
|
|
- sanoid
|
|
|
|
- syncoid
|
|
|
|
- findoid
|
|
|
|
- sleepymutex
|
|
|
|
become: true
|
|
|
|
|
|
|
|
- name: Install config
|
2020-07-26 18:03:09 +01:00
|
|
|
template:
|
|
|
|
src: files/sanoid.conf
|
|
|
|
dest: /etc/sanoid/sanoid.conf
|
|
|
|
become: true
|
|
|
|
|
2020-08-19 18:40:17 +01:00
|
|
|
- name: Install snapshot job
|
|
|
|
cron:
|
|
|
|
name: sanoid snapshot
|
|
|
|
special_time: hourly
|
2020-08-20 21:24:33 +01:00
|
|
|
job: TZ=UTC /usr/local/sbin/sanoid --take-snapshots --verbose
|
2020-08-19 18:40:17 +01:00
|
|
|
become: true
|
|
|
|
|
|
|
|
- name: Install prune job
|
2020-07-26 18:03:09 +01:00
|
|
|
cron:
|
2020-08-19 18:40:17 +01:00
|
|
|
name: sanoid prune
|
2020-07-26 18:03:09 +01:00
|
|
|
special_time: hourly
|
2020-08-20 21:24:33 +01:00
|
|
|
job: TZ=UTC /usr/local/sbin/sanoid --prune-snapshots --verbose
|
2020-08-17 22:29:02 +01:00
|
|
|
become: true
|