source: package_tags/xvm-munin-config/0.0.4/debian/xvm-munin-master-config.postinst

Last change on this file was 1767, checked in by broder, 16 years ago

Don't just keep adding to the sudoers file in xvm-munin-config

  • Property svn:executable set to *
File size: 2.0 KB
Line 
1#!/bin/sh
2# postinst script for #PACKAGE#
3#
4# see: dh_installdeb(1)
5
6set -e
7
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
19
20
21case "$1" in
22    configure)
23        # So munin can read the mail log
24        adduser munin adm
25       
26        # First clear out the old stuff we threw in /etc/sudoers
27        perl -i.bak -ne 's%^### (BEGIN|END) xvm-munin-config\s*$%%m && ($skip = ($1 eq "BEGIN")); print unless $skip;' /etc/sudoers
28       
29        # So munin can sudo to get to postfix queue info
30        cat >>/etc/sudoers <<EOF
31### BEGIN xvm-munin-config
32munin ALL=(postfix) SETENV: NOPASSWD: /etc/munin/plugins/postfix_mailqueue
33munin ALL=(munin) SETENV: NOPASSWD: ALL
34### END xvm-munin-config
35EOF
36       
37        # So munin can read from the database
38        su postgres -c 'createuser -S -D -R munin' || true
39        su postgres -c 'psql invirt --quiet' <<EOF
40GRANT SELECT ON pg_class TO munin;
41GRANT SELECT ON pg_index TO munin;
42GRANT SELECT ON pg_statio_user_tables TO munin;
43GRANT SELECT ON pg_stat_activity TO munin;
44GRANT SELECT ON pg_locks TO munin;
45EOF
46       
47        # Install munin plugins that are now configured
48        munin-node-configure --suggest --shell | sh
49       
50        invoke-rc.d munin-node restart
51    ;;
52
53    abort-upgrade|abort-remove|abort-deconfigure)
54    ;;
55
56    *)
57        echo "postinst called with unknown argument \`$1'" >&2
58        exit 1
59    ;;
60esac
61
62# dh_installdeb will replace this with shell code automatically
63# generated by other debhelper scripts.
64
65#DEBHELPER#
66
67exit 0
Note: See TracBrowser for help on using the repository browser.