Example #1
0
def celery_tasks(request):
    """
    A view returning all defined tasks as a JSON object.
    """
    response_data = {'regular' : tasks.regular().keys(),
                     'periodic' : tasks.periodic().keys()}
    return HttpResponse(JSON_dump(response_data), mimetype="application/json")
    def read_configuration(self):
        """Read the configuration from configuration file and convert values
        to celery processable values."""
        from celery.registry import tasks
        celeryd_vars = list(ctx.cfg.itersection('celeryd'))
        celery_vars = list(ctx.cfg.itersection('celery'))
        broker_vars = list(ctx.cfg.itersection('broker'))

        conv = lambda x: (x[0].upper().replace('.', '_'), x[1])

        settings = map(conv, celeryd_vars + celery_vars + broker_vars)
        settings.append(('DEBUG', ctx.cfg['debug']))
        settings.append(('CELERY_ALWAYS_EAGER', ctx.cfg['testing']))

        # For backward compatibility, add the periodic task to the
        # configuration schedule instead.
        schedule = {}
        for task in tasks.periodic().itervalues():
            schedule[task.name] = {
                'task': task.name,
                'schedule': task.run_every,
                'args': (),
                'kwargs': {},
                'options': task.options or {},
                'relative': task.relative
            }
        settings.append(('CELERYBEAT_SCHEDULE', schedule))

        self.configured = True

        return AttributeDict(dict(settings))
Example #3
0
def registered_tasks(request):
    """
    A view returning all defined tasks as a JSON object.
    """
    response_data = {"regular": tasks.regular().keys(),
                     "periodic": tasks.periodic().keys()}
    return HttpResponse(JSON_dump(response_data), mimetype="application/json")
Example #4
0
    def read_configuration(self):
        """Read the configuration from configuration file and convert values
        to celery processable values."""
        from celery.registry import tasks
        celeryd_vars = list(ctx.cfg.itersection('celeryd'))
        celery_vars = list(ctx.cfg.itersection('celery'))
        broker_vars = list(ctx.cfg.itersection('broker'))

        conv = lambda x: (x[0].upper().replace('.','_'), x[1])

        settings = map(conv, celeryd_vars + celery_vars + broker_vars)
        settings.append(('DEBUG', ctx.cfg['debug']))
        settings.append(('CELERY_ALWAYS_EAGER', ctx.cfg['testing']))

        # For backward compatibility, add the periodic task to the
        # configuration schedule instead.
        schedule = {}
        for task in tasks.periodic().itervalues():
            schedule[task.name] = {
                'task': task.name,
                'schedule': task.run_every,
                'args': (),
                'kwargs': {},
                'options': task.options or {},
                'relative': task.relative}
        settings.append(('CELERYBEAT_SCHEDULE', schedule))

        self.configured = True

        return AttributeDict(dict(settings))
Example #5
0
def registered_tasks(request):
    """
    A view returning all defined tasks as a JSON object.
    """
    response_data = {"regular": tasks.regular().keys(),
                     "periodic": tasks.periodic().keys()}
    return HttpResponse(JSON_dump(response_data), mimetype="application/json")
Example #6
0
def registered_tasks(request):
    """
    A view returning all defined tasks as a JSON object.
    """
    return JsonResponse({
        "regular": tasks.regular().keys(),
        "periodic": tasks.periodic().keys()
    })
Example #7
0
def list_tasks(request):
    """
    A view returning all defined tasks as a JSON object.
    """

    task_descriptions = TaskDescription.objects.values_list("task_name",flat=True)
    reg = tasks.regular().keys()
    per = tasks.periodic().keys()

    regfilter = []
    perfilter = []

    regfilter.extend(task_descriptions)
    #for k in reg:
    #    #if not k.startswith("celery."):
    #    if k in task_descriptions:
    #        regfilter.append(k)
    #for k in per:
    #    if not k.startswith("celery."):
    #        perfilter.append(k)

    regfilter.sort()
    perfilter.sort()

    descriptions = {}
    from jobservice import get_task_description

    for jobtype in regfilter:
        try:
            t = get_task_description(jobtype)
            descriptions[jobtype] = t
        except Exception as e:
            print "No job description for job type '%s' %s" % (jobtype,e)
            #logging.debug("No job description for job type '%s' %s" % (jobtype,e) )
            pass

    response_data = {"regular": regfilter,
                     "periodic": perfilter,
                     "descriptions": descriptions
                     }
    try:
        return HttpResponse(JSON_dump(response_data), mimetype="application/json")
    except:
        raise
Example #8
0
def registered_tasks():
    """ returns registered tasks """
    return {"regular": tasks.regular().keys(),
            "periodic": tasks.periodic().keys()}
Example #9
0
def registered_tasks(request):
    """View returning all defined tasks as a JSON object."""
    return JsonResponse({'regular': tasks.regular().keys(),
                         'periodic': tasks.periodic().keys()})
Example #10
0
def registered_tasks(request):
    """View returning all defined tasks as a JSON object."""
    return JsonResponse({"regular": list(tasks.regular().keys()), "periodic": list(tasks.periodic().keys())})