#!/bin/sh
#
# Start the NodeJS server
#

RUN_SPECIFIC_FILE="/home/qlx/cfg/run_specific"

case "$1" in
  start)
	echo "Starting NodeJS server..."
	/usr/bin/fc-cache &
	/bin/mkdir -p /var/log/node
	/bin/chown -R nodejs:nodejs /var/log/node
	/bin/sync
	fbv -i -d 1 /home/qlx/boot/boot20.png

	if [ -e ${RUN_SPECIFIC_FILE} ]; then
		# force node to cpu core 2 affinity
		su nodejs -c 'export NODE_PATH=/usr/lib/node_modules/; \
			# /usr/bin/taskset 0x02 /usr/lib/node_modules/forever/bin/forever -a -l /var/log/node/log_forever -o /var/log/node/log_output -e /var/log//node/log_error start \
		    /usr/bin/taskset 0x02 /usr/lib/node_modules/forever/bin/forever -a -l /dev/null -o /dev/null -e /dev/null start \
			/var/node/app.js &> /var/node/forever-node.log &' 
		echo "RUN_SPECIFIC"
	else
		# NO core affinity is being used
		su nodejs -c 'export NODE_PATH=/usr/lib/node_modules/; \
		    /usr/lib/node_modules/forever/bin/forever -a -l /dev/null -o /dev/null -e /dev/null start \
			/var/node/app.js &> /var/node/forever-node.log &' 
		echo "RUN_GENERAL"
	fi;
	;;
  stop)
	echo -n "Stopping NodeJS server..."
	su nodejs -c 'forever stop 0'
	;;
  restart|reload)
	"$0" stop
	"$0" start
	;;
  *)
	echo "Usage: $0 {start|stop|restart}"
	exit 1
esac

exit $?

