| 
					
				 | 
			
			
				@@ -0,0 +1,152 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#! /bin/sh 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# chkconfig: - 55 45 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# description:  Celery worker daemon 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# processname: celeryd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# config: /etc/sysconfig/celeryd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# pidfile: /var/run/celeryd.pid 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# To configure celeryd you probably need to tell it where to chdir. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# EXAMPLE CONFIGURATION 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# ===================== 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# this is an example configuration for a Python project: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# /etc/sysconfig/celeryd: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   # Where to chdir at start. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   CELERYD_CHDIR="/opt/Myproject/" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   # Extra arguments to celeryd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   CELERYD_OPTS="--time-limit 300" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   # Name of the celery config module.# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   CELERY_CONFIG_MODULE="celeryconfig" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# EXAMPLE DJANGO CONFIGURATION 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# ============================ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   # Where the Django project is. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   CELERYD_CHDIR="/opt/Project/" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   # Name of the projects settings module. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   DJANGO_SETTINGS_MODULE="settings" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   # Path to celeryd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   CELERYD="/opt/Project/manage.py" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   # Extra arguments to manage.py 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   CELERYD_OPTS="celeryd" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# AVAILABLE OPTIONS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# ================= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * CELERYD_OPTS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       Additional arguments to celeryd, see `celeryd --help` for a list. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * CELERYD_CHDIR 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       Path to chdir at start. Default is to stay in the current directory. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * CELERYD_PID_FILE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       Full path to the pidfile. Default is /var/run/celeryd.pid. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * CELERYD_LOG_FILE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       Full path to the celeryd logfile. Default is /var/log/celeryd.log 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * CELERYD_LOG_LEVEL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       Log level to use for celeryd. Default is INFO. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * CELERYD 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       Path to the celeryd program. Default is `celeryd`. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       You can point this to an virtualenv, or even use manage.py for django. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * CELERYD_USER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       User to run celeryd as. Default is current user. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * CELERYD_GROUP 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       Group to run celeryd as. Default is current user. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * VIRTUALENV 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       Full path to the virtualenv environment to activate. Default is none. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   * PYTHONPATH 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#       A directory to add to the Python path. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Source function library. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+. /etc/init.d/functions 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if test -f /etc/sysconfig/celeryd; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    . /etc/sysconfig/celeryd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+RETVAL=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+DEFAULT_CELERYD="/usr/bin/celeryd" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+CELERYD_LOG_FILE=${CELERYD_LOG_FILE:-${CELERYD_LOGFILE:-"/var/log/celeryd.log"}} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+CELERYD_PID_FILE=${CELERYD_PID_FILE:-${CELERYD_PIDFILE:-"/var/run/celeryd.pid"}} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+CELERYD_LOG_LEVEL=${CELERYD_LOG_LEVEL:-${CELERYD_LOGLEVEL:-"INFO"}} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+CELERYD_USER=${CELERYD_USER:-${CELERYD_USER:-"celeryd"}} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+CELERYD=${CELERYD:-$DEFAULT_CELERYD} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export CELERY_LOADER 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+CELERYD_OPTS="$CELERYD_OPTS -f $CELERYD_LOG_FILE -l $CELERYD_LOG_LEVEL --pidfile=$CELERYD_PID_FILE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if [ -n "$2" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    CELERYD_OPTS="$CELERYD_OPTS $2" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Append the Django settings module to use, if specified 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if [ -n "$DJANGO_SETTINGS_MODULE" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    CELERYD_OPTS="$CELERYD_OPTS --settings=$DJANGO_SETTINGS_MODULE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+start_worker () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    echo -n $"Starting deleryd: " 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    daemon --pidfile=$CELERYD_PID_FILE --user=$CELERYD_USER \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      PYTHONPATH=$PYTHONPATH:$CELERY_PYTHONPATH $CELERYD $CELERYD_OPTS 2>/dev/null & 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    RETVAL=$? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    sleep 3; echo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if [ -n "$VIRTUALENV" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        source $VIRTUALENV/bin/activate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    [ $RETVAL -eq 0 ] && touch /var/lock/subsys/celeryd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+stop_worker () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    echo -n $"Stopping celeryd: " 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    killproc -p $CELERYD_PID_FILE $CELERYD 2>/dev/null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    RETVAL=$? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    sleep 3; echo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if [ $RETVAL -eq 0 ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rm -f /var/lock/subsys/celeryd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rm -f $CELERYD_PID_FILE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+case "$1" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  start) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    start_worker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  stop) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    stop_worker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  restart) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    stop_worker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    start_worker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  status) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    status celeryd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  *) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    echoi $"Usage: $0 {start|stop|restart|status}" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    exit 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+exit $? 
			 |