Epsilon Cluster User Guide

Workflows and Tasks

Understanding workflows

A workflow is a collection of related tasks and metadata that represents a real world process. Epsilon workflows usually consist of sets of linear tasks where each task performs a function or, in other words, completes one of the actions of the process.

For example: A “bouncing of Webserver” workflow consists of two simple tasks: Stop Webserver, followed by Start Webserver. The first task is a simple shell script which runs the webserver shutdown command. The second task runs a start command.

You can model a relationship between tasks. Using the earlier example, you can set the second task to run only if the first task succeeds. You can also write complex workflows with functional grouping and parallel execution.

Workflows are created and owned by groups. A group can create any number of workflows. A workflow owned by a group cannot be accessed by another group unless the owner provides specific permissions to that group.

Understanding tasks

A task is a set of steps or instructions that complete an activity in a workflow. In the earlier example of the “bouncing a database” process, the workflow includes two high-level tasks: Stopping the database and Starting the database. Each of these tasks can be broken down into smaller steps.

In Epsilon, a series of related tasks make up a workflow. At the user's discretion, a single task can complete multiple functional steps or run only a part of a single functional step.