summaryrefslogtreecommitdiffstats
path: root/core/modules/run-virt/data/opt/openslx/scripts
diff options
context:
space:
mode:
authorJonathan Bauer2017-10-23 15:33:17 +0200
committerJonathan Bauer2017-10-23 15:33:17 +0200
commit1bd0ea11fd2596f62c2120d753e66dab0be504b8 (patch)
treef5a4d992b83899c80671901f388d389641f5ed4c /core/modules/run-virt/data/opt/openslx/scripts
parent[rfs-s32] meh (diff)
downloadmltk-1bd0ea11fd2596f62c2120d753e66dab0be504b8.tar.gz
mltk-1bd0ea11fd2596f62c2120d753e66dab0be504b8.tar.xz
mltk-1bd0ea11fd2596f62c2120d753e66dab0be504b8.zip
[run-virt] add support for SLX_VM_TMP_* fallback
Diffstat (limited to 'core/modules/run-virt/data/opt/openslx/scripts')
-rwxr-xr-xcore/modules/run-virt/data/opt/openslx/scripts/systemd-run_virt_env29
1 files changed, 29 insertions, 0 deletions
diff --git a/core/modules/run-virt/data/opt/openslx/scripts/systemd-run_virt_env b/core/modules/run-virt/data/opt/openslx/scripts/systemd-run_virt_env
index 07c4eea7..1bd0db58 100755
--- a/core/modules/run-virt/data/opt/openslx/scripts/systemd-run_virt_env
+++ b/core/modules/run-virt/data/opt/openslx/scripts/systemd-run_virt_env
@@ -41,6 +41,35 @@ for DIR in /tmp/virt /var/log/samba /run/samba; do
fi
done
+# check if a fallback share is set as SLX_VM_TMP_SOURCE
+if [ -n "${SLX_VM_TMP_SOURCE}" ]; then
+ LOG=$(mktemp)
+ # use SLX_VM_TMP_TYPE and SLX_VM_TMP_OPTS, if set
+ for TRY in 1 2 3 STOP; do
+ [ "x$TRY" = "xSTOP" ] && break
+ if [ -n "${SLX_VM_TMP_TYPE}" ] && [ -n "${SLX_VM_TMP_OPTS}" ]; then
+ mount -t ${SLX_VM_TMP_TYPE} -o "${SLX_VM_TMP_OPTS}" "${SLX_VM_TMP_SOURCE}" /tmp/virt
+ elif [ -n "${SLX_VM_TMP_TYPE}" ]; then
+ mount -t ${SLX_VM_TMP_TYPE} "${SLX_VM_TMP_SOURCE}" /tmp/virt
+ elif [ -n "${SLX_VM_TMP_OPTS}" ]; then
+ mount -o "${SLX_VM_TMP_OPTS}" "${SLX_VM_TMP_SOURCE}" /tmp/virt
+ else
+ mount "${SLX_VM_TMP_SOURCE}" /tmp/virt
+ fi
+ RET=$?
+ [ "$RET" = "0" ] && break
+ sleep $TRY
+ done > "$LOG" 2>&1
+ if [ "$RET" -ne "0" ]; then
+ if [ -s "$LOG" ]; then
+ slxlog --delete "mount-vm-tmp-fail" "Mounting of '${SLX_VM_TMP_SOURCE}' failed." "$LOG"
+ else
+ slxlog "mount-vm-tmp-fail" "Mounting of '${SLX_VM_TMP_SOURCE}' failed."
+ rm -f -- "$LOG"
+ fi
+ fi
+fi
+
chmod a+rwxt /tmp/virt
# enable normal users to setup the extended virtual machine redo file space