def enqueue_periodic_jobs(queue_name):
"""Enqueue all PYBOSSA periodic jobs."""
from pybossa.core import sentinel
from rq import Queue
redis_conn = sentinel.master
jobs_generator = get_periodic_jobs(queue_name)
n_jobs = 0
queue = Queue(queue_name, connection=redis_conn)
for job in jobs_generator:
if (job['queue'] == queue_name):
n_jobs += 1
queue.enqueue_call(func=job['name'],
args=job['args'],
kwargs=job['kwargs'],
timeout=job['timeout'])
msg = "%s jobs in %s have been enqueued" % (n_jobs, queue_name)
return msg
评论列表
文章目录