summaryrefslogtreecommitdiffstats
path: root/debian/ceph-base.postinst
blob: 23712a8b4e49262d522c0df0e96013d1d5c8c124 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
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