catalyst restart script
[p5sagit/Oyster.git] / share / deploy / git / catalyst-restart.sh
1 #!/bin/sh
2
3 # Really this should suck less, its a crap version of this:
4 # http://use.perl.org/~zzo/journal/34146
5
6 PROJECT=foo
7 APP_PATH=/path/to/checkout
8 FCGI_SOCKET_PATH=/tmp/$PROJECT.prod.socket
9 PID_PATH=/var/run/$PROJECT.prod.pid
10
11 case $1 in
12   start)
13   echo -n "Starting PROD MT: mt_fastcgi.pl"
14   cd $APP_PATH
15   script/${PROJECT}_fastcgi.pl -l $FCGI_SOCKET_PATH -p $PID_PATH -d -n 5
16   echo
17
18   # make real sure it's started
19   PID=`cat $PID_PATH`
20   if [ -n "$PID" ]
21   then
22     echo "Started"
23   else
24     echo "Start failed - trying again"
25     unlink $FCGI_SOCKET_PATH
26     $0 start
27   fi
28
29   ;;
30
31   stop)
32   echo -n "Stopping PROD MT: "
33   PID=`cat $PID_PATH`
34   if [ -n "$PID" ]
35   then
36     echo -n kill $PID
37     kill $PID
38     echo
39     unlink $FCGI_SOCKET_PATH
40   else
41     echo $PROJECT not running
42   fi
43   ;;
44
45   restart|force-reload)
46   $0 stop
47   sleep 10
48   $0 start
49   ;;
50
51   *)
52   echo "Usage: $0 { stop | start | restart }"
53   exit 1
54   ;;
55 esac