[MERGE] with addons-trunk and resolve conflict in base_iban
[odoo/odoo.git] / install / openerp-server.init
1 #!/bin/bash
2 # openerp-server        This shell script takes care of starting and stopping
3 #                       OpenERP server
4 #
5 # chkconfig: 345 95 05
6 # description: OpenERP server
7 #
8 # pidfile: /var/run/openerp-server.pid
9 # config: /etc/openerp-server.conf
10
11 ### BEGIN INIT INFO
12 # Provides: openerp-server
13 # Required-Start: postgresql
14 # Required-Stop: postgresql
15 # Should-Start: $network harddrake
16 # Default-Start: 345
17 # Short-Description: Launches the OpenERP server.
18 # Description: This startup script launches the OpenERP server.
19 ### END INIT INFO
20
21 # Source function library.
22 . /etc/rc.d/init.d/functions
23
24 PIDFILE=/var/run/openerp/openerp-server.pid
25 LOCKFILE=/var/lock/subsys/openerp-server
26 LOGFILE=/var/log/openerp/openerp-server.log
27
28 OPTS="--pidfile=$PIDFILE --logfile=$LOGFILE"
29
30 prog="openerp-server"
31 desc="OpenERP Server Daemon"
32
33 # check if the openerp-server conf file is present, then use it
34 if [ -f /etc/openerp-server.conf ]; then
35     OPTS="$OPTS -c /etc/openerp-server.conf"
36 fi
37
38 # Source function library
39 if [ -f /etc/init.d/functions ] ; then
40     . /etc/init.d/functions
41 elif [ -f /etc/rc.d/init.d/functions ] ; then
42     . /etc/rc.d/init.d/functions
43 else
44  exit 0
45 fi
46
47 # check the existence of the openerp-server script
48 [ -z "/usr/bin/openerp-server" ] && exit 0
49
50 RETVAL=0
51
52 start() {
53     if [ -d /etc/openerp/start.d ] ; then
54         echo -n $"Preparing $desc: "
55         run-parts --exit-on-error /etc/openerp/start.d
56         RETVAL=$?
57         echo
58         [ $RETVAL -ne 0 ] && return $RETVAL
59     fi
60     
61     echo -n $"Starting $desc ($prog): "
62     daemon --user openerp --check openerp-server \
63     "/usr/bin/setsid /usr/bin/openerp-server \
64     -c /etc/openerp-server.conf \
65     --pidfile=$PIDFILE \
66     --logfile=$LOGFILE &"
67
68     RETVAL=$?
69     echo
70     [ $RETVAL -eq 0 ] && touch $LOCKFILE
71     return $RETVAL
72 }
73
74 stop() {
75     echo -n $"Stopping $desc ($prog): "
76     kill -TERM `cat $PIDFILE` > /dev/null 2>&1
77     RETVAL=$?
78     if [ $RETVAL -eq 0 ] ; then
79         rm -f $LOCKFILE
80
81         echo_success
82         echo
83     else
84         echo_failure
85         echo
86     fi
87     if [ -d /etc/openerp/stop.d ] ; then
88         echo -n $"Clearing $desc: "
89         run-parts /etc/openerp/stop.d
90         echo
91     fi
92     return $RETVAL
93 }
94
95 restart() {
96     stop
97     start
98 }    
99
100 condrestart() {
101     [ -e $LOCKFILE ] && restart || :
102 }
103
104 status() { 
105     if [ -f $PIDFILE ] ; then
106         checkpid `cat $PIDFILE`
107         RETVAL=$?
108         if [ $RETVAL -eq 0 ] ; then
109             echo  $"$prog is running..."
110         else
111             echo  $"$prog is stopped"
112         fi
113     else
114         echo  $"$prog is stopped"
115     fi
116     return $RETVAL
117 }
118
119 case "$1" in
120 start)
121     start
122     ;;
123
124 stop)
125     stop
126     ;;
127
128 restart|reload)
129     restart
130     ;;
131
132 condrestart)
133     condrestart
134     ;;
135
136 status)
137     status
138     ;;
139
140 probe)
141     exit 0
142     ;;
143
144 *)
145     echo $"Usage: $0 {start|stop|status|restart|condrestart|reload}"
146     exit 1
147 esac