95 lines
1.9 KiB
YAML
95 lines
1.9 KiB
YAML
---
|
|
# file: roles/zfs/tasks/main.yml
|
|
|
|
- name: Enable Code Ready Builder
|
|
community.general.dnf_config_manager:
|
|
name: crb
|
|
state: enabled
|
|
|
|
- name: Install EPEL
|
|
package:
|
|
name: epel-release
|
|
state: present
|
|
|
|
- name: Install Dependencies
|
|
package:
|
|
name: "{{ item }}"
|
|
state: present
|
|
loop:
|
|
- "git"
|
|
- "perl-Config-IniFiles"
|
|
- "perl-Data-Dumper"
|
|
- "perl-Capture-Tiny"
|
|
- "perl-Getopt-Long"
|
|
- "lzop"
|
|
- "mbuffer"
|
|
- "mhash"
|
|
- "pv"
|
|
|
|
- name: Clone Sanoid Repository
|
|
git:
|
|
repo: "https://github.com/jimsalterjrs/sanoid.git"
|
|
dest: "/opt/repos/sanoid"
|
|
|
|
- name: Place Executables
|
|
copy:
|
|
remote_src: true
|
|
src: "/opt/repos/sanoid/{{ item }}"
|
|
dest: "/usr/local/sbin"
|
|
mode: "preserve"
|
|
loop:
|
|
- "sanoid"
|
|
- "syncoid"
|
|
- "findoid"
|
|
- "sleepymutex"
|
|
|
|
- name: Create Sanoid Config Directory
|
|
file:
|
|
path: /etc/sanoid
|
|
state: directory
|
|
|
|
- name: Place Default Config
|
|
copy:
|
|
remote_src: true
|
|
src: "/opt/repos/sanoid/sanoid.defaults.conf"
|
|
dest: "/etc/sanoid/sanoid.defaults.conf"
|
|
|
|
- name: Create Config
|
|
template:
|
|
src: "sanoid.conf.j2"
|
|
dest: "/etc/sanoid/sanoid.conf"
|
|
|
|
- name: Create Sanoid Service
|
|
template:
|
|
src: "sanoid.service.j2"
|
|
dest: "/etc/systemd/system/sanoid.service"
|
|
become: true
|
|
notify: Daemon Reload
|
|
|
|
- name: Create Sanoid Pruning Service
|
|
template:
|
|
src: "sanoid-prune.service.j2"
|
|
dest: "/etc/systemd/system/sanoid-prune.service"
|
|
become: true
|
|
notify: Daemon Reload
|
|
|
|
- name: Create Sanoid Timer
|
|
template:
|
|
src: "sanoid.timer.j2"
|
|
dest: "/etc/systemd/system/sanoid.timer"
|
|
become: true
|
|
notify: Daemon Reload
|
|
|
|
- name: Flush handlers
|
|
meta: flush_handlers
|
|
|
|
- name: Enable Prune Service
|
|
service:
|
|
name: sanoid-prune.service
|
|
enabled: true
|
|
|
|
- name: Start and Enable Timer
|
|
service:
|
|
name: sanoid.timer
|
|
state: started
|
|
enabled: true
|