aboutsummaryrefslogtreecommitdiffstats
path: root/roles/jail/tasks
diff options
context:
space:
mode:
authorJan Tuomi <jan@jantuomi.fi>2026-07-09 22:13:03 +0300
committerJan Tuomi <jan@jantuomi.fi>2026-07-09 22:13:03 +0300
commitbadf52135e97531e6c91743322bdbe16105b43e5 (patch)
tree17a847f3f6f047cceea03267d26273532e711dcf /roles/jail/tasks
parent9f55f450e6422e8da29ee94bd0ffeabdff1d3eaa (diff)
Refactor jails
Diffstat (limited to 'roles/jail/tasks')
-rw-r--r--roles/jail/tasks/jail_setup.yml31
1 files changed, 31 insertions, 0 deletions
diff --git a/roles/jail/tasks/jail_setup.yml b/roles/jail/tasks/jail_setup.yml
index 9122b79..7920ee4 100644
--- a/roles/jail/tasks/jail_setup.yml
+++ b/roles/jail/tasks/jail_setup.yml
@@ -1,3 +1,34 @@
+- name: "Create ZFS volumes for {{ jail_name }}"
+ community.general.zfs:
+ name: "{{ item.name }}"
+ state: present
+ extra_zfs_properties:
+ mountpoint: "/usr/local/jails/containers/{{ jail_name }}{{ item.mountpoint }}"
+ loop: "{{ zfs | default([]) }}"
+ loop_control:
+ label: "{{ item.name }}"
+ delegate_to: "{{ jail_delegate_host }}"
+
+- name: "Create mount points for ZFS volumes in {{ jail_name }}"
+ file:
+ path: "/usr/local/jails/containers/{{ jail_name }}{{ item.mountpoint }}"
+ state: directory
+ owner: root
+ group: wheel
+ mode: "0755"
+ loop: "{{ zfs | default([]) }}"
+ loop_control:
+ label: "{{ item.mountpoint }}"
+ delegate_to: "{{ jail_delegate_host }}"
+
+- name: "Mount ZFS volumes for {{ jail_name }}"
+ shell: "zfs mount {{ item.name }} || true"
+ loop: "{{ zfs | default([]) }}"
+ loop_control:
+ label: "{{ item.name }}"
+ changed_when: false
+ delegate_to: "{{ jail_delegate_host }}"
+
# Host-side setup (runs on the jail host via SSH)
- name: "Check if {{ jail_name }} container exists"
shell: "zfs list -o name | grep -Fxq 'zroot/jails/containers/{{ jail_name }}'"