aboutsummaryrefslogtreecommitdiffstats
path: root/roles/jail/tasks/jail_setup.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/jail/tasks/jail_setup.yml')
-rw-r--r--roles/jail/tasks/jail_setup.yml15
1 files changed, 12 insertions, 3 deletions
diff --git a/roles/jail/tasks/jail_setup.yml b/roles/jail/tasks/jail_setup.yml
index aac91f7..4a77366 100644
--- a/roles/jail/tasks/jail_setup.yml
+++ b/roles/jail/tasks/jail_setup.yml
@@ -115,15 +115,23 @@
loop: "{{ dirs | default([]) }}"
delegate_to: "{{ jail_delegate_host }}"
-- name: "Create mount point sources for {{ jail_name }}"
- file:
+- name: "Verify mount point sources exist for {{ jail_name }}"
+ stat:
path: "{{ item.src }}"
- state: directory
loop: "{{ _nullfs }}"
loop_control:
label: "{{ item.src }}"
+ register: _nullfs_sources
delegate_to: "{{ jail_delegate_host }}"
+- name: "Assert mount point sources exist for {{ jail_name }}"
+ assert:
+ that: item.stat.exists
+ fail_msg: "nullfs source does not exist: {{ item.item.src }}"
+ loop: "{{ _nullfs_sources.results }}"
+ loop_control:
+ label: "{{ item.item.src }}"
+
- name: "Create mount point destinations for {{ jail_name }}"
file:
path: "/usr/local/jails/containers/{{ jail_name }}{{ item.dst }}"
@@ -134,6 +142,7 @@
loop: "{{ _nullfs }}"
loop_control:
label: "{{ item.dst }}"
+ when: jail_exists.rc != 0 or (jail_origin.stdout is defined and userland + '@base' not in jail_origin.stdout)
delegate_to: "{{ jail_delegate_host }}"
- name: "Deploy jail.conf.d/{{ jail_name }}.conf"