| 
					
				 | 
			
			
				@@ -1,178 +0,0 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#!/bin/sh -e 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-### BEGIN INIT INFO 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Provides:          celeryd-multi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Required-Start:    $network $local_fs $remote_fs 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Required-Stop:     $network $local_fs $remote_fs 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Default-Start:     2 3 4 5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Default-Stop:      0 1 6 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Short-Description: celery task multiple workers daemon 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-### END INIT INFO 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# OS X Debug replacements to lsb-functions. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#log_action_msg () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#    echo $* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#log_daemon_msg () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#    echo $* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#log_end_msg () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#    if [ $1 -eq 0 ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#        echo "ok" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#    else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#        echo "failed!" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#    fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-set -e 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-CELERYD_PID_FILE="/var/run/celeryd-%n.pid" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-CELERYD_LOG_FILE="/var/log/celeryd-%n.log" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-CELERYD_LOG_LEVEL="INFO" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-CELERYD_NUM_WORKERS=2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-DEFAULT_CELERYD="celeryd" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# /etc/init.d/celeryd-multi start and stop the celery task worker daemon. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if test -f /etc/default/celeryd; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    . /etc/default/celeryd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-export CELERY_LOADER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-. /lib/lsb/init-functions 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-CELERYD_OPTS="$CELERYD_OPTS -f $CELERYD_LOG_FILE -l $CELERYD_LOG_LEVEL" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if [ -n "$2" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    CELERYD_OPTS="$CELERYD_OPTS $2" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Extra start-stop-daemon options, like user/group. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if [ -n "$CELERYD_USER" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    DAEMON_OPTS="$DAEMON_OPTS --chuid $CELERYD_USER" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if [ -n "$CELERYD_GROUP" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    DAEMON_OPTS="$DAEMON_OPTS --group $CELERYD_GROUP" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Are we running from init? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-run_by_init() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ([ "$previous" ] && [ "$runlevel" ]) || [ "$runlevel" = S ] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-check_dev_null() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    if [ ! -c /dev/null ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	if [ "$1" = log_end_msg ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    log_end_msg 1 || true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	if ! run_by_init; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    log_action_msg "/dev/null is not a character device!" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	exit 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-export PATH="${PATH:+$PATH:}/usr/sbin:/sbin" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if [ ! -z "$VIRTUALENV" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    export PATH="$VIRTUALENV/bin:$PATH" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    CELERYD="$VIRTUALENV/bin/$CELERYD" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if [ -f "$CELERYD" -a ! -x "$CELERYD" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    echo "ERROR: $CELERYD is not executable." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    echo "Please make it executable by doing: chmod +x '$CELERYD'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    echo "celeryd is disabled" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    exit 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-WORKERS=$CELERYD_NUM_WORKERS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-stop_worker () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    cmd="start-stop-daemon  --stop --quiet $* --pidfile $CELERYD_PID_FILE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    stopcmd=`celeryd-multi expand "$cmd" $WORKERS` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    log_daemon_msg "Stopping celery task workers..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    if eval "$stopcmd"; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        log_end_msg 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        log_end_msg 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-start_worker () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    check_dev_null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    cmd="start-stop-daemon --start $DAEMON_OPTS \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    --quiet --oknodo --background \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    --make-pidfile $* \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    --pidfile $CELERYD_PID_FILE \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    --exec $CELERYD --" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    for wname in `celeryd-multi names $WORKERS $CELERYD_OPTS`; do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        log_daemon_msg "Starting celery task worker" "$wname" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        startcmd=`celeryd-multi get "$wname" $WORKERS --cmd="$cmd" $CELERYD_OPTS` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if `$startcmd`; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            log_end_msg 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            log_end_msg 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-case "$1" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  start) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    start_worker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  stop) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    stop_worker --oknodo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  reload|force-reload) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    echo "Use start+stop" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  restart) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    stop_worker --retry 30 --oknodo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    start_worker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  try-restart) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    log_daemon_msg "Restarting celery task worker server" "celeryd" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    set +e 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    stop_worker --retry 30 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    RET="$?" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    set -e 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case $RET in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		# old daemon stopped 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		check_dev_null log_end_msg 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        start_worker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		# daemon not running 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		log_progress_msg "(not running)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		log_end_msg 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    *) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		# failed to stop 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		log_progress_msg "(failed to stop)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		log_end_msg 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  status) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    pidfiles=`celeryd-multi expand "$CELERYD_PID_FILE" $WORKERS $DAEMON_OPTS` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    for pidfile in $pidfiles; do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        status_of_proc -p $pidfile $CELERYD celeryd && exit 0 || exit $? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  *) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	log_action_msg "Usage: /etc/init.d/celeryd-multi {start|stop|force-reload|restart|try-restart|status}" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	exit 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-exit 0 
			 |