#!/bin/sh # PROVIDE: mgceleryd # REQUIRE: LOGIN cleanvar # KEYWORD: shutdown . /etc/rc.subr name="mgceleryd" rcvar="mgceleryd_enable" load_rc_config $name : ${mgceleryd_enable:="NO"} : ${mgceleryd_path:="/usr/local/www/photos.meutel.net/mediagoblin"} : ${mgceleryd_user:="www"} : ${mgceleryd_mgconfig:="$mgceleryd_path/mediagoblin_local.ini"} : ${mgceleryd_config_module:="mediagoblin.init.celery.from_celery"} : ${mgceleryd_logdir:="/var/log/mediagoblin"} : ${mgceleryd_eggcache:="/usr/local/www/.python-eggs"} pidfile="/var/run/${name}.pid" required_files="$mgceleryd_mgconfig" required_dirs="$mgceleryd_path $mgceleryd_path/bin $mgceleryd_logdir" start_precmd="${name}_prestart" mgceleryd_chdir=$mgceleryd_path command="$mgceleryd_path/bin/celery" command_args=" > $mgceleryd_logdir/${name}_start.log 2>&1 &" command_interpreter="$mgceleryd_path/bin/python" mgceleryd_flags=" worker --pidfile $pidfile -f ${mgceleryd_logdir}/${name}.log $mgceleryd_flags" mgceleryd_prestart() { touch $pidfile chown $mgceleryd_user $pidfile MEDIAGOBLIN_CONFIG=$mgceleryd_mgconfig export MEDIAGOBLIN_CONFIG CELERY_CONFIG_MODULE=$mgceleryd_config_module export CELERY_CONFIG_MODULE PYTHON_EGG_CACHE="$mgceleryd_eggcache" export PYTHON_EGG_CACHE } run_rc_command "$1"