~upstart-devel/upstart/upstart-jobs

« back to all changes in this revision

Viewing changes to vivid/etc/init.d/trove-api

  • Committer: Dimitri John Ledkov
  • Date: 2014-11-19 12:58:41 UTC
  • Revision ID: dimitri.j.ledkov@intel.com-20141119125841-98dr37roy8dvcv3b
auto update

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/bin/sh
 
2
### BEGIN INIT INFO
 
3
# Provides:          trove-api
 
4
# Required-Start:    $network $local_fs $remote_fs $syslog
 
5
# Required-Stop:     $remote_fs
 
6
# Should-Start:      postgresql mysql keystone rabbitmq-server ntp
 
7
# Should-Stop:       postgresql mysql keystone rabbitmq-server ntp
 
8
# Default-Start:     2 3 4 5
 
9
# Default-Stop:      0 1 6
 
10
# Short-Description: Trove API
 
11
# Description:       Frontend Trove API server
 
12
### END INIT INFO
 
13
 
 
14
# Author: Thomas Goirand <zigo@debian.org>
 
15
 
 
16
# PATH should only include /usr/* if it runs after the mountnfs.sh script
 
17
PATH=/sbin:/usr/sbin:/bin:/usr/bin
 
18
DESC="Trove DBaaS API"
 
19
NAME=trove-api
 
20
DAEMON=/usr/bin/trove-api
 
21
DAEMON_ARGS="--config-file=/etc/trove/trove.conf --log-dir=/var/log/trove --logfile=api.log"
 
22
PIDFILE=/var/run/$NAME.pid
 
23
SCRIPTNAME=/etc/init.d/$NAME
 
24
SYSTEM_USER=trove
 
25
 
 
26
# Exit if the package is not installed
 
27
[ -x $DAEMON ] || exit 0
 
28
 
 
29
. /lib/lsb/init-functions
 
30
 
 
31
if [ ! -e /var/log/trove ] ; then
 
32
        mkdir -p /var/log/trove
 
33
        chown ${SYSTEM_USER} /var/log/trove
 
34
fi
 
35
 
 
36
do_start () {
 
37
        start-stop-daemon --start --background --quiet --chuid ${SYSTEM_USER}:${SYSTEM_USER} --make-pidfile --pidfile $PIDFILE --startas $DAEMON --test > /dev/null \
 
38
                || return 1
 
39
        start-stop-daemon --start --background --quiet --chuid ${SYSTEM_USER}:${SYSTEM_USER} --make-pidfile --pidfile $PIDFILE --startas $DAEMON -- \
 
40
                $DAEMON_ARGS \
 
41
                || return 2
 
42
}
 
43
 
 
44
do_stop () {
 
45
        start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE
 
46
        RETVAL="$?"
 
47
        rm -f $PIDFILE
 
48
        return "$RETVAL"
 
49
}
 
50
 
 
51
case "$1" in
 
52
start)
 
53
        log_daemon_msg "Starting $DESC" "$NAME"
 
54
        do_start
 
55
        case "$?" in
 
56
                0|1) log_end_msg 0 ;;
 
57
                2) log_end_msg 1 ;;
 
58
        esac
 
59
;;
 
60
stop)
 
61
        log_daemon_msg "Stopping $DESC" "$NAME"
 
62
        do_stop
 
63
        case "$?" in
 
64
                0|1) log_end_msg 0 ;;
 
65
                2) log_end_msg 1 ;;
 
66
        esac
 
67
;;
 
68
status)   
 
69
        status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
 
70
;;
 
71
restart|force-reload)
 
72
        log_daemon_msg "Restarting $DESC" "$NAME"
 
73
        do_stop
 
74
        case "$?" in
 
75
        0|1)
 
76
                do_start
 
77
                case "$?" in
 
78
                        0) log_end_msg 0 ;;
 
79
                        1) log_end_msg 1 ;; # Old process is still running
 
80
                        *) log_end_msg 1 ;; # Failed to start
 
81
                esac
 
82
        ;;
 
83
        *)
 
84
                # Failed to stop
 
85
                log_end_msg 1
 
86
        ;;
 
87
        esac   
 
88
;;
 
89
*)
 
90
        echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
 
91
        exit 3
 
92
;;
 
93
esac