summaryrefslogtreecommitdiffstats
path: root/lib/container/enter
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@open-infrastructure.net>2016-12-05 07:48:22 +0000
committerDaniel Baumann <daniel.baumann@open-infrastructure.net>2016-12-11 12:13:01 +0000
commit2800164883ad19e22a8e8fe35d5f3c46eff9d1d7 (patch)
tree81b14da5cb64cc5893e05b5b5d9d9fd07db9b5a0 /lib/container/enter
parentEnabling pre and post hooks in container program. (diff)
downloadcompute-tools-2800164883ad19e22a8e8fe35d5f3c46eff9d1d7.tar.xz
compute-tools-2800164883ad19e22a8e8fe35d5f3c46eff9d1d7.zip
Enabling pre and post hooks in container commands.
Signed-off-by: Daniel Baumann <daniel.baumann@open-infrastructure.net>
Diffstat (limited to 'lib/container/enter')
-rwxr-xr-xlib/container/enter19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/container/enter b/lib/container/enter
index 6023d92..4bcd5c6 100755
--- a/lib/container/enter
+++ b/lib/container/enter
@@ -20,6 +20,7 @@ set -e
COMMAND="$(basename ${0})"
+HOOKS="/etc/container-tools/hooks"
MACHINES="/var/lib/machines"
Parameters ()
@@ -91,6 +92,15 @@ esac
LEADER="$(machinectl status ${NAME} | awk '/Leader: / { print $2 }')"
+# Pre hooks
+for FILE in "${HOOKS}/pre-${COMMAND}".* "${HOOKS}/${NAME}.pre-${COMMAND}"
+do
+ if [ -x "${FILE}" ]
+ then
+ "${FILE}"
+ fi
+done
+
# Run
if [ -e "${MACHINES}/${NAME}/usr/bin/container-nsenter" ]
then
@@ -100,3 +110,12 @@ else
fi
nsenter --target ${LEADER} --mount --uts --ipc --net --pid --root --wd=/root ${OPTIONS}
+
+# Post hooks
+for FILE in "${HOOKS}/post-${COMMAND}".* "${HOOKS}/${NAME}.post-${COMMAND}"
+do
+ if [ -x "${FILE}" ]
+ then
+ "${FILE}"
+ fi
+done