#!/bin/sh # # trac-spawn-fcgi Spawn a trac.fcgi process. # # chkconfig: 345 90 10 # description: Starts Trac FastCGI python script \ # for use with web-servers. # processname: /usr/bin/trac-spawn-fcgi # config: /etc/sysconfig/trac-spawn-fcgi # pidfile: /var/run/trac-spawn-fcgi.pid # Do not load RH compatibility interface. WITHOUT_RC_COMPAT=1 # Source function library. . /etc/init.d/functions PYTHON=/usr/bin/python SPAWNFCGI=/usr/bin/trac-spawn-fcgi PIDFILE=/var/run/trac-spawn-fcgi/trac-spawn-fcgi.pid LOCKFILE=/var/lock/subsys/trac-spawn-fcgi RETVAL=0 # Source config SourceIfNotEmpty /etc/sysconfig/trac-spawn-fcgi [ -x "$SPAWNFCGI" ] || exit [ -x "$FCGIPROGRAM" ] || exit start() { ALLOWED_ENV="TRAC_ENV TRAC_ENV_PARENT_DIR" for i in $ALLOWED_ENV; do test -n "${!i}" && export $i=${!i} done FCGIBASENAME=`basename $FCGIPROGRAM` start_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user "$USERID" --name "$FCGIBASENAME" -- "$SPAWNFCGI" -p "$FCGIPORT" -f "$FCGIPROGRAM" -P "$PIDFILE" -u "$USERID" -g "$GROUPID" RETVAL=$? return $RETVAL } stop() { stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user "$USERID" -- "$PYTHON" RETVAL=$? return $RETVAL } restart() { stop start } reload() { msg_reloading template stop_daemon --pidfile "$PIDFILE" --expect-user "$USERID" -HUP -- "$PYTHON" RETVAL=$? return $RETVAL } # See how we were called. case "$1" in start) start ;; stop) stop ;; reload) restart ;; restart) restart ;; condstop) if [ -e "$LOCKFILE" ]; then stop fi ;; condrestart) if [ -e "$LOCKFILE" ]; then restart fi ;; condreload) if [ -e "$LOCKFILE" ]; then restart fi ;; status) status --pidfile "$PIDFILE" --expect-user "$USERID" -- "$PYTHON" RETVAL=$? ;; *) msg_usage "${0##*/} {start|stop|reload|restart|condstop|condrestart|condreload|status}" RETVAL=1 esac exit $RETVAL