about summary refs log tree commit diff stats
path: root/linux/conf/rc.d/fcgiwrap
blob: 2059848606444666a9d9e6648084e9bd8c8bdf81 (plain) (blame)
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
#!/bin/sh
#
# /etc/rc.d/bird: start/stop fcgiwrapper
#

SSD=/sbin/start-stop-daemon
NAME=fcgiwrap
PROG=/usr/bin/spawn-fcgi
USER=www
GROUP=gitolite
PIDFILE=/var/run/spawn_${NAME}.pid
SOCKET=/var/run/fcgiwrap.sock
OPTS="-u $USER -g $GROUP -P $PIDFILE -M 0660 -s $SOCKET -- /usr/sbin/${NAME}"


case $1 in
    start)
        echo "Starting ${NAME}..."
        $SSD --background --user $USER  --quiet --start --pidfile $PIDFILE --exec $PROG -- $OPTS
    ;;
stop)
        echo "Stopping ${NAME}..."
        $SSD --stop --remove-pidfile --retry 10 --pidfile $PIDFILE
        ;;
restart)
        echo "Restarting ${NAME}..."
        $0 stop
        $0 start
        ;;
status)
        $SSD --status --pidfile $PIDFILE
        case $? in
        0) echo "$PROG is running with pid $(cat $PIDFILE )" ;;
        3) echo "$PROG is not running" ;;
        4) echo "Unable to determine the program status" ;;
        esac
        ;;
*)
        echo "usage: $0 [start|stop|restart|status]"
        ;;
esac