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

70 lines
1.7 KiB
YAML
Raw Normal View History

---
2022-04-01 18:06:15 +02:00
- name: install packages
become: true
2022-04-02 15:18:07 +02:00
ansible.builtin.apt:
name:
2022-04-01 18:06:15 +02:00
- sanoid
state: present
2022-04-02 15:15:43 +02:00
register: install
2022-04-02 15:23:43 +02:00
- name: systemctl daemon-reload
become: yes
ansible.builtin.systemd:
daemon_reload: yes
when: install.changed
- 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
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
option: OnCalendar
value: "{{ sanoid_timer }}"
notify:
- systemctl daemon-reload
when: sanoid_timer is defined