From 372906c16cb72de606e0d124592cb0e40740865e Mon Sep 17 00:00:00 2001 From: ramiyer28 Date: Wed, 9 Jan 2013 22:04:51 -0800 Subject: [PATCH] Simple INIT script for sidekiq MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Starts and Stops Sidekiq message processor.  --- examples/sidekiq | 92 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 examples/sidekiq diff --git a/examples/sidekiq b/examples/sidekiq new file mode 100644 index 00000000..804e659c --- /dev/null +++ b/examples/sidekiq @@ -0,0 +1,92 @@ +#!/bin/bash +# sidekiq Init script for Sidekiq +# chkconfig: 345 100 100 +# +# Description: Starts and Stops Sidekiq message processor for Stratus application. +# +# User-specified exit parameters used in this script: +# +# Exit Code 5 - Incorrect User ID +# Exit Code 6 - Directory not found + + +#Variable Set +APP="stratus" +APP_DIR="/opt/railsapps/${APP}" +APP_CONFIG="${APP_DIR}/config" +LOG_FILE="$APP_DIR/log/sidekiq.log" +LOCK_FILE="$APP_DIR/${APP}-lock" +PID_FILE="$APP_DIR/${APP}.pid" +GEMFILE="$APP_DIR/Gemfile" +SIDEKIQ="sidekiq" +APP_ENV="production" +BUNDLE="bundle" + +START_CMD="$BUNDLE exec $SIDEKIQ -e $APP_ENV -P $PID_FILE" +RETVAL=0 + + +start() { + + status + if [ $? -eq 1 ]; then + + [ `id -u` == '0' ] || (echo "$SIDEKIQ runs as root only .."; exit 5) + [ -d $APP_DIR ] || (echo "$APP_DIR not found!.. Exiting"; exit 6) + cd $APP_DIR + echo "Starting $SIDEKIQ message processor .. " + $START_CMD >> $LOG_FILE 2>&1 & + RETVAL=$? + #Sleeping for 8 seconds for process to be precisely visible in process table - See status () + sleep 8 + [ $RETVAL -eq 0 ] && touch $LOCK_FILE + return $RETVAL + else + echo "$SIDEKIQ message processor is already running .. " + fi + + +} + +stop() { + + echo "Stopping $SIDEKIQ message processor .." + SIG="INT" + kill -$SIG `cat $PID_FILE` + RETVAL=$? + [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE + return $RETVAL +} + + +status() { + + ps -ef | grep 'sidekiq [0-9].[0-9].[0-9]' | grep -v grep + return $? +} + + +case "$1" in + start) + start + ;; + stop) + stop + ;; + status) + status + + if [ $? -eq 0 ]; then + echo "$SIDEKIQ message processor is running .." + RETVAL=0 + else + echo "$SIDEKIQ message processor is stopped .." + RETVAL=1 + fi + ;; + *) + echo "Usage: $0 {start|stop|status}" + exit 0 + ;; +esac +exit $RETVAL