#!/bin/sh
### BEGIN INIT INFO
# Provides:          git-daemon
# Required-Start:    $network $remote_fs $syslog
# Required-Stop:     $network $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: git-daemon service
# Description:       git-daemon is a simple server for git repositories,
#                    ideally suited for read-only updates, i.e. pulling from
#                    git repositories through the network.
### END INIT INFO

DESC="git-daemon service"
NAME=git-daemon

PATH=/home/gitmaster/bin:/sbin:/usr/sbin:/bin:/usr/bin
DAEMON=/home/gitmaster/libexec/git-core/$NAME
PIDFILE=/var/run/$NAME.pid

DAEMON_ARGS=" \
	--detach \
	--syslog \
	--verbose \
	--reuseaddr \
	--user=gitdaemon \
	--group=gitdaemon \
	--pid-file=$PIDFILE \
	--base-path=/home/gitdaemon \
	--enable=upload-pack \
	--disable=receive-pack \
	--disable=upload-archive \
	--forbid-override=upload-pack \
	--forbid-override=receive-pack \
	--forbid-override=upload-archive \
"

start() {
        start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_ARGS
}

stop() {
        start-stop-daemon --stop --quiet --pidfile $PIDFILE --name $NAME "$@"
}

case "$1" in
start)
        echo -n "Starting $DESC: $NAME"
	start
        echo "."
        ;;
stop)
        echo -n "Stopping $DESC: $NAME"
	stop
        echo "."
        ;;
restart)
        echo -n "Restarting $DESC: $NAME"
	stop --oknodo
        sleep 1
	start
        echo "."
        ;;
*)
        echo "Usage: $0 {start|stop|restart}"
        exit 1
esac

exit 0
