|
|
from rhodecode.lib.utils import BasePasterCommand, Command
|
|
|
|
|
|
|
|
|
__all__ = ['CeleryDaemonCommand', 'CeleryBeatCommand',
|
|
|
'CAMQPAdminCommand', 'CeleryEventCommand']
|
|
|
|
|
|
|
|
|
class CeleryDaemonCommand(BasePasterCommand):
|
|
|
"""Start the celery worker
|
|
|
|
|
|
Starts the celery worker that uses a paste.deploy configuration
|
|
|
file.
|
|
|
"""
|
|
|
usage = 'CONFIG_FILE [celeryd options...]'
|
|
|
summary = __doc__.splitlines()[0]
|
|
|
description = "".join(__doc__.splitlines()[2:])
|
|
|
|
|
|
parser = Command.standard_parser(quiet=True)
|
|
|
|
|
|
def update_parser(self):
|
|
|
from celery.bin import celeryd
|
|
|
for x in celeryd.WorkerCommand().get_options():
|
|
|
self.parser.add_option(x)
|
|
|
|
|
|
def command(self):
|
|
|
from celery.bin import celeryd
|
|
|
return celeryd.WorkerCommand().run(**vars(self.options))
|
|
|
|
|
|
|
|
|
class CeleryBeatCommand(BasePasterCommand):
|
|
|
"""Start the celery beat server
|
|
|
|
|
|
Starts the celery beat server using a paste.deploy configuration
|
|
|
file.
|
|
|
"""
|
|
|
usage = 'CONFIG_FILE [celerybeat options...]'
|
|
|
summary = __doc__.splitlines()[0]
|
|
|
description = "".join(__doc__.splitlines()[2:])
|
|
|
|
|
|
parser = Command.standard_parser(quiet=True)
|
|
|
|
|
|
def update_parser(self):
|
|
|
from celery.bin import celerybeat
|
|
|
for x in celerybeat.BeatCommand().get_options():
|
|
|
self.parser.add_option(x)
|
|
|
|
|
|
def command(self):
|
|
|
from celery.bin import celerybeat
|
|
|
return celerybeat.BeatCommand(**vars(self.options))
|
|
|
|
|
|
class CAMQPAdminCommand(BasePasterCommand):
|
|
|
"""CAMQP Admin
|
|
|
|
|
|
CAMQP celery admin tool.
|
|
|
"""
|
|
|
usage = 'CONFIG_FILE [camqadm options...]'
|
|
|
summary = __doc__.splitlines()[0]
|
|
|
description = "".join(__doc__.splitlines()[2:])
|
|
|
|
|
|
parser = Command.standard_parser(quiet=True)
|
|
|
|
|
|
def update_parser(self):
|
|
|
from celery.bin import camqadm
|
|
|
for x in camqadm.OPTION_LIST:
|
|
|
self.parser.add_option(x)
|
|
|
|
|
|
def command(self):
|
|
|
from celery.bin import camqadm
|
|
|
return camqadm.camqadm(*self.args, **vars(self.options))
|
|
|
|
|
|
|
|
|
class CeleryEventCommand(BasePasterCommand):
|
|
|
"""Celery event commandd.
|
|
|
|
|
|
Capture celery events.
|
|
|
"""
|
|
|
usage = 'CONFIG_FILE [celeryev options...]'
|
|
|
summary = __doc__.splitlines()[0]
|
|
|
description = "".join(__doc__.splitlines()[2:])
|
|
|
|
|
|
parser = Command.standard_parser(quiet=True)
|
|
|
|
|
|
def update_parser(self):
|
|
|
from celery.bin import celeryev
|
|
|
for x in celeryev.OPTION_LIST:
|
|
|
self.parser.add_option(x)
|
|
|
|
|
|
def command(self):
|
|
|
from celery.bin import celeryev
|
|
|
return celeryev.run_celeryev(**vars(self.options))
|
|
|
|