|
|
@ -0,0 +1,77 @@ |
|
|
|
|
|
#!/bin/bash |
|
|
|
|
|
### BEGIN INIT INFO |
|
|
|
|
|
# Provides: /home/cocoon/workspace/bobinoscope/bin/www |
|
|
|
|
|
# Required-Start: $remote_fs $syslog |
|
|
|
|
|
# Required-Stop: $remote_fs $syslog |
|
|
|
|
|
# Default-Start: 2 3 4 5 |
|
|
|
|
|
# Default-Stop: 0 1 6 |
|
|
|
|
|
# Short-Description: forever running /home/cocoon/workspace/bobinoscope/bin/www |
|
|
|
|
|
# Description: /home/cocoon/workspace/bobinoscope/bin/www |
|
|
|
|
|
### END INIT INFO |
|
|
|
|
|
# |
|
|
|
|
|
# initd a node app |
|
|
|
|
|
# Based on a script posted by https://gist.github.com/jinze at https://gist.github.com/3748766 |
|
|
|
|
|
# |
|
|
|
|
|
|
|
|
|
|
|
# Source function library. |
|
|
|
|
|
. /lib/lsb/init-functions |
|
|
|
|
|
|
|
|
|
|
|
pidFile="/var/run/njs-bobinoscope.pid" |
|
|
|
|
|
logFile="/var/log/njs-bobinoscope" |
|
|
|
|
|
|
|
|
|
|
|
command="/usr/local/bin/node" |
|
|
|
|
|
nodeApp="/home/cocoon/workspace/bobinoscope/bin/www" |
|
|
|
|
|
foreverApp="/usr/local/bin/forever" |
|
|
|
|
|
|
|
|
|
|
|
start() { |
|
|
|
|
|
echo "Starting $nodeApp" |
|
|
|
|
|
|
|
|
|
|
|
# Notice that we change the PATH because on reboot |
|
|
|
|
|
# the PATH does not include the path to node. |
|
|
|
|
|
# Launching forever with a full path |
|
|
|
|
|
# does not work unless we set the PATH. |
|
|
|
|
|
PATH=/usr/local/bin:$PATH |
|
|
|
|
|
export NODE_ENV=production |
|
|
|
|
|
#PORT=80 |
|
|
|
|
|
$foreverApp start --pidFile $pidFile -l $logFile -a -d -c "$command" $nodeApp |
|
|
|
|
|
RETVAL=$? |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
restart() { |
|
|
|
|
|
echo -n "Restarting $nodeApp" |
|
|
|
|
|
$foreverApp restart $nodeApp |
|
|
|
|
|
RETVAL=$? |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
stop() { |
|
|
|
|
|
echo -n "Shutting down $nodeApp" |
|
|
|
|
|
$foreverApp stop $nodeApp |
|
|
|
|
|
RETVAL=$? |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
status() { |
|
|
|
|
|
echo -n "Status $nodeApp" |
|
|
|
|
|
$foreverApp list |
|
|
|
|
|
RETVAL=$? |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
case "$1" in |
|
|
|
|
|
start) |
|
|
|
|
|
start |
|
|
|
|
|
;; |
|
|
|
|
|
stop) |
|
|
|
|
|
stop |
|
|
|
|
|
;; |
|
|
|
|
|
status) |
|
|
|
|
|
status |
|
|
|
|
|
;; |
|
|
|
|
|
restart) |
|
|
|
|
|
restart |
|
|
|
|
|
;; |
|
|
|
|
|
*) |
|
|
|
|
|
echo "Usage: {start|stop|status|restart}" |
|
|
|
|
|
exit 1 |
|
|
|
|
|
;; |
|
|
|
|
|
esac |
|
|
|
|
|
exit $RETVAL |
|
|
|
|
|
|