From 1169d626456c276954c96d515a5a0cd686c61338 Mon Sep 17 00:00:00 2001 From: Hendrik Jäger Date: Fri, 25 Aug 2023 12:48:48 +0200 Subject: initially populated --- run | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 run (limited to 'run') diff --git a/run b/run new file mode 100644 index 0000000..856f09d --- /dev/null +++ b/run @@ -0,0 +1,28 @@ +#!/usr/bin/execlineb -P + +# TODO: +# a sane example of handling the arguments would be nice + +# populate some variables +define RUN_USER jdoe +define INSTANCE_NAME jane +backtick HOME { homeof ${RUN_USER} } +importas -n -u HOME HOME + +# redirect STDERR to STDIN so it can be caught by a logging service +fdmove -c 2 1 + +# switch to a different user for running this +s6-setuidgid ${RUN_USER} + +# handle SIGTERM +trap -x { + SIGTERM { + pipeline { echo "system_powerdown\n" } + s6-ipcclient ${HOME}/${INSTANCE_NAME}-monitor.socket + s6-ioconnect -67 + } +} + +# the command to start and supervise +imaginary_service -l 127.0.0.1 -p 31337 ${HOME}/run/listener_${INSTANCE_NAME}/${INSTANCE_NAME}.conf -- cgit v1.2.3