]> git.pld-linux.org Git - packages/mongodb.git/blob - mongodb.init
Make init script sane
[packages/mongodb.git] / mongodb.init
1 #!/bin/sh
2 #
3 # mongod                mongod
4 #
5 # chkconfig:    345 60 40
6 #
7 # description:  mongod is a cache daemon.
8 #
9 # processname:  mongod
10 # pidfile:      /var/run/mongod.pid
11 #
12
13 # Source function library
14 . /etc/rc.d/init.d/functions
15
16 # Get network config
17 . /etc/sysconfig/network
18
19 MONGOD_BIN="/usr/bin/mongod"
20 MONGOD_LOGFILE="/var/log/mongo/mongod.log"
21 MONGOD_PIDFILE="/var/run/mongod.pid"
22 MONGOD_CONFIG="/etc/sysconfig/mongod"
23
24 MONGOD_USER=mongod
25 MONGOD_GROUP=mongod
26
27 # Get service config
28 [ -f /etc/sysconfig/mongod ] && . /etc/sysconfig/mongod
29
30 start() {
31         # Check if the service is already running?
32         if [ -f /var/lock/subsys/mongod ]; then
33                 msg_already_running "mongod"
34                 return
35         fi
36
37     msg_starting "mongod"
38     daemon --pidfile $MONGOD_PIDFILE --user $MONGOD_USER \
39         $MONGOD_BIN --config /etc/mongod.conf run
40     ret=$?
41     [ $ret = 0 ] || RETVAL=$?
42         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/mongod
43 }
44
45 stop() {
46         if [ ! -f /var/lock/subsys/mongod ]; then
47                 msg_not_running "mongod"
48                 return
49         fi
50
51     msg_stopping "mongod"
52     killproc --pidfile $MONGOD_PIDFILE mongod
53         rm -f /var/lock/subsys/mongod >/dev/null 2>&1
54 }
55
56 condrestart() {
57         if [ ! -f /var/lock/subsys/mongod ]; then
58                 msg_not_running "mongod"
59                 RETVAL=$1
60                 return
61         fi
62
63         stop
64         start
65 }
66
67 reload() {
68         if [ ! -f /var/lock/subsys/mongod ]; then
69                 msg_not_running "mongod"
70                 RETVAL=7
71                 return
72         fi
73
74     msg_reloading "mongod"
75     killproc --pidfile $MONGOD_PIDFILE mongod -HUP
76 }
77
78 RETVAL=0
79 # See how we were called.
80 case "$1" in
81   start)
82         start
83         ;;
84   stop)
85         stop
86         ;;
87   restart)
88         stop
89         start
90         ;;
91   try-restart)
92         condrestart 0
93         ;;
94   reload|force-reload)
95         reload
96         ;;
97   status)
98         status mongod
99         exit $?
100         ;;
101   *)
102         msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
103         exit 3
104 esac
105
106 exit $RETVAL
This page took 0.034754 seconds and 4 git commands to generate.