Joshua Harlow 19f9674877 Abstract out the worker finding from the WBE engine
To be able to easily plug-in future types of ways to get
which topics (and tasks) workers exist on (and can perform)
and to identify and keep this information up-to date refactor
the functionality that currently does this using periodic messages
into a finder type and a periodic function that exists on
it (that will be periodically activated by an updated and
improved periodic worker).

Part of blueprint wbe-worker-info

Change-Id: Ib3ae29758af3d244b4ac4624ac380caf88b159fd
2015-01-31 23:03:25 -08:00
2013-11-22 11:25:03 +04:00
2014-01-07 18:10:43 +00:00
2014-02-07 20:45:32 +00:00
2013-09-17 13:27:27 -07:00
2013-05-07 10:49:44 -07:00
2013-07-07 21:46:32 -07:00
2014-01-02 10:38:15 -08:00
2014-05-01 12:43:52 +00:00
2015-01-23 14:14:53 +03:00

TaskFlow

A library to do [jobs, tasks, flows] in a highly available, easy to understand and declarative manner (and more!) to be used with OpenStack and other projects.

Join us

Testing and requirements

Requirements

Because this project has many optional (pluggable) parts like persistence backends and engines, we decided to split our requirements into three parts: - things that are absolutely required (you can't use the project without them) are put into requirements-pyN.txt (N being the Python major version number used to install the package). The requirements that are required by some optional part of this project (you can use the project without them) are put into our tox.ini file (so that we can still test the optional functionality works as expected). If you want to use the feature in question (eventlet or the worker based engine that uses kombu or the sqlalchemy persistence backend or jobboards which have an implementation built using kazoo ...), you should add that requirement(s) to your project or environment; - as usual, things that required only for running tests are put into test-requirements.txt.

Tox.ini

Our tox.ini file describes several test environments that allow to test TaskFlow with different python versions and sets of requirements installed. Please refer to the tox documentation to understand how to make these test environments work for you.

Developer documentation

We also have sphinx documentation in docs/source.

To build it, run:

$ python setup.py build_sphinx
Description
A library to complete workflows/tasks in HA manner
Readme 32 MiB
Languages
Python 99.3%
Shell 0.7%