homeserver/roles/mgrote.zfs_sanoid/tasks/main.yml

65 lines
1.6 KiB
YAML

---
- name: install packages
become: true
ansible.builtin.package:
name:
- sanoid
state: present
- name: Create Sanoid Directory
become: true
ansible.builtin.file:
path: "/etc/sanoid"
state: directory
owner: root
group: root
recurse: true
- name: Generate Sanoid Configuration
become: true
ansible.builtin.template:
src: sanoid.conf.j2
dest: "/etc/sanoid/sanoid.conf"
owner: root
group: root
mode: 0644
when: sanoid_datasets is defined and sanoid_templates is defined
- name: template sanoid_mail.service
become: yes
ansible.builtin.template:
src: "sanoid_mail.service.j2"
dest: /etc/systemd/system/sanoid_mail.service
owner: root
group: root
mode: 0644
notify:
- systemctl daemon-reload
- name: add sanoid_mail.service to sanoid.service
become: true
community.general.ini_file:
path: "/etc/systemd/system/sanoid.service"
section: Unit
state: present
no_extra_spaces: no
exclusive: no
option: OnFailure
value: sanoid_mail.service
notify:
- systemctl daemon-reload
- name: set timer
become: true
community.general.ini_file:
path: "/etc/systemd/system/sanoid.timer"
section: Timer
state: present
no_extra_spaces: no
exclusive: no
option: OnCalendar
value: "{{ sanoid_timer }}"
notify:
- systemctl daemon-reload
when: sanoid_timer is defined