|
@@ -36,8 +36,9 @@ if test -f /etc/default/${SCRIPT_NAME}; then
|
|
|
fi
|
|
|
|
|
|
CELERY_BIN=${CELERY_BIN:-"celery"}
|
|
|
-DEFAULT_PID_FILE="/var/run/celery/${SCRIPT_NAME}.pid"
|
|
|
-DEFAULT_LOG_FILE="/var/log/celery/${SCRIPT_NAME}.log"
|
|
|
+DEFAULT_USER="celery"
|
|
|
+DEFAULT_PID_FILE="/var/run/celery/beat.pid"
|
|
|
+DEFAULT_LOG_FILE="/var/log/celery/beat.log"
|
|
|
DEFAULT_LOG_LEVEL="INFO"
|
|
|
DEFAULT_CELERYBEAT="$CELERY_BIN beat"
|
|
|
|
|
@@ -50,6 +51,8 @@ if [ ! -z "$CELERY_APP" ]; then
|
|
|
CELERY_APP_ARG="--app=$CELERY_APP"
|
|
|
fi
|
|
|
|
|
|
+CELERYBEAT_USER=${CELERYBEAT_USER:-${CELERYD_USER:-$DEFAULT_USER}}
|
|
|
+
|
|
|
# Set CELERY_CREATE_DIRS to always create log/pid dirs.
|
|
|
CELERY_CREATE_DIRS=${CELERY_CREATE_DIRS:-0}
|
|
|
CELERY_CREATE_RUNDIR=$CELERY_CREATE_DIRS
|
|
@@ -75,12 +78,6 @@ CELERYBEAT_LOG_DIR=`dirname $CELERYBEAT_LOG_FILE`
|
|
|
CELERYBEAT_PID_DIR=`dirname $CELERYBEAT_PID_FILE`
|
|
|
|
|
|
# Extra start-stop-daemon options, like user/group.
|
|
|
-if [ -n "$CELERYBEAT_USER" ]; then
|
|
|
- DAEMON_OPTS="$DAEMON_OPTS --uid $CELERYBEAT_USER"
|
|
|
-fi
|
|
|
-if [ -n "$CELERYBEAT_GROUP" ]; then
|
|
|
- DAEMON_OPTS="$DAEMON_OPTS --gid $CELERYBEAT_GROUP"
|
|
|
-fi
|
|
|
|
|
|
CELERYBEAT_CHDIR=${CELERYBEAT_CHDIR:-$CELERYD_CHDIR}
|
|
|
if [ -n "$CELERYBEAT_CHDIR" ]; then
|
|
@@ -174,9 +171,13 @@ stop_beat () {
|
|
|
fi
|
|
|
}
|
|
|
|
|
|
+_chuid () {
|
|
|
+ su "$CELERYBEAT_USER" -c "$CELERYBEAT $*"
|
|
|
+}
|
|
|
+
|
|
|
start_beat () {
|
|
|
echo "Starting ${SCRIPT_NAME}..."
|
|
|
- $CELERYBEAT $CELERY_APP_ARG $CELERYBEAT_OPTS $DAEMON_OPTS --detach \
|
|
|
+ _chuid $CELERY_APP_ARG $CELERYBEAT_OPTS $DAEMON_OPTS --detach \
|
|
|
--pidfile="$CELERYBEAT_PID_FILE"
|
|
|
}
|
|
|
|