File: monotone.init

package info (click to toggle)
monotone 1.0-6
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 20,708 kB
  • sloc: cpp: 84,765; sh: 6,787; perl: 837; makefile: 833; python: 517; lisp: 379; sql: 118; exp: 88; ansic: 52
file content (58 lines) | stat: -rw-r--r-- 1,405 bytes parent folder | download | duplicates (4)
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
#! /bin/sh

set -e

NAME=monotone
EXECNAME=mtn
DAEMON=/usr/bin/$EXECNAME
PIDDIR=/var/run/$NAME
SCRIPTNAME=/etc/init.d/$NAME
MAINLOG=/var/log/$NAME/$EXECNAME.log
ERRORLOG=/var/log/$NAME/error.log

ADDRESS=0.0.0.0
MTN_HOME=/var/lib/monotone
MTN_CONFDIR=/etc/monotone
MTN_KEYDIR=$MTN_HOME/keys
MTN_DB=$MTN_HOME/default.mtn

# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0

PIDFILE=$PIDDIR/$EXECNAME.pid

case "$1" in
    start)
	# If /var/run is created in tmpfs, it will be wiped of previous data
	if [ ! -d "$PIDDIR" ]; then
	    mkdir -p "$PIDDIR" && chown monotone:monotone "$PIDDIR"
	fi

	# If there's a pid file, there may be a runnign server already
	if [ -e "$PIDFILE" ] && kill -0 `cat "$PIDFILE"` 2>/dev/null; then
	    echo "Already started $DESC : $NAME"
	else
	    rm -f "$PIDFILE"
	    cd $MTN_HOME
	    sudo -u monotone -b -H -n $DAEMON \
		--confdir=$MTN_CONFDIR --db=$MTN_DB --keydir=$MTN_KEYDIR \
		--no-standard-rcfiles --rcfile=$MTN_CONFDIR/hooks.lua \
		--pid-file=$PIDFILE --timestamps --quiet \
		--bind=$ADDRESS serve >> $MAINLOG 2>&1 < /dev/null &
	    if [ -e "$PIDFILE" ]; then
		echo "Starting $DESC : $NAME"
	    else
		echo "Failed starting $DESC"
	    fi
	fi
	;;
    stop)
	if [ -e "$PIDFILE" ] && kill `cat "$PIDFILE"` 2>/dev/null; then
	    echo "Stopped $DESC : $NAME"
	fi
	;;
    *)
	echo "Usage: $SCRIPTNAME {start|stop}" >&2
	exit 1
	;;
esac