- name: Install dependencies for Arch package: name: "{{ item }}" loop: - perl - perl-capture-tiny - perl-config-inifiles - pv - lzop when: ansible_os_family == 'Archlinux' become: true - 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 - name: Download git: repo: https://github.com/jimsalterjrs/sanoid.git dest: /opt/sanoid version: v2.1.0 become: true - name: Create config directory file: path: /etc/sanoid state: directory mode: "0755" 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/sbin/{{ item }} state: link loop: - sanoid - syncoid - findoid - sleepymutex become: true - name: Install config template: src: files/sanoid.conf dest: /etc/sanoid/sanoid.conf mode: "0755" become: true - name: Install systemd services file: src: /opt/sanoid/packages/debian/{{ item }} dest: /lib/systemd/system/{{ item }} state: link loop: "{{ sanoid_services }}" become: true - name: Enable systemd services systemd: name: "{{ item }}" enabled: true masked: false loop: "{{ sanoid_services }}" become: true - name: Start sanoid timer systemd: name: sanoid.timer state: started become: true