Skip to content

Instantly share code, notes, and snippets.

@thiagozs
Created October 7, 2013 17:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save thiagozs/6871813 to your computer and use it in GitHub Desktop.
Save thiagozs/6871813 to your computer and use it in GitHub Desktop.
Node.js Forever Makefile tasks.
#
# Tasks
#
# - start :: starts application using forever
# - stop :: stops application using forever
# - restart :: restart application using forever
#
# This set's your local directory to to your NODE_PATH
NODE_EXEC = NODE_PATH=.:$(NODE_PATH)
# This is for local (non `-g`) npm installs.
# NODE_MODS = ./node_modules/.bin/
# Some good `forever` options.
FOREVER_OPTS = -p ./logs \
-l server_out.log \
-o ./logs/server_out.log \
-e ./logs/server_err.log \
--append \
--plain \
--minUptime 1000 \
--spinSleepTime 1000
start: setup/dirs
# starting app in server mode
$(NODE_EXEC) $(NODE_MODS)forever $(FOREVER_OPTS) $@ server.js
stop:
# stopping app in server mode
$(NODE_EXEC) $(NODE_MODS)forever $(FOREVER_OPTS) $@ server.js
restart: setup/dirs
# restarting app in server mode
$(NODE_EXEC) $(NODE_MODS)forever $(FOREVER_OPTS) $@ server.js
setup/dirs:
# creating required directories for `forever`
mkdir -p logs pids
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment