view init.d/celeryd-upstart.conf @ 3043:b61824e61e68 beta

Don't cache dulwich Repos, in pararell multithreaded evniroment dulwich pack file openers can break badly. We need to create Repo() objects always for each call, even when it's taken from cache. Fixed issue with dulwich filedescriptor leak ref #573
author Marcin Kuzminski <marcin@python-works.com>
date Thu, 29 Nov 2012 19:29:33 +0100
parents 58df0b3ed377
children 99ad9d0af1a3
line wrap: on
line source

# celeryd - run the celeryd daemon as an upstart job for rhodecode
# 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 RhodeCode Mercurial Server"
author		"Matt Zuba <matt.zuba@goodwillaz.org"

start on starting rhodecode
stop on stopped rhodecode

respawn

umask 0022

env PIDFILE=/tmp/celeryd.pid
env APPINI=/var/hg/rhodecode/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/rhodecode/bin/paster celeryd $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