summaryrefslogtreecommitdiff
path: root/roles/storage/zfs/device/tasks/main.yml
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2024-01-20 22:42:30 +0100
committerChristian Pointner <equinox@spreadspace.org>2024-01-20 22:42:30 +0100
commitba2ab1cb42db29c8287c65a3f1e0b646eeba0464 (patch)
tree73a496d6b03085de2aa8dfe22ca201ff0354ba07 /roles/storage/zfs/device/tasks/main.yml
parentapps/storage: test with zfs volumes (diff)
add storage_device roles
Diffstat (limited to 'roles/storage/zfs/device/tasks/main.yml')
-rw-r--r--roles/storage/zfs/device/tasks/main.yml14
1 files changed, 14 insertions, 0 deletions
diff --git a/roles/storage/zfs/device/tasks/main.yml b/roles/storage/zfs/device/tasks/main.yml
new file mode 100644
index 00000000..1204da02
--- /dev/null
+++ b/roles/storage/zfs/device/tasks/main.yml
@@ -0,0 +1,14 @@
+---
+- name: compute full zfs device path
+ set_fact:
+ zfs_device_path_full: "{{ ('parent' in zfs_device) | ternary((zfs_device.parent.pool | default(''))~'/'~(zfs_device.parent.name | default('')), zfs_device.pool) }}/{{ zfs_device.name }}"
+
+- name: create zfs volume
+ zfs:
+ name: "{{ zfs_device_path_full }}"
+ extra_zfs_properties: "{{ zfs_device.properties | default({}) | combine({'volsize': zfs_device.size}) | dehumanize_zfs_properties }}"
+ state: present
+
+- name: export device path
+ set_fact:
+ storage_device_path: "/dev/zvol/{{ zfs_device_path_full }}"