]> TLD Linux GIT Repositories - packages/php.git/blobdiff - php-fpm.init
- PHP_5_4 branch from PLD
[packages/php.git] / php-fpm.init
diff --git a/php-fpm.init b/php-fpm.init
new file mode 100644 (file)
index 0000000..020fc78
--- /dev/null
@@ -0,0 +1,109 @@
+#!/bin/sh
+#
+# @processname@        PHP FastCGI Process Manager
+#
+# chkconfig:   345 80 30
+#
+# description: PHP FastCGI Process Manager
+#
+# processname: @processname@
+# config:      /etc/php/php-fpm.conf
+# pidfile:     /var/run/@processname@.pid
+#
+
+# Source function library
+. /etc/rc.d/init.d/functions
+
+# Get network config
+. /etc/sysconfig/network
+
+configfile=/etc/php/php-fpm.conf
+lockfile=/var/lock/subsys/@processname@
+pidfile=$(sed -ne  's,^pid\s*=\s*\(.*\),\1,p' $configfile)
+pidfile=${pidfile:-/var/run/@processname@.pid}
+
+start() {
+       # Check if the service is already running?
+       if [ -f $lockfile ]; then
+               msg_already_running "PHP FastCGI Process Manager (@processname@)"
+               return
+       fi
+
+       msg_starting "PHP FastCGI Process Manager (@processname@)"
+       daemon --pidfile $pidfile /usr/sbin/@processname@ --fpm-config $configfile
+       RETVAL=$?
+       [ $RETVAL -eq 0 ] && touch $lockfile
+}
+
+stop() {
+       if [ ! -f $lockfile ]; then
+               msg_not_running "PHP FastCGI Process Manager (@processname@)"
+               return
+       fi
+
+       # Stop daemons.
+       msg_stopping "PHP FastCGI Process Manager (@processname@)"
+       # always gracefully shut down @processname@
+       /sbin/start-stop-daemon -q --stop -s QUIT --retry QUIT/600/TERM/10 --pidfile $pidfile
+       [ "$?" -eq 0 ] && ok || fail
+       rm -f $lockfile
+}
+
+reload() {
+       local sig=${1:-HUP}
+       local retnr=${2:-7}
+       if [ ! -f $lockfile ]; then
+               msg_not_running "PHP FastCGI Process Manager (@processname@)"
+               RETVAL=$retnr
+               return
+       fi
+
+       msg_reloading "PHP FastCGI Process Manager (@processname@)"
+       killproc --pidfile $pidfile @processname@ -$sig
+       RETVAL=$?
+}
+
+condrestart() {
+       if [ ! -f $lockfile ]; then
+               msg_not_running "PHP FastCGI Process Manager (@processname@)"
+               RETVAL=$1
+               return
+       fi
+
+       stop
+       start
+}
+
+RETVAL=0
+# See how we were called.
+case "$1" in
+  start)
+       start
+       ;;
+  stop|quit)
+       stop
+       ;;
+  restart)
+       stop
+       start
+       ;;
+  try-restart)
+       condrestart 0
+       ;;
+  reload|force-reload)
+       reload USR2 7
+       ;;
+  flush-logs|logrotate)
+       reload USR1 0
+       ;;
+  status)
+       status  --pidfile $pidfile @processname@
+       RETVAL=$?
+       ;;
+  *)
+       msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|flush-logs|status}"
+       exit 3
+       ;;
+esac
+
+exit $RETVAL