abiao пре 3 година
родитељ
комит
7b13495b1a
1 измењених фајлова са 80 додато и 0 уклоњено
  1. 80 0
      run_unicorn_example.sh

+ 80 - 0
run_unicorn_example.sh

@@ -0,0 +1,80 @@
+#!/bin/sh
+set -e
+# Example init script, this can be used with nginx, too,
+# since nginx and unicorn accept the same signals
+
+# Feel free to change any of the following variables for your app:
+TIMEOUT=${TIMEOUT-60}
+APP_ROOT=`pwd`
+PID=$APP_ROOT/tmp/pids/unicorn.pid
+PORT=6872
+MODE=production
+#MODE=development
+#MODE="test"
+#CMD="/usr/bin/unicorn -D -c $APP_ROOT/config/unicorn.rb"
+# bundle exec rake assets:precompile
+CMD="unicorn_rails -c $APP_ROOT/config/unicorn.rb -E $MODE -p $PORT -D"
+#INIT_CONF=$APP_ROOT/config/init.conf
+action="$1"
+set -u
+
+#test -f "$INIT_CONF" && . $INIT_CONF
+
+old_pid="$PID.oldbin"
+
+cd $APP_ROOT || exit 1
+
+sig () {
+	test -s "$PID" && kill -$1 `cat $PID`
+}
+
+oldsig () {
+	test -s $old_pid && kill -$1 `cat $old_pid`
+}
+
+case $action in
+start)
+	sig 0 && echo >&2 "Already running" && exit 0
+	$CMD
+	;;
+stop)
+	sig QUIT && exit 0
+	echo >&2 "Not running"
+	;;
+force-stop)
+	sig TERM && exit 0
+	echo >&2 "Not running"
+	;;
+restart|reload)
+	sig HUP && echo reloaded OK && exit 0
+	echo >&2 "Couldn't reload, starting '$CMD' instead"
+	$CMD
+	;;
+upgrade|r)
+	if sig USR2 && sleep 2 && sig 0 && oldsig QUIT
+	then
+		n=$TIMEOUT
+		while test -s $old_pid && test $n -ge 0
+		do
+			printf '.' && sleep 1 && n=$(( $n - 1 ))
+		done
+		echo
+
+		if test $n -lt 0 && test -s $old_pid
+		then
+			echo >&2 "$old_pid still exists after $TIMEOUT seconds"
+			exit 1
+		fi
+		exit 0
+	fi
+	echo >&2 "Couldn't upgrade, starting '$CMD' instead"
+       #	$CMD
+	;;
+reopen-logs)
+	sig USR1
+	;;
+*)
+	echo >&2 "Usage: $0 <start|stop|restart|upgrade(r)|force-stop|reopen-logs>"
+	exit 1
+	;;
+esac