A library to complete workflows/tasks in HA manner
Go to file
Joshua Harlow 7a1a467a7a Refactor parts of the periodic worker
Perform some adjustments to the periodic worker type to
make it easier to later change and make it better in the
future. These changes hopefully also reduce complexity
and increase understandability.

In part this deprecates providing a tombstone via
__init__() since that will restrict future enhancements we can
make (in retrospect we need more internal control over that
argument & type to build better workers).

Change-Id: I1965e157c303c2a45b9950e9f4a921c638f57fd1
2015-02-22 21:30:19 -08:00
doc Merge "Remove WBE experimental documentation note" 2015-02-21 19:32:22 +00:00
taskflow Refactor parts of the periodic worker 2015-02-22 21:30:19 -08:00
tools Bump up the env_builder.sh to 2.7.9 2015-02-03 16:50:55 -08:00
.coveragerc Coverage calculation improvements 2013-11-22 11:25:03 +04:00
.gitignore Merge "Ignore doc build files" 2014-01-07 18:10:43 +00:00
.gitreview Update .gitreview after repo rename 2014-02-07 20:45:32 +00:00
.mailmap Remap the emails of the committers 2013-09-17 13:27:27 -07:00
.testr.conf Fix up python 3.3 incompatabilities 2013-11-21 18:38:44 +04:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 03:30:41 +00:00
LICENSE Move the code over for now 2013-05-07 10:49:44 -07:00
MANIFEST.in Move to using pbr. 2013-07-07 21:46:32 -07:00
openstack-common.conf Move over to using oslo.utils [reflection, uuidutils] 2014-12-18 13:55:41 -08:00
pylintrc Remove error code not found in strict version of pylint. 2013-05-22 18:19:45 -07:00
README.rst Update the README.rst with accurate requirements 2015-01-10 20:10:38 -08:00
requirements-py2.txt Merge "Use the enum library for the retry strategy enumerations" 2015-02-21 06:38:59 +00:00
requirements-py3.txt Merge "Use the enum library for the retry strategy enumerations" 2015-02-21 06:38:59 +00:00
run_tests.sh Switch to just using tox 2014-01-02 10:38:15 -08:00
setup.cfg Allow loading conductors via entrypoints 2015-02-16 18:30:18 -08:00
setup.py Updated from global requirements 2014-05-01 12:43:52 +00:00
test-requirements.txt Refactor parts of the periodic worker 2015-02-22 21:30:19 -08:00
tox.ini Move to hacking 0.10 2015-02-12 16:03:29 -08: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