old_console/deb_old/skeleton/DEBIAN/prerm
2024-11-02 14:12:45 +03:00

60 lines
1.8 KiB
Bash

#!/bin/bash
# summary of how this script can be called:
# * <prerm> `remove'
# * <old-prerm> `upgrade' <new-version>
# * <new-prerm> `failed-upgrade' <old-version>
# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
# * <deconfigured's-prerm> `deconfigure' `in-favour'
# <package-being-installed> <version> `removing'
# <conflicting-package> <version>
# for details, see https://www.debian.org/doc/debian-policy/ or
# the debian-policy package
set -e # fail on any error
PROJECT=armaconsole
# SYSTEMCTL CONFIG
SYSCTL_AMC_SERVICES="amcgunicorn amccelery amccelerybeat amccorrelator amclicense amcchecker amcvector"
# ======[ Trap Errors ]======#
set -E # let shell functions inherit ERR trap
trap err_handler 1 2 3 15 ERR # Trap non-normal exit signals: 1/HUP, 2/INT, 3/QUIT, 15/TERM, ERR
# shellcheck disable=SC2128
function err_handler() {
local exit_status=${1:-$?}
logger -s -p "syslog.err" -t "${PROJECT}.deb" \
"${PROJECT}.deb script '$0' error code $exit_status (line $BASH_LINENO: '$BASH_COMMAND')"
exit "$exit_status"
}
. /usr/share/debconf/confmodule
if [ -f /usr/share/dbconfig-common/dpkg/prerm.pgsql ]; then
. /usr/share/dbconfig-common/dpkg/prerm.pgsql
dbc_go "${PROJECT}" "$@" || true
db_stop
fi
DEBUG_INSTALL="${DEBUG_INSTALL:-0}"
[ "$DEBUG_INSTALL" == "1" ] && set -x
[ "$DEBUG_INSTALL" == "1" ] && echo "Calling prerm $*"
set -u # treat unset variables as errors
case "$1" in
remove)
# shellcheck disable=SC2086
systemctl stop $SYSCTL_AMC_SERVICES || true
# shellcheck disable=SC2086
systemctl disable $SYSCTL_AMC_SERVICES || true
;;
upgrade | deconfigure) ;;
failed-upgrade)
exit 1
;;
*)
echo "prerm called with unknown argument \`$1'" >&2
exit 1
;;
esac
exit 0