debian-mirror-gitlab/debian/postrm
Praveen Arimbrathodiyil 4d062a0ae9 purge tmpfiles
2017-02-15 13:41:22 +05:30

149 lines
4.9 KiB
Bash

#! /bin/sh
# postrm.skeleton
# Skeleton maintainer script showing all the possible cases.
# Written by Charles Briscoe-Smith, March-June 1998. Public Domain.
# Abort if any command returns an error value
set -e
# This script is called twice during the removal of the package; once
# after the removal of the package's files from the system, and as
# the final step in the removal of this package, after the package's
# conffiles have been removed.
# Ensure the menu system is updated
# Read and export debian specific configuration
# Only exported variables will be passed on to gitlab app
case "$1" in
remove)
# This package is being removed, but its configuration has not yet
# been purged.
:
# Remove diversion
# ldconfig is NOT needed during removal of a library, only during
# installation
;;
purge)
# This package has previously been removed and is now having
# its configuration purged from the system.
:
# purge debconf questions
if [ -e /usr/share/debconf/confmodule ]; then
# Source debconf library.
. /usr/share/debconf/confmodule
# Remove my changes to the db.
db_purge
fi
echo "Reading gitlab-debian.conf..."
gitlab_debian_conf=/etc/gitlab/gitlab-debian.conf
test -f ${gitlab_debian_conf} && export $(cat ${gitlab_debian_conf})
nginx_site="/etc/nginx/sites-available/${GITLAB_HOST}"
test -f ${nginx_site} && echo "Found nginx site configuration at ${nginx_site}..."
# we mimic dpkg as closely as possible, so we remove configuration
# files with dpkg backup extensions too:
### Some of the following is from Tore Anderson:
for ext in '~' '%' .bak .ucf-new .ucf-old .ucf-dist; do
rm -f ${nginx_site}$ext
rm -f ${gitlab_debian_conf}$ext
rm -f ${gitlab_yml}$ext
rm -f ${gitlab_tmpfiles}$ext
rm -f ${gitlab_shell_config}$ext
done
# remove the configuration file itself
test -f ${nginx_site} && rm -f ${nginx_site}
test -f ${gitlab_debian_conf} && rm -f ${gitlab_debian_conf}
test -f ${gitlab_yml} && rm -f ${gitlab_yml}
test -f ${gitlab_tmpfiles} && rm -f ${gitlab_tmpfiles}
test -f ${gitlab_shell_config} && rm -f ${gitlab_shell_config}
# and finally clear it out from the ucf database
if which ucf >/dev/null; then
test -n "${nginx_site}" && ucf --purge ${nginx_site}
test -n "${gitlab_debian_conf}" && ucf --purge ${gitlab_debian_conf}
test -n "${gitlab_yml}" && ucf --purge ${gitlab_yml}
test -n "${gitlab_tmpfiles}" && ucf --purge ${gitlab_tmpfiles}
test -n "${gitlab_shell_config}" && ucf -purge ${gitlab_shell_config}
fi
if which ucfr >/dev/null; then
test -n "${nginx_site}" && ucfr --purge gitlab ${nginx_site}
test -n "${gitlab_debian_conf}" && ucfr --purge gitlab ${gitlab_debian_conf}
test -n "${gitlab_yml}" && ucfr --purge gitlab ${gitlab_yml}
test -n "${gitlab_tmpfiles}" && ucfr --purge gitlab ${gitlab_tmpfiles}
test -n "${gitlab_shell_config}" && ucfr -purge gitlab ${gitlab_shell_config}
fi
# remove generated assets
rm -rf /var/lib/gitlab/public/assets
# cleanup complete
exit 0
;;
disappear)
if test "$2" != overwriter; then
echo "$0: undocumented call to \`postrm $*'" 1>&2
exit 0
fi
# This package has been completely overwritten by package $3
# (version $4). All our files are already gone from the system.
# This is a special case: neither "prerm remove" nor "postrm remove"
# have been called, because dpkg didn't know that this package would
# disappear until this stage.
:
;;
upgrade)
# About to upgrade FROM THIS VERSION to version $2 of this package.
# "prerm upgrade" has been called for this version, and "preinst
# upgrade" has been called for the new version. Last chance to
# clean up.
:
;;
failed-upgrade)
# About to upgrade from version $2 of this package TO THIS VERSION.
# "prerm upgrade" has been called for the old version, and "preinst
# upgrade" has been called for this version. This is only used if
# the previous version's "postrm upgrade" couldn't handle it and
# returned non-zero. (Fix old postrm bugs here.)
:
;;
abort-install)
# Back out of an attempt to install this package. Undo the effects of
# "preinst install...". There are two sub-cases.
:
if test "${2+set}" = set; then
# When the install was attempted, version $2's configuration
# files were still on the system. Undo the effects of "preinst
# install $2".
:
else
# We were being installed from scratch. Undo the effects of
# "preinst install".
:
fi ;;
abort-upgrade)
# Back out of an attempt to upgrade this package from version $2
# TO THIS VERSION. Undo the effects of "preinst upgrade $2".
:
;;
*) echo "$0: didn't understand being called with \`$1'" 1>&2
exit 0;;
esac
#DEBHELPER#
exit 0