Note

The documentation you're currently reading is for version 3.0.1. Click here to view documentation for the latest stable version.

Workflows

Typical datacenter operations and processes involve taking multiple actions across various systems. To capture and automate these operations, EWC uses workflows. A workflow strings atomic actions into a higher level automation, and orchestrates their executions by calling the right action, at the right time, with the right input. It keeps state, passes data between actions, and provides reliability and transparency to the execution.

Just like any actions, workflows are exposed in the automation library, and can be called manually, or triggered by rules. Workflows can even be called from other workflows.

To create a workflow action, choose a workflow runner, connect the actions in a workflow definition, and provide the usual action meta data.

EWC supports three types of workflows - Orquesta, ActionChain and Mistral.

  • Orquesta is a new workflow engine, designed specifically for EWC, released in 2019. With Orquesta, you can define simple sequential workflows or complex workflows with forks, joins, and sophisticated data transformation and queries. It will replace both ActionChains and Mistral. We recommend you write all new workflows in Orquesta.

    Use Orquesta for all new workflows.

  • ActionChain is EWC’s legacy internal no-frills workflow runner. It provides a simple syntax to define a chain of actions, runs them one after another, passing data from one action to another until it succeeds or fails. It does not provide any complex workflow handling.

    Use ActionChain for simple legacy workflows.

  • Mistral is a dedicated workflow service, originated in OpenStack, integrated and bundled with EWC. With Mistral, you can define complex workflow logic with nested workflows, forks, joins, and policies for error handling, retries, and delays. This is maintained for legacy reasons, but we recommend all new workflows are written in Orquesta.

    Use Mistral for legacy complex workflows.

Learn how to define and run workflows: