#!/bin/bash # summary of how this script can be called: # * `remove' # * `upgrade' # * `failed-upgrade' # * `remove' `in-favour' # * `deconfigure' `in-favour' # `removing' # # 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