TaskFlow is a Python library that helps to make task execution easy, consistent and reliable. [1]


If you are just getting started or looking for an overview please visit: http://wiki.openstack.org/wiki/TaskFlow which provides better introductory material, description of high level goals and related content.



While developing TaskFlow the team has worked hard to make sure the various concepts are explained by relevant examples. Here are a few selected examples to get started (ordered by perceived complexity):

To explore more of these examples please check out the examples directory in the TaskFlow source tree.


If the examples provided are not satisfactory (or up to your standards) contributions are welcome and very much appreciated to help improve them. The higher the quality and the clearer the examples are the better and more useful they are for everyone.


Things to consider before (and during) development and integration with TaskFlow into your project:

  • Read over the paradigm shifts and engage the team in IRC (or via the openstack-dev mailing list) if these need more explanation (prefix [Oslo][TaskFlow] to your emails subject to get an even faster response).
  • Follow (or at least attempt to follow) some of the established best practices (feel free to add your own suggested best practices).
  • Keep in touch with the team (see above); we are all friendly and enjoy knowing your use cases and learning how we can help make your lives easier by adding or adjusting functionality in this library.


A useful collection of links, documents, papers, similar projects, frameworks and libraries.


Please feel free to submit your own additions and/or changes.

Indices and tables

[1]It should be noted that even though it is designed with OpenStack integration in mind, and that is where most of its current integration is it aims to be generally usable and useful in any project.