22 lines
741 B
Bash
Executable File
22 lines
741 B
Bash
Executable File
#!/bin/sh
|
|
set -e
|
|
|
|
# On removal, stop all instances while the helper script still exists, so each
|
|
# server is sent "exit" and saves its world. (Without the script, systemd would
|
|
# just kill them.) Upgrades leave running servers alone.
|
|
case "$1" in
|
|
remove|deconfigure)
|
|
if [ -d /run/systemd/system ]; then
|
|
units=$(systemctl list-units --plain --no-legend --all 'terraria@*.service' | awk '{print $1}')
|
|
if [ -n "$units" ]; then
|
|
echo "Stopping Terraria instances: $units"
|
|
# Unquoted on purpose: each unit name must be a separate argument
|
|
# shellcheck disable=SC2086
|
|
systemctl stop $units || true
|
|
fi
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
exit 0
|