A library to complete workflows/tasks in HA manner
Go to file
Joshua Harlow 84b387f8bb Rework the in-memory backend
This avoids storing direct copies of incoming objects and
makes sure that we always merge incoming objects (if a
saved object already exists) or create a copy of the
incoming object if it does not exist when storing.

On retrieval we also always return copies instead of
returning the data that is stored internally to avoid the
problems that can be hard to detect when users (engine
or other) modify those source objects.

Fixes bug 1365830

Also fixes a retry test case issue that was discovered due
to this more easily useable/understandable memory backend
changes...

Change-Id: I2afdda7beb71e35f7e12d9fd7ccf90b6c5447274
2014-12-18 13:08:06 -08:00
doc Use the notifier type in the task class/module directly 2014-12-13 19:09:03 -08:00
taskflow Rework the in-memory backend 2014-12-18 13:08:06 -08:00
tools Some package additions and adjustments to the env_builder.sh 2014-12-03 16:15:05 -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 Switch to using oslo.utils and oslo.serialization 2014-09-20 09:03:11 -07:00
pylintrc Remove error code not found in strict version of pylint. 2013-05-22 18:19:45 -07:00
README.rst Add appropriate links into README.rst 2014-12-08 14:27:53 -08:00
requirements-py2.txt Updated from global requirements 2014-12-11 07:20:45 +00:00
requirements-py3.txt Updated from global requirements 2014-12-11 07:20:45 +00:00
run_tests.sh Switch to just using tox 2014-01-02 10:38:15 -08:00
setup.cfg Just use 4 spaces for classifier indents 2014-12-05 21:12:03 -08:00
setup.py Updated from global requirements 2014-05-01 12:43:52 +00:00
test-requirements.txt Updated from global requirements 2014-11-20 14:12:51 +00:00
tox.ini Bump up the sqlalchemy version for py26 2014-10-18 12:58:05 -07: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 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 into requirements-pyN.txt (N being the Python major version number used to install the package); - things that are required by some optional part of TaskFlow (you can use TaskFlow without them) are put into 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 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