File: puppet-common.preinst

package info (click to toggle)
puppet 3.7.2-4%2Bdeb8u1
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 18,912 kB
  • ctags: 13,168
  • sloc: ruby: 210,410; sh: 2,050; xml: 1,554; lisp: 300; makefile: 142; python: 108; sql: 103; yacc: 72
file content (75 lines) | stat: -rw-r--r-- 2,233 bytes parent folder | download | duplicates (3)
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!/bin/sh
# preinst script for puppet-common
#
# see: dh_installdeb(1)

set -e

# summary of how this script can be called:
#        * <new-preinst> `install'
#        * <new-preinst> `install' <old-version>
#        * <new-preinst> `upgrade' <old-version>
#        * <old-preinst> `abort-upgrade' <new-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package

disable_puppet_agent() {
    mkdir -p /var/lib/puppet/state
    tmp_lockfile=$(mktemp /var/lib/puppet/state/agent_disabled.lock.XXXXXXXX)
    lockfile=/var/lib/puppet/state/agent_disabled.lock

    printf '{"disabled_message":"Disabled by default on new or unconfigured old installations"}' \
        > $tmp_lockfile

    mv $tmp_lockfile $lockfile
}

case "$1" in
    install)
        # disable the puppet agent on the first install
        if [ -z "$2" ]; then
            disable_puppet_agent
        elif dpkg --compare-versions "$2" lt "3.2.4-1~" && \
            [ -e "/etc/default/puppet" ]; then
            # Also disable puppet if we use conffiles from a version where the
            # START flag mattered.
            . /etc/default/puppet

            if [ "x$START" != "xtrue" -a "x$START" != "xyes" -a "x$START" != "x0" ]; then
                # Note that "0" is not a typo, it reflects the checks done
                # in wheezy's initscript.
                disable_puppet_agent
            fi
        fi
        ;;

    upgrade)
        # Disable puppet if we are upgrading from a version where the START
        # flag mattered.
        if dpkg --compare-versions "$2" lt "3.2.4-1~" && \
            [ -e "/etc/default/puppet" ]; then
            . /etc/default/puppet

            if [ "x$START" != "xtrue" -a "x$START" != "xyes" -a "x$START" != "x0" ]; then
                # Note that "0" is not a typo, it reflects the checks done
                # in wheezy's initscript.
                disable_puppet_agent
            fi
        fi
        ;;

    abort-upgrade)
        ;;

    *)
        echo "preinst 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