annotate init.d/rhodecode-daemon3 @ 1545:a7bee2a5de67 beta

Added header for redhat init.d script Updated contributors
author Marcin Kuzminski <marcin@python-works.com>
date Tue, 11 Oct 2011 08:39:18 +0200
parents 238b2805851f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1542
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
1 #!/bin/sh
1545
a7bee2a5de67 Added header for redhat init.d script
Marcin Kuzminski <marcin@python-works.com>
parents: 1542
diff changeset
2 ########################################
a7bee2a5de67 Added header for redhat init.d script
Marcin Kuzminski <marcin@python-works.com>
parents: 1542
diff changeset
3 #### THIS IS A REDHAT INIT.D SCRIPT ####
a7bee2a5de67 Added header for redhat init.d script
Marcin Kuzminski <marcin@python-works.com>
parents: 1542
diff changeset
4 ########################################
a7bee2a5de67 Added header for redhat init.d script
Marcin Kuzminski <marcin@python-works.com>
parents: 1542
diff changeset
5
1542
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
6 ##################################################
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
7 #
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
8 # RhodeCode server startup script
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
9 # Recommended default-startup: 2 3 4 5
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
10 # Recommended default-stop: 0 1 6
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
11 #
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
12 ##################################################
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
13
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
14
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
15 APP_NAME="rhodecode"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
16 # the location of your app
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
17 # since this is a web app, it should go in /var/www
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
18 APP_PATH="/var/www/$APP_NAME"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
19
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
20 CONF_NAME="production.ini"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
21
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
22 # write to wherever the PID should be stored, just ensure
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
23 # that the user you run paster as has the appropriate permissions
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
24 # same goes for the log file
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
25 PID_PATH="/var/run/rhodecode/pid"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
26 LOG_PATH="/var/log/rhodecode/rhodecode.log"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
27
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
28 # replace this with the path to the virtual environment you
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
29 # made for RhodeCode
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
30 PYTHON_PATH="/opt/python_virtualenvironments/rhodecode-venv"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
31
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
32 RUN_AS="rhodecode"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
33
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
34 DAEMON="$PYTHON_PATH/bin/paster"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
35
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
36 DAEMON_OPTS="serve --daemon \
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
37 --user=$RUN_AS \
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
38 --group=$RUN_AS \
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
39 --pid-file=$PID_PATH \
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
40 --log-file=$LOG_PATH $APP_PATH/$CONF_NAME"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
41
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
42 DESC="rhodecode-server"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
43 LOCK_FILE="/var/lock/subsys/$APP_NAME"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
44
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
45 # source CentOS init functions
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
46 . /etc/init.d/functions
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
47
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
48 RETVAL=0
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
49
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
50 remove_pid () {
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
51 rm -f ${PID_PATH}
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
52 rmdir `dirname ${PID_PATH}`
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
53 }
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
54
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
55 ensure_pid_dir () {
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
56 PID_DIR=`dirname ${PID_PATH}`
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
57 if [ ! -d ${PID_DIR} ] ; then
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
58 mkdir -p ${PID_DIR}
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
59 chown -R ${RUN_AS}:${RUN_AS} ${PID_DIR}
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
60 chmod 755 ${PID_DIR}
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
61 fi
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
62 }
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
63
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
64 start_rhodecode () {
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
65 ensure_pid_dir
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
66 PYTHON_EGG_CACHE="/tmp" daemon --pidfile $PID_PATH \
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
67 --user $RUN_AS "$DAEMON $DAEMON_OPTS"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
68 RETVAL=$?
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
69 [ $RETVAL -eq 0 ] && touch $LOCK_FILE
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
70 return $RETVAL
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
71 }
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
72
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
73 stop_rhodecode () {
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
74 if [ -e $LOCK_FILE ]; then
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
75 killproc -p $PID_PATH
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
76 RETVAL=$?
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
77 rm -f $LOCK_FILE
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
78 rm -f $PID_PATH
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
79 else
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
80 RETVAL=1
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
81 fi
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
82 return $RETVAL
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
83 }
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
84
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
85 status_rhodecode() {
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
86 if [ -e $LOCK_FILE ]; then
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
87 # exit with non-zero to indicate failure
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
88 RETVAL=1
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
89 else
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
90 RETVAL=0
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
91 fi
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
92 return $RETVAL
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
93 }
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
94
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
95 restart_rhodecode () {
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
96 stop_rhodecode
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
97 start_rhodecode
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
98 RETVAL=$?
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
99 }
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
100
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
101 case "$1" in
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
102 start)
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
103 echo -n $"Starting $DESC: "
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
104 start_rhodecode
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
105 echo
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
106 ;;
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
107 stop)
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
108 echo -n $"Stopping $DESC: "
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
109 stop_rhodecode
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
110 echo
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
111 ;;
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
112 status)
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
113 status_rhodecode
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
114 RETVAL=$?
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
115 if [ ! $RETVAL -eq 0 ]; then
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
116 echo "RhodeCode server is running..."
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
117 else
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
118 echo "RhodeCode server is stopped."
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
119 fi
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
120 ;;
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
121 restart)
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
122 echo -n $"Restarting $DESC: "
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
123 restart_rhodecode
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
124 echo
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
125 ;;
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
126 *)
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
127 echo $"Usage: $0 {start|stop|restart|status}"
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
128 RETVAL=1
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
129 ;;
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
130 esac
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
131
238b2805851f added a RedHat-based init.d startup script
Les Peabody <lpeabody@gmail.com>
parents:
diff changeset
132 exit $RETVAL