Files @ 9584eb51ae52
Branch filter:

Location: kallithea/init.d/celeryd-upstart.conf

Mads Kiilerich
git: initialize hook app environment with paste as we do in other places

We want to use the whole paste / tg stack because it will do more
initialization for us - consistently, and in the right order.

This will allow a next change to avoid a problem in our custom beaker
initialization.

Going through paste might be a bit more heavy and slower than before, but it is
only run once for each git push.

Ultimately, we should probably get rid of the special hook entry point, and
just use kallithea-cli as the only entry point.
# 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/kallithea-cli celery-run -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