diff options
Diffstat (limited to 'roles/zfs/base/tasks')
-rw-r--r-- | roles/zfs/base/tasks/main.yml | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/roles/zfs/base/tasks/main.yml b/roles/zfs/base/tasks/main.yml new file mode 100644 index 00000000..cddfbb09 --- /dev/null +++ b/roles/zfs/base/tasks/main.yml @@ -0,0 +1,33 @@ +--- +## TODO: @debian: make sure contrib repo is added + +- name: install zfs packages + apt: + name: zfs-dkms + state: present + +- name: check if module is available for the currently running kernel + command: modprobe --dry-run zfs + check_mode: no + register: zfs_module_available + failed_when: false + changed_when: false + +- name: rebuild zfs module + when: zfs_module_available.rc != 0 + command: dpkg-reconfigure zfs-dkms + +- name: load zfs kernel module + modprobe: + name: zfs + state: present + +- name: install zfs file system utilities + apt: + name: zfsutils-linux + state: present + +- name: create zpool + command: "zpool create -m {{ zfs_zpool_mountpoint }} {% for prop, value in zfs_zpool_properties.items() %}-o {{ prop }}={{ value }} {% endfor %}{{ zfs_zpool_name }} {{ zfs_zpool_create_vdevs }}" + args: + creates: "{{ zfs_zpool_mountpoint }}" |