Subversion Repositories DevTools

Rev

Rev 1044 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1038 dpurdie 1
#!/usr/bin/env bash
2
 
3
#set -x
4
BLATUSR=releasem
5
BLATBIN=/home/${BLATUSR}/blat
6
PID="${BLATBIN}/run/blat.pid"
7
 
8
 
9
ARG=$1
10
cd "$BLATBIN"
11
 
12
start () { 
13
        echo Starting blat daemon now...
14
        su - ${BLATUSR} -c "perl $BLATBIN/blat.pl -pid=$PID 2>/tmp/blat.log 1>&2"
15
}
16
 
17
stop () { 
18
        if [ -f $PID ]; then
19
                echo Stopping daemon now...
20
                kill $(cat $PID);
21
        else
22
                echo "No pidfile found (not running?)"
23
        fi
24
}
25
 
26
logrotate () {
27
        echo Triggering a logrotate
28
        kill -HUP $(cat $PID)
29
}
30
 
31
#
32
#   Setup init levels
33
#   Linux and Solaris are different
34
#
35
setup() {
36
    if [ ! -f /etc/init.d/blatdaemon ] ; then
37
        echo "Error: /etc/init.d/blatdaemon does not exist"
38
        exit 1
39
    fi
40
 
41
    mtype=`uname`
42
    case "$mtype" in
43
    Linux)
44
        for ii in 2 3 4 5; do
45
            file=/etc/rc.d/rc$ii.d/S80blatdaemon
46
            [ -f $file ] || ln -s /etc/init.d/blatdaemon $file
47
        done
48
 
49
        for ii in 0 1 6 ; do 
50
            file=/etc/rc.d/rc$ii.d/K30blatdaemon
51
            [ -f $file ] || ln -s /etc/init.d/blatdaemon $file
52
        done
53
        ;;
54
 
55
    SunOS)
56
        for ii in 2 3; do
57
            file=/etc/rc$ii.d/S80blatdaemon
58
            [ -f $file ] || ln -s /etc/init.d/blatdaemon $file
59
        done
60
 
61
        for ii in 0 1 S ; do 
62
            file=/etc/rc$ii.d/K30blatdaemon
63
            [ -f $file ] || ln -s /etc/init.d/blatdaemon $file
64
        done
65
        ;;
66
 
67
    *)
68
        echo "$0 setup - Unknown machine type: $mtype"
69
        exit 1
70
        ;;
71
    esac        
72
}
73
 
74
 
75
case $ARG in
76
	start)
77
                start
78
	;;
79
 
80
	stop)
81
                stop
82
	;;
83
 
84
	restart)
85
                stop
86
                start
87
	;;
88
 
89
	logrotate)
90
                logrotate
91
	;;
92
 
93
    setup)    
94
                setup
95
    ;;   
96
 
97
	*)
98
                echo "Usage: $0 <start|stop|restart|logrotate|setup>"
99
                exit 1
100
	;;
101
esac