Metadata-Version: 2.0
Name: celery-tryton
Version: 0.4
Summary: Celery integration with Tryton
Home-page: http://celery-tryton.b2ck.com/
Author: B2CK
Author-email: info@b2ck.com
License: BSD
Description-Content-Type: UNKNOWN
Keywords: celery tryton distributed
Platform: any
Classifier: Environment :: Plugins
Classifier: Framework :: Tryton
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Object Brokering
Classifier: Topic :: System :: Distributed Computing
Requires-Dist: celery
Requires-Dist: trytond (>=3.0)

Celery-Tryton
=============

Celery integration with Tryton.
It defines an abstract base Task class that runs inside a Tryton transaction.
If the task is called from within a Tryton transaction, the context of this one
will be automatically restored when the worker will execute it.

Getting Started
---------------

Here is a simple application::

    from celery import Celery
    from celery_tryton import TrytonTask, celery_app
    from trytond.pool import Pool

    celery_app.conf.TRYTON_DATABASE = 'test'

    @celery.task(base=TrytonTask)
    def hello(user_id):
        User = Pool().get('res.user')
        user = User(user_id)
        return 'hello world, %s' % user.name

Configuration
-------------

All standard celery configuration options will work but in addition
`TRYTON_DATABASE` must be set to the default Tryton database name and
optionally `TRYTON_CONFIG` to load a specific configuration file.

The `celery_app` will load the configuration from the `config` value from the
section `[celery]` defined in the trytond configuration when used from a Tryton
module.

Example
-------

Start a worker::

    $ celery worker --app=examples.purchase_requests

Call `generate_all` task::

    $ celery call examples.purchase_requests.generate_all

To report issues please visit the `celery_tryton bugtracker`_.

.. _celery_tryton bugtracker: http://celery-tryton.b2ck.com/


