#!/bin/bash
|
#
|
# /etc/init.d/hhvm_{SYSTEM_USER}
|
#
|
### BEGIN INIT INFO
|
# Provides: hhvm_{SYSTEM_USER}
|
# Required-Start: $remote_fs $network
|
# Required-Stop: $remote_fs $network
|
# Default-Start: 2 3 4 5
|
# Default-Stop: 0 1 6
|
# Description: Starts The HHVM FastCGI Daemon
|
### END INIT INFO
|
PATH=/sbin:/usr/sbin:/bin:/usr/bin
|
DESC="HHVM FastCGI Daemon"
|
NAME=hhvm
|
|
do_start()
|
{
|
if [ ! -d /var/run/hhvm ]; then
|
mkdir -p -m0777 /var/run/hhvm
|
else
|
chmod 777 /var/run/hhvm
|
fi
|
|
if [[ -e "/var/run/hhvm/hhvm_{SYSTEM_USER}.pid" ]] ; then
|
kill -0 `cat /var/run/hhvm/hhvm_{SYSTEM_USER}.pid` >/dev/null 2>&1 ;
|
case "$?" in
|
0)
|
return 1
|
;;
|
esac
|
fi
|
|
umask 017
|
sudo -u {SYSTEM_USER} touch /var/run/hhvm/hhvm_{SYSTEM_USER}.pid
|
/usr/bin/hhvm --mode daemon -vServer.Type=fastcgi --user {SYSTEM_USER} -vServer.FileSocket=/var/run/hhvm/hhvm.{SYSTEM_USER}.sock -vLog.Level=Warning -vLog.UseLogFile=false -vRepo.Central.Path=/var/run/hhvm/hhvm.{SYSTEM_USER}.hhbc -vPidFile=/var/run/hhvm/hhvm_{SYSTEM_USER}.pid & echo $! > /var/run/hhvm/hhvm_{SYSTEM_USER}.pid
|
}
|
|
do_stop()
|
{
|
if [[ -e "/var/run/hhvm/hhvm_{SYSTEM_USER}.pid" ]] ; then
|
kill -SIGTERM `cat /var/run/hhvm/hhvm_{SYSTEM_USER}.pid` >/dev/null 2>&1 ;
|
fi
|
rm -f /var/run/hhvm/hhvm.{SYSTEM_USER}.sock /var/run/hhvm/hhvm.{SYSTEM_USER}.hhbc /var/run/hhvm/hhvm_{SYSTEM_USER}.pid
|
}
|
|
case "$1" in
|
start)
|
do_start
|
;;
|
stop)
|
do_stop
|
;;
|
restart|force-reload)
|
do_stop
|
case "$?" in
|
0|1)
|
do_start
|
;;
|
*)
|
;;
|
esac
|
;;
|
*)
|
exit 3
|
;;
|
esac
|
|
:
|