Code

pnp4nagios-web.postinst: Do not set permissions of /var/log/pnp4nagios/stats.
[pkg-pnp4nagios.git] / debian / pnp4nagios-web.postinst
1 #!/bin/sh
2 # postinst script for pnp4nagios-web
3 #
4 # see: dh_installdeb(1)
6 set -e
8 # summary of how this script can be called:
9 #        * <postinst> `configure' <most-recently-configured-version>
10 #        * <old-postinst> `abort-upgrade' <new version>
11 #        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
12 #          <new-version>
13 #        * <postinst> `abort-remove'
14 #        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
15 #          <failed-install-package> <version> `removing'
16 #          <conflicting-package> <version>
17 # for details, see http://www.debian.org/doc/debian-policy/ or
18 # the debian-policy package
20 . /usr/share/debconf/confmodule
22 setperm() {
23         user="$1"
24         group="$2"
25         mode="$3"
26         file="$4"
27         shift 4
28         # only do something when no setting exists
29         if ! dpkg-statoverride --list "$file" >/dev/null 2>&1; then
30                 chown "$user":"$group" "$file"
31                 chmod "$mode" "$file"
32         fi
33 }
35 configure_apache2() {
36         a2reload="false"
38         if [ -d /etc/apache2/conf.d/ ]; then
39                 if [ ! -e /etc/apache2/conf.d/pnp4nagios.conf ]; then
40                         ln -s /etc/pnp4nagios/apache.conf /etc/apache2/conf.d/pnp4nagios.conf
41                         a2reload="true"
42                 fi
43         fi
45         if [ -d /etc/apache2/mods-enabled ]; then
46                 if [ ! -e /etc/apache2/mods-enabled/rewrite.load ]; then
47                         a2enmod rewrite
48                         a2reload="true"
49                 fi
50         fi
52         if [ "$a2reload" = "true" ]; then
53                 invoke-rc.d apache2 reload
54         fi
55 }
57 case "$1" in
58         configure)
59                 if ! getent passwd nagios > /dev/null ; then
60                         echo 'Adding system-user for nagios' 1>&2
61                         adduser --system --group --home /var/lib/nagios \
62                                 --disabled-login --force-badname nagios > /dev/null
63                 fi
64                 setperm nagios www-data 750 /var/lib/pnp4nagios
65                 setperm nagios nagios   755 /var/lib/pnp4nagios/perfdata
66                 setperm nagios www-data 750 /var/log/pnp4nagios
68                 db_get pnp4nagios-web/httpd
69                 http_servers=`echo $RET | sed -e 's/,/ /g'`
71                 for httpd in $http_servers; do
72                         case "$httpd" in
73                                 apache2)
74                                         configure_apache2
75                                         ;;
76                                 # WISHLIST: configure other web servers as well
77                                 *)
78                                         echo "Don't know how to configure web server $httpd" >&2
79                                         ;;
80                         esac
81                 done
82         ;;
84         abort-upgrade|abort-remove|abort-deconfigure)
85         ;;
87         *)
88                 echo "postinst called with unknown argument \`$1'" >&2
89                 exit 1
90         ;;
91 esac
93 # dh_installdeb will replace this with shell code automatically
94 # generated by other debhelper scripts.
96 #DEBHELPER#
98 exit 0