Files
@ b9853a3cc254
Branch filter:
Location: kallithea/init.d/celeryd-upstart.conf - annotation
b9853a3cc254
923 B
text/plain
celery: simplify internal configuration and app creation
We used celery.app.app_or_default() which creates a "global fallback app
instance" which relies on the CELERY_LOADER environment variable to load the
configuration. That worked but was messy.
Instead, do something more like described in
http://docs.celeryproject.org/en/3.1/userguide/application.html where the app
is a celery.Celery() instance and configuration is loaded explicitly by its
config_from_object method. Using config_from_object we don't need explicit
invocation of import_default_modules and can take pass PylonsSettingsProxy
directly, leaving PylonsLoader unused and removed.
Modified by Mads Kiilerich.
We used celery.app.app_or_default() which creates a "global fallback app
instance" which relies on the CELERY_LOADER environment variable to load the
configuration. That worked but was messy.
Instead, do something more like described in
http://docs.celeryproject.org/en/3.1/userguide/application.html where the app
is a celery.Celery() instance and configuration is loaded explicitly by its
config_from_object method. Using config_from_object we don't need explicit
invocation of import_default_modules and can take pass PylonsSettingsProxy
directly, leaving PylonsLoader unused and removed.
Modified by Mads Kiilerich.
99ad9d0af1a3 58df0b3ed377 58df0b3ed377 58df0b3ed377 e285bb7abb28 e285bb7abb28 58df0b3ed377 99ad9d0af1a3 99ad9d0af1a3 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 99ad9d0af1a3 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 2c3d30095d5e 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 58df0b3ed377 | # celeryd - run the celeryd daemon as an upstart job for kallithea
# Change variables/paths as necessary and place file /etc/init/celeryd.conf
# start/stop/restart as normal upstart job (ie: $ start celeryd)
description "Celery for Kallithea Mercurial Server"
author "Matt Zuba <matt.zuba@goodwillaz.org"
start on starting kallithea
stop on stopped kallithea
respawn
umask 0022
env PIDFILE=/tmp/celeryd.pid
env APPINI=/var/hg/kallithea/production.ini
env HOME=/var/hg
env USER=hg
# To use group (if different from user), you must edit sudoers file and change
# root's entry from (ALL) to (ALL:ALL)
# env GROUP=hg
script
COMMAND="/var/hg/.virtualenvs/kallithea/bin/gearbox celeryd -c $APPINI -- --pidfile=$PIDFILE"
if [ -z "$GROUP" ]; then
exec sudo -u $USER $COMMAND
else
exec sudo -u $USER -g $GROUP $COMMAND
fi
end script
post-stop script
rm -f $PIDFILE
end script
|