26 lines
611 B
Bash
26 lines
611 B
Bash
#!/usr/bin/env bash
|
|
#
|
|
# bt-service - restart/start/stop the ButtonTask systemd units.
|
|
# Invoked through sudo by the web configurator (tightly scoped).
|
|
set -euo pipefail
|
|
|
|
ACTION="${1:-}"
|
|
|
|
if [ -z "${BT_SERVICE_DETACHED:-}" ]; then
|
|
unit="buttontask-service-$(date +%s)"
|
|
exec systemd-run --no-block --collect \
|
|
"--unit=${unit}" \
|
|
"--setenv=BT_SERVICE_DETACHED=1" \
|
|
"$0" "$@"
|
|
fi
|
|
|
|
case "$ACTION" in
|
|
start|stop|restart)
|
|
systemctl "$ACTION" buttontask-web buttontask
|
|
;;
|
|
*)
|
|
echo "usage: bt-service {start|stop|restart}" >&2
|
|
exit 2
|
|
;;
|
|
esac
|