summaryrefslogtreecommitdiffstats
path: root/debian/buildd.init
diff options
context:
space:
mode:
Diffstat (limited to 'debian/buildd.init')
-rwxr-xr-xdebian/buildd.init122
1 files changed, 122 insertions, 0 deletions
diff --git a/debian/buildd.init b/debian/buildd.init
new file mode 100755
index 0000000..4e29aa0
--- /dev/null
+++ b/debian/buildd.init
@@ -0,0 +1,122 @@
+#! /bin/sh
+#
+### BEGIN INIT INFO
+# Provides: buildd
+# Required-Start: $local_fs $network $remote_fs
+# Required-Stop: $local_fs $network $remote_fs
+# Should-Start: schroot
+# Should-Stop:
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Debian package autobuilder daemon
+# Description: Control the buildd daemon.
+### END INIT INFO
+#
+# Copyright © 2006-2009 Roger Leigh <rleigh@debian.org>
+# Copyright © 2007 Federico Di Gregorio <fog@debian.org>
+#
+# sbuild is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# sbuild is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see
+# <http://www.gnu.org/licenses/>.
+
+DAEMON=/usr/bin/buildd
+PIDFILE=/var/lib/buildd/build/buildd.pid
+PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
+NAME=buildd
+DESC="Debian package autobuilder"
+
+. /lib/lsb/init-functions
+
+test -x $BUILDD || exit 0
+test -x $BUILDD_WATCHER || exit 0
+
+# Include buildd defaults if available
+if [ -f "/etc/default/$NAME" ] ; then
+ . "/etc/default/$NAME"
+fi
+
+set -e
+
+start () {
+ log_begin_msg "Starting $DESC: $NAME "
+
+ if [ -e /var/lib/buildd/NO-DAEMON-PLEASE ]; then
+ log_failure_msg "NO-DAEMON-PLEASE exists, not starting"
+ else
+ start-stop-daemon --start --quiet --oknodo --pidfile "$PIDFILE" --chuid buildd:buildd --exec $DAEMON
+
+ log_end_msg $?
+ fi
+}
+
+stop () {
+ log_begin_msg "Stopping $DESC: $NAME"
+
+ start-stop-daemon --stop --quiet --retry 5 --oknodo --pidfile $PIDFILE --name $NAME
+
+ log_end_msg $?
+}
+
+reload () {
+ log_begin_msg "Reloading $DESC: $NAME"
+ start-stop-daemon --stop --quiet --pidfile $PIDFILE --name $NAME --signal USR1 && success=1
+ log_end_msg $?
+}
+
+restart () {
+ log_begin_msg "Restarting $DESC: $NAME "
+ if start-stop-daemon --stop --quiet --retry 5 --oknodo --pidfile $PIDFILE --name $NAME; then
+ if [ -e /var/lib/buildd/NO-DAEMON-PLEASE ]; then
+ log_failure_msg "NO-DAEMON-PLEASE exists, not starting"
+ else
+ start-stop-daemon --start --quiet --pidfile "$PIDFILE" --chuid buildd:buildd --exec $DAEMON
+ fi
+ fi
+ log_end_msg $?
+}
+
+case "$1" in
+ start)
+ start
+ ;;
+ restart)
+ restart
+ ;;
+ force-reload)
+ reload
+ ;;
+ stop)
+ stop
+ ;;
+ status)
+ echo -n "Status of $DESC: "
+ if [ ! -r "$PIDFILE" ]; then
+ echo "$NAME is not running."
+ exit 3
+ fi
+ if read pid < "$PIDFILE" && ps -p "$pid" > /dev/null 2>&1; then
+ echo "$NAME is running."
+ exit 0
+ else
+ echo "$NAME is not running but $PIDFILE exists."
+ exit 1
+ fi
+ ;;
+ *)
+ N=/etc/init.d/$NAME
+ echo "Usage: $N {start|stop|restart|force-reload|status}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0