~launchpad-pqm/launchpad/devel

« back to all changes in this revision

Viewing changes to lib/canonical/buildd/debian/launchpad-buildd.init

  • Committer: mbp at canonical
  • Date: 2011-11-20 23:37:23 UTC
  • mto: This revision was merged to the branch mainline in revision 14344.
  • Revision ID: mbp@canonical.com-20111120233723-370p96db2crru5tm
Delete canonical.buildd again

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/bin/sh
2
 
#
3
 
# Copyright 2009 Canonical Ltd.  This software is licensed under the
4
 
# GNU Affero General Public License version 3 (see the file LICENSE).
5
 
#
6
 
# launchpad-buildd
7
 
#               This file is used to start and stop launchpad buildds
8
 
 
9
 
### BEGIN INIT INFO
10
 
# Provides:          launchpad_buildd
11
 
# Required-Start:    $local_fs $network $syslog $time
12
 
# Required-Stop:     $local_fs $network $syslog $time
13
 
# Default-Start:     2 3 4 5
14
 
# Default-Stop:      0 1 6
15
 
# X-Interactive:     false
16
 
# Short-Description: Start/stop launchpad buildds
17
 
### END INIT INFO
18
 
 
19
 
set -e
20
 
 
21
 
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
22
 
DESC="launchpad build slaves"
23
 
 
24
 
TACFILE="/usr/share/launchpad-buildd/buildd-slave.tac"
25
 
 
26
 
PIDROOT="/var/run/launchpad-buildd"
27
 
LOGROOT="/var/log/launchpad-buildd"
28
 
CONFROOT="/etc/launchpad-buildd"
29
 
 
30
 
# Gracefully exit if the package has been removed.
31
 
test -e $TACFILE || exit 0
32
 
 
33
 
#
34
 
#       Function that starts a buildd slave
35
 
#
36
 
d_start() {
37
 
    CONF=$1
38
 
    PIDFILE="$PIDROOT"/"$CONF".pid
39
 
    LOGFILE="$LOGROOT"/"$CONF".log
40
 
    # prior to karmic, twisted didn't support --umask, and defaulted it well.
41
 
    # we need it to be 022, not 077.
42
 
    case $(lsb_release -sc) in
43
 
        [a-j]*) UMASK="";;
44
 
        [k-z]*) UMASK="--umask 022";;
45
 
    esac
46
 
    su - buildd -c "BUILDD_SLAVE_CONFIG=$CONFROOT/$CONF PYTHONPATH=/usr/share/launchpad-buildd twistd --no_save --pidfile $PIDFILE --python $TACFILE --logfile $LOGFILE $UMASK"
47
 
}
48
 
 
49
 
#
50
 
#       Function that stops a buildd slave
51
 
#
52
 
d_stop() {
53
 
    CONF=$1
54
 
    PIDFILE="$PIDROOT"/"$CONF".pid
55
 
    test -r $PIDFILE && kill -TERM $(cat $PIDFILE) || true
56
 
}
57
 
 
58
 
CONFS=$(cd $CONFROOT; ls|grep -v "^-"|grep -v "~$")
59
 
 
60
 
case "$1" in
61
 
  start)
62
 
        echo -n "Starting $DESC:"
63
 
        install -m 755 -o buildd -g buildd -d $PIDROOT
64
 
 
65
 
        # Create any missing directories and chown them appropriately
66
 
        install -d -o buildd -g buildd /home/buildd/filecache-default
67
 
 
68
 
        for conf in $CONFS; do
69
 
            echo -n " $conf"
70
 
            d_start $conf
71
 
        done
72
 
        echo "."
73
 
        ;;
74
 
  stop)
75
 
        echo -n "Stopping $DESC:"
76
 
        for conf in $CONFS; do
77
 
            echo -n " $conf"
78
 
            d_stop $conf
79
 
        done
80
 
        echo "."
81
 
        ;;
82
 
  restart|force-reload)
83
 
        #
84
 
        #       If the "reload" option is implemented, move the "force-reload"
85
 
        #       option to the "reload" entry above. If not, "force-reload" is
86
 
        #       just the same as "restart".
87
 
        #
88
 
        $0 stop
89
 
        sleep 1
90
 
        $0 start
91
 
        ;;
92
 
  *)
93
 
        echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
94
 
        exit 1
95
 
        ;;
96
 
esac
97
 
 
98
 
exit 0