Subversion Repositories DevTools

Rev

Rev 1044 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3846 dpurdie 1
#!/usr/bin/env bash
1038 dpurdie 2
 
3846 dpurdie 3
### BEGIN INIT INFO
4
# Provides:          BlatFileTransfer
5
# Required-Start:    $local_fs $remote_fs
6
# Required-Stop:
7
# Default-Start:     2 3 4 5
8
# Default-Stop:      0 1 6
9
# X-Interactive:     true
10
# Short-Description: Blat File Transfer
11
# Description:       Dpkg_archive sync between VIX sites
12
### END INIT INFO
13
 
1038 dpurdie 14
#set -x
3846 dpurdie 15
BLATUSR=buildadm
1038 dpurdie 16
BLATBIN=/home/${BLATUSR}/blat
17
PID="${BLATBIN}/run/blat.pid"
18
 
19
 
20
ARG=$1
21
cd "$BLATBIN"
22
 
1044 dpurdie 23
start () {
1038 dpurdie 24
        echo Starting blat daemon now...
1044 dpurdie 25
        SU="bash -c "
26
        [ "$USER" != "$BLATUSR" ] && SU="su - ${BLATUSR} -c "
27
        $SU "perl $BLATBIN/blat.pl -pid=$PID 2>/tmp/blat.log 1>&2"
1038 dpurdie 28
}
29
 
3846 dpurdie 30
stop () {
1038 dpurdie 31
        if [ -f $PID ]; then
32
                echo Stopping daemon now...
3846 dpurdie 33
                kill ` cat $PID `
1038 dpurdie 34
        else
35
                echo "No pidfile found (not running?)"
36
        fi
37
}
38
 
39
logrotate () {
40
        echo Triggering a logrotate
3846 dpurdie 41
        kill -HUP ` cat $PID `
1038 dpurdie 42
}
43
 
44
#
45
#   Setup init levels
46
#   Linux and Solaris are different
47
#
48
setup() {
49
    if [ ! -f /etc/init.d/blatdaemon ] ; then
50
        echo "Error: /etc/init.d/blatdaemon does not exist"
51
        exit 1
52
    fi
53
 
54
    mtype=`uname`
3846 dpurdie 55
    if [ -x /usr/sbin/update-rc.d ] ; then mtype=Ubuntu; fi
56
 
1038 dpurdie 57
    case "$mtype" in
3846 dpurdie 58
    Ubuntu)
59
        /usr/sbin/update-rc.d -f blatdaemon remove
60
        /usr/sbin/update-rc.d blatdaemon defaults
61
        ;;
62
 
1038 dpurdie 63
    Linux)
64
        for ii in 2 3 4 5; do
65
            file=/etc/rc.d/rc$ii.d/S80blatdaemon
66
            [ -f $file ] || ln -s /etc/init.d/blatdaemon $file
67
        done
3846 dpurdie 68
 
69
        for ii in 0 1 6 ; do
1038 dpurdie 70
            file=/etc/rc.d/rc$ii.d/K30blatdaemon
71
            [ -f $file ] || ln -s /etc/init.d/blatdaemon $file
72
        done
73
        ;;
3846 dpurdie 74
 
1038 dpurdie 75
    SunOS)
76
        for ii in 2 3; do
77
            file=/etc/rc$ii.d/S80blatdaemon
78
            [ -f $file ] || ln -s /etc/init.d/blatdaemon $file
79
        done
3846 dpurdie 80
 
81
        for ii in 0 1 S ; do
1038 dpurdie 82
            file=/etc/rc$ii.d/K30blatdaemon
83
            [ -f $file ] || ln -s /etc/init.d/blatdaemon $file
84
        done
85
        ;;
3846 dpurdie 86
 
1038 dpurdie 87
    *)
88
        echo "$0 setup - Unknown machine type: $mtype"
89
        exit 1
90
        ;;
3846 dpurdie 91
    esac
1038 dpurdie 92
}
93
 
94
 
95
case $ARG in
3846 dpurdie 96
        start)
1038 dpurdie 97
                start
3846 dpurdie 98
        ;;
1038 dpurdie 99
 
3846 dpurdie 100
        stop)
1038 dpurdie 101
                stop
3846 dpurdie 102
        ;;
1038 dpurdie 103
 
3846 dpurdie 104
        restart)
1038 dpurdie 105
                stop
106
                start
3846 dpurdie 107
        ;;
1038 dpurdie 108
 
3846 dpurdie 109
        logrotate)
1038 dpurdie 110
                logrotate
3846 dpurdie 111
        ;;
112
 
113
    setup)
1038 dpurdie 114
                setup
3846 dpurdie 115
    ;;
1038 dpurdie 116
 
3846 dpurdie 117
        *)
1038 dpurdie 118
                echo "Usage: $0 <start|stop|restart|logrotate|setup>"
119
                exit 1
3846 dpurdie 120
        ;;
1038 dpurdie 121
esac
3846 dpurdie 122