Validating a workflow

A workflow must be valid before it can be run or saved.

In general terms, a valid workflow has at least one route for data to flow into it, at least one result saved from it, and it contains no unconnected elements. In more detail:

Validation status is continuously monitored, with messages relating to this reported at the bottom of the editor.

The validation status of a workflow will fall into one of three categories:

  1. Valid and saved When a workflow is valid and has been saved, the message "Validation successful" is displayed in green text at the bottom of the editor (figure 13.13).

    Image workflow_validation_saved
    Figure 13.13: The "Validation successful" message indicates that this workflow is valid and has been saved.

  2. Valid, with changes not yet saved When a workflow is valid but there are unsaved changes, a single message is displayed at the bottom of the editor saying "The workflow must be saved". The unsaved state is also represented by the asterisk in the name of the tab (figure 13.14).

    Valid workflows can be run before they are saved, allowing changes to be tested before overwriting any previously saved version.

    The Installation... button is enabled when a workflow is valid and has been saved. See Workflow installation for information about workflow installation.

    Image workflow_validation_not_saved
    Figure 13.14: This workflow has changes that have not yet been saved, as indicated by the message at the bottom of the editor and the asterisk beside the workflow name in the tab at the top.

  3. Invalid Each problem in a workflow is reported at the bottom of the editor (figure 13.15).

    Image workflow_validation_text
    Figure 13.15: Problems are reported at the bottom of the workflow editor.

    Clicking on a message about a specific element redirects the focus within the editor to that element (figure 13.16).

    Image workflow_validation_jump_to_element
    Figure 13.16: Clicking on the error message about Filter against Known Variants at the bottom of the editor moved the focus in the editor to that element.