Engines

Understanding Engines in Workbench

An engine is an external service that executes WDL ( Workflow Description Language ) workflows in Workbench. These engines interpret your workflows, generate task definitions, and manage their execution in your chosen computing environment. You can connect an engine running in your own environment to your Workbench account, which will then use that engine to submit and monitor workflow runs.

How Engines Work

The engine is responsible for processing WDL, an open, community-driven workflow language stewarded by the OpenWDL organization. WDL is designed to be both easy to read and write, while scaling effectively from simple command-line tools to complex parallel workflows.

When you submit a workflow, your engine:

  • Interprets the WDL script

  • Generates individual task definitions

  • Manages task dependencies and scheduling

  • Dispatches tasks to execution services

  • Handles resource allocation and management

Workflow engines that support WDL, such as Cromwell and miniWDL, provide these capabilities while managing the resources required for workflow execution.

Supported Environments

You can run Workbench engines in various environments:

Viewing and Accessing Engines

Access your engines through either:

From the Settings page, use the search bar to find specific engines. Click any engine row to view detailed information about its state, configuration, and parameters.

Default Engine Settings

The first engine you create in Workbench becomes your default engine. This default engine is pre-populated whenever you submit a workflow run, though you can change engines for specific runs. When submitting workflow runs from the CLI, the default engine is used if you omit the --engine flag.

To change your default engine:

  1. Navigate to Settings

  2. Hover over your chosen engine

  3. Click the "Set as Default" star button

You cannot delete the default engine. If you want to delete the default engine, you must first set another engine as the default.

Actions

When viewing the engine list, hover over any row to access these actions:

Edit Engine

Clicking on the Edit Engine pencil icon button will allow you to update the engine configuration, engine name, and engine parameters

Set as Default

Clicking on the Set as Default star icon button will set the engine as the default engine in Workbench

Copy Engine Id

Clicking on the Copy Engine Id duplicate icon button will copy the engine ID to your clipboard. This is useful when you need to reference the engine ID in the CLI or API

Delete Engine

Clicking on the Delete Engine trashcan icon will remove the engine from Workbench.

This action is irreversible.

  • You must set a new default before deleting a default engine

  • Currently running workflows will be marked as failed but continue running

  • The underlying infrastructure remains unaffected and must be deleted separately

  • Previous runs remain visible but you cannot submit new runs or view logs

Engine Status

Workbench continuously monitors connected engines to ensure availability. The system checks:

  • Connectivity to API endpoints

  • Credential authentication

  • Permission verification

  • Storage access

  • Log streaming capability

Each engine runs only the checks relevant to its type and configuration. Failed checks put the engine in ERROR state until resolved, while passing checks keep it ONLINE. You can view engine status in the UI - a green dot indicates ONLINE, while a red dot shows ERROR. For troubleshooting help, consult your engine's configuration guide.

Last updated

Was this helpful?