fa32f58fdcc96b6e28ac9ec96a39583e3e2f06d6
Previously we had the code looking at the first logbook entry and running with that. That doesn't work so well especially since the logbook may be unordered. So we then switched to require a job to provide a 'flow_uuid' key to determine which one to run. This makes sense and avoids the problem of being unable to determine which one to run but makes it harder to use for those that have just logbooks with single entries (likely the common case). So add in a slightly more advanced finding logic that will check for existence of 'flow_uuid' and if found use it, otherwise if not found then check if the logbook is only a single item and if so use that instead (and otherwise abort). Change-Id: Id1e11e8b4e48af3389e5c4e0818777ff9abf9463
TaskFlow
A library to do [jobs, tasks, flows] in a HA manner using different backends to be used with OpenStack projects.
- More information at http://wiki.openstack.org/wiki/TaskFlow
Join us
Testing and requirements
Requirements
Because TaskFlow has many optional (pluggable) parts like persistence backends and engines, we decided to split our requirements into two parts:
- things that are absolutely required by TaskFlow (you can't use
TaskFlow without them) are put to
requirements.txt; - things that are required by some optional part of TaskFlow (you
can use TaskFlow without them) are put to
optional-requirements.txt; if you want to use the feature in question, you should add that requirements to your project or environment; - as usual, things that required only for running tests are put
to
test-requirements.txt.
Tox.ini
Our tox.ini describes several test environments that allow to test TaskFlow with different python versions and sets of requirements installed.
To generate tox.ini, use the toxgen.py script by first installing
toxgen and then provide that script
as input the tox-tmpl.ini file to generate the final tox.ini file.
For example:
$ toxgen.py -i tox-tmpl.ini -o tox.ini
Documentation
http://wiki.openstack.org/wiki/TaskFlow
We also have sphinx documentation in docs/source. To build it,
run:
$ python ./setup.py build_sphinx
Description