NovaOrchestration/WorkflowEngines

= Workflow Engines =

This is a list of some available workflow engines implemented in Python. Some of these are oriented toward web frameworks, while others are more generic in nature.

pyutilib.workflow
pyutilib.workflow is from Sandia Labs, part of pyutilib. It's a self contained workflow engine, intended to be embedded, and developed to automate the processing of scientific workflows. There is a summary paper at https://software.sandia.gov/trac/pyutilib/browser/pyutilib.workflow/trunk/doc/workflow/workflow.pdf

Analysis: http://wiki.openstack.org/NovaOrchestration/WorkflowEngines/pyutilib_workflow

Spiff Workflow
Spiff Workflow Part of |Spiff Spiff Workflow is a library implementing a framework for workflows. It is based on http://www.workflowpatterns.com and implemented in pure Python.

Analysis: http://wiki.openstack.org/NovaOrchestration/WorkflowEngines/SpiffWorkflow

Python-Snakes
Python-Snakes A PetriNet research toolkit

Celery
Celery really a job controller (IMHO)

repoze.workflow
repoze.workflow is a content workflow system. Web oriented

hurry.workflow
hurry.workflow

A Django workflow engine
A Django workflow engine maintenance status questionable as of November, 2011.

GoFlow
GoFlow workflow engine is for Django, maintenance status is questionable as of November, 2011

Django Workflows
Django Workflows is currently maintained. Web oriented.

Other Workflow Engines
There are some other workflow engines listed at http://pythonsource.com/open-source/workflow-engines, seem to be web oriented,

Other Links
Zookeeper is part of the Hadoop Project. Implemented in Java, it is oriented toward coordinating distributed systems.

This link has some interesting REST / FSM / Workflow related information. http://www.rexx.com/~dkuhlman/fsm_howto.html It's dated 2003, and is related to the Quixote python web framework