# salt.modules.celery

Support for scheduling celery tasks. The worker is independent of salt and thus can run in a different virtualenv or on a different python version, as long as broker, backend and serializer configurations match. Also note that celery and packages required by the celery broker, e.g. redis must be installed to load the salt celery execution module.

Note

A new app (and thus new connections) is created for each task execution

salt.modules.celery.run_task(task_name, args=None, kwargs=None, broker=None, backend=None, wait_for_result=False, timeout=None, propagate=True, interval=0.5, no_ack=True, raise_timeout=True, config=None)

  Execute celery tasks. For celery specific parameters see celery documentation.

  CLI Example:

      salt '*' celery.run_task tasks.sleep args=[4] broker=redis://localhost \
      backend=redis://localhost wait_for_result=true

  task_name

    The task name, e.g. tasks.sleep

  args

    Task arguments as a list

  kwargs

    Task keyword arguments

  broker

    Broker for celeryapp, see celery documentation

  backend

    Result backend for celeryapp, see celery documentation

  wait_for_result

    Wait until task result is read from result backend and return result, Default: False

  timeout

    Timeout waiting for result from celery, see celery AsyncResult.get documentation

  propagate

    Propagate exceptions from celery task, see celery AsyncResult.get documentation, Default: True

  interval

    Interval to check for task result, see celery AsyncResult.get documentation, Default: 0.5

  no_ack

    see celery AsyncResult.get documentation. Default: True

  raise_timeout

    Raise timeout exception if waiting for task result times out. Default: False

  config

    Config dict for celery app, See celery documentation