summaryrefslogtreecommitdiffstats
path: root/core/modules/run-virt/data/opt/openslx/vmchooser
diff options
context:
space:
mode:
authorJonathan Bauer2017-02-15 12:35:52 +0100
committerJonathan Bauer2017-02-15 12:35:52 +0100
commitfc740d39fa8069c3a47b5f58e2ce16b67adbf7ed (patch)
tree51e2fd12526bfe571888aa531b0dd4c332c20766 /core/modules/run-virt/data/opt/openslx/vmchooser
parent[runvirt] introduced wrapper script to start ... (diff)
downloadmltk-fc740d39fa8069c3a47b5f58e2ce16b67adbf7ed.tar.gz
mltk-fc740d39fa8069c3a47b5f58e2ce16b67adbf7ed.tar.xz
mltk-fc740d39fa8069c3a47b5f58e2ce16b67adbf7ed.zip
[runvirt] reworked wrapper log handling
Diffstat (limited to 'core/modules/run-virt/data/opt/openslx/vmchooser')
-rw-r--r--core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/init_core.inc18
-rwxr-xr-xcore/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt4
2 files changed, 15 insertions, 7 deletions
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/init_core.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/init_core.inc
index e551e5e8..b49488cb 100644
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/init_core.inc
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/init_core.inc
@@ -9,12 +9,20 @@ declare -rg TMPDIR="/tmp/virt/${USER}/$$"
# Check if the path to the logfile was given externally (by the wrapper)
unset WRAPPED
-if isset LOGFILE; then
- # given by wrapper
- declare -rg WRAPPED=aye
-else
- declare -rg LOGFILE="/var/log/openslx/run-virt.${USER}.$$.log"
+if notempty LOGFILE; then
+ if [ ! -w "${LOGFILE}" ]; then
+ # given logfile is not writeable or non-existant
+ # so handle it ourself (so do not set WRAPPED)
+ rm -f "${LOGFILE}"
+ unset LOGFILE
+ else
+ # given logfile was ok, mark that we are wrapped
+ # (for cleanexit to not slxlog the log since
+ # the wrapper is handling that for us)
+ declare -rg WRAPPED=aye
+ fi
fi
+isset LOGFILE || declare -rg LOGFILE="/var/log/openslx/run-virt.${USER}.$$.log"
# Create temporary directory for current invocation
if check_dep mkdir && ! mkdir -p "$TMPDIR"; then
diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt b/core/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt
index c4c053af..b0832aa3 100755
--- a/core/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt
+++ b/core/modules/run-virt/data/opt/openslx/vmchooser/vmchooser-run_virt
@@ -24,7 +24,7 @@ SELF=$(readlink -f "$0")
declare -rg XML_FILE="$1"
# A path to the logfile can be given as second argument
-declare -rg LOGFILE="$2"
+declare -g LOGFILE="$2"
# Functions needed by vmchooser-run_virt (writelog(), cleanexit(), safesource())
declare -rg RUN_VIRT_INCLUDE_DIR="$(dirname $SELF)/run-virt-includes"
@@ -78,7 +78,7 @@ if ! isset PLUGIN_FEATURES || ! is_function run_plugin; then
writelog "Bad plugin '$PLUGIN_ID': either it did not set PLUGIN_FEATURES or did not define 'run_plugin'."
EXIT_TYPE="internal" EXIT_REASON="Fehlerhaftes vmchooser plugin: '$PLUGIN_ID'." cleanexit 1
fi
-writelog "Requested features:\t\t${PLUGIN_FEATURES}"
+writelog "Requested features:\t${PLUGIN_FEATURES}"
# Source the *.inc files in run-virt.d
for FILE in ${VMCHOOSER_DIR}/run-virt.d/*.inc; do