summaryrefslogtreecommitdiffstats
path: root/debian/ceph-base.postinst
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--debian/ceph-base.postinst61
1 files changed, 61 insertions, 0 deletions
diff --git a/debian/ceph-base.postinst b/debian/ceph-base.postinst
new file mode 100644
index 00000000..23712a8b
--- /dev/null
+++ b/debian/ceph-base.postinst
@@ -0,0 +1,61 @@
+#!/bin/sh
+# vim: set noet ts=8:
+# postinst script for ceph
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#
+# postinst configure <most-recently-configured-version>
+# old-postinst abort-upgrade <new-version>
+# conflictor's-postinst abort-remove in-favour <package> <new-version>
+# postinst abort-remove
+# deconfigured's-postinst abort-deconfigure in-favour <failed-install-package> <version> [<removing conflicting-package> <version>]
+#
+# The current action is to simply remove the mistakenly-added
+# /etc/init/ceph.conf file; this could be done in any of these cases,
+# although technically it will leave the system in a different state
+# than the original install that included that file. So instead we
+# only remove on "configure", since that's the only time we know we're
+# successful in installing a newer package than the erroneous version.
+
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+[ -f "/etc/default/ceph" ] && . /etc/default/ceph
+[ -z "$SERVER_USER" ] && SERVER_USER=ceph
+[ -z "$SERVER_GROUP" ] && SERVER_GROUP=ceph
+
+case "$1" in
+ configure)
+ rm -f /etc/init/ceph.conf
+ for DIR in `ls -1 /var/lib/ceph` ; do
+ if ! dpkg-statoverride --list /var/lib/ceph/$DIR >/dev/null; then
+ if [ -d /run/systemd/system ] && [ $DIR = 'mon' ]; then
+ # NOTE: upgrade file permissions for mon filesystem on
+ # systemd based installs only due to automatic
+ # restarting of ceph-mon daemon
+ chown -R $SERVER_USER:$SERVER_GROUP /var/lib/ceph/$DIR
+ else
+ chown $SERVER_USER:$SERVER_GROUP /var/lib/ceph/$DIR
+ fi
+ fi
+ done
+ ;;
+ abort-upgrade|abort-remove|abort-deconfigure)
+ :
+ ;;
+ *)
+ echo "postinst called with unknown argument \`$1'" >&2
+ exit 1
+ ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0