--- - name: include user tasks ansible.builtin.include_tasks: user.yml - name: install packages from repo become: true ansible.builtin.apt: name: - mbuffer - lzop - libcapture-tiny-perl - pv - libconfig-ini-perl - sanoid state: present - name: Overwrite syncoid script from package # todo become: true ansible.builtin.file: dest: /usr/bin/syncoid mode: '0755' owner: root group: root state: absent - name: create sanoid directories become: true ansible.builtin.file: path: "{{ item }}" state: directory owner: "{{ sanoid_user }}" group: "{{ sanoid_user_group }}" mode: "0700" with_items: - "/etc/sanoid" - "/etc/sanoid/.ssh" - name: include snaps tasks ansible.builtin.include_tasks: snaps.yml when: - sanoid_datasets is defined - sanoid_templates is defined - sanoid_snaps_enable is defined - sanoid_snaps_enable - name: ensure timers are enabled become: true ansible.builtin.systemd: state: started name: "{{ item }}" daemon_reload: true masked: false enabled: true loop: - sanoid.timer - name: ensure services are enabled become: true ansible.builtin.systemd: name: "{{ item }}" masked: false enabled: true loop: - sanoid.service - sanoid-prune.service - name: include source-host tasks # todo ansible.builtin.include_tasks: source.yml when: - sanoid_syncoid_source_host is defined and sanoid_syncoid_source_host is true - sanoid_syncoid_ssh_pubkey is defined - name: include destination-host tasks # todo ansible.builtin.include_tasks: destination.yml when: - sanoid_syncoid_destination_host is defined and sanoid_syncoid_destination_host is true - sanoid_syncoid_ssh_privkey is defined