mirror of
https://github.com/wassname/openshift-celery-cartridge.git
synced 2026-07-25 13:20:31 +08:00
64 lines
2.0 KiB
Bash
Executable File
64 lines
2.0 KiB
Bash
Executable File
#!/bin/bash -e
|
|
|
|
PATH=${OPENSHIFT_CELERY_DIR}bin/:${OPENSHIFT_CELERY_DIR}usr/bin:$PATH
|
|
|
|
#TODO add scaling, better status, variable worker names
|
|
|
|
function start {
|
|
if env | grep -q ^OPENSHIFT_CELERY_IMPORTS=
|
|
then
|
|
echo "Starting"
|
|
echo "${OPENSHIFT_CELERY_DIR}usr/celery worker -A ${OPENSHIFT_CELERY_IMPORTS=OPENSHIFT_APP_NAME} -b ${OPENSHIFT_CELERY_BROKER_URL} --pidfile=${OPENSHIFT_CELERY_DIR}etc/celeryd.pid --loglevel=DEBUG --logfile=${OPENSHIFT_TMP_DIR}celery_log.txt" >> `echo $OPENSHIFT_TMP_DIR`blarg.txt
|
|
${OPENSHIFT_CELERY_DIR}usr/celery multi start worker --app=${OPENSHIFT_CELERY_IMPORTS=${OPENSHIFT_APP_NAME}} --broker=${OPENSHIFT_CELERY_BROKER_URL="amqp://guest@localhost//"} --pidfile=${OPENSHIFT_CELERY_DIR}etc/celeryd.pid --hostname=${OPENSHIFT_APP_DNS} --loglevel=DEBUG --logfile=${OPENSHIFT_TMP_DIR}celery_log.txt
|
|
else
|
|
echo "Can't start celery as env var OPENSHIFT_CELERY_IMPORTS has not been set. More: https://developers.openshift.com/en/managing-environment-variables.html"
|
|
fi
|
|
}
|
|
|
|
function stop {
|
|
if ps -p `cat ${OPENSHIFT_CELERY_DIR}etc/celeryd.pid` > /dev/null;
|
|
then
|
|
kill -9 `cat ${OPENSHIFT_CELERY_DIR}etc/celeryd.pid`
|
|
else
|
|
echo "nothing to kill"
|
|
fi
|
|
echo "stopped"
|
|
}
|
|
|
|
function restart {
|
|
celery multi restart worker --pidfile=${OPENSHIFT_CELERY_DIR}etc/celeryd.pid
|
|
echo "not yet implemented"
|
|
|
|
}
|
|
|
|
function status() {
|
|
pid=`cat ${OPENSHIFT_CELERY_DIR}etc/celeryd.pid`
|
|
info=`celery multi show worker`
|
|
client_result $pwd
|
|
if [ -f $pid ] && ( kill -0 $(cat $pid) ); then
|
|
client_result "Celery is running ${info} at pid:${pid}"
|
|
else
|
|
client_result "Celery is not running"
|
|
fi
|
|
}
|
|
|
|
function catchall {
|
|
echo "not yet implemented"
|
|
}
|
|
|
|
case "$1" in
|
|
start) start ;;
|
|
stop) stop ;;
|
|
restart) restart ;;
|
|
status) status ;;
|
|
reload) catchall ;;
|
|
tidy) catchall ;;
|
|
pre-build) catchall ;;
|
|
build) catchall ;;
|
|
deploy) catchall ;;
|
|
post-deploy) catchall ;;
|
|
*) exit 0
|
|
esac
|
|
|
|
exit 0
|