Deeper dive: WDLs, workflows, tasks

Allie Hajian
  • Updated

Learn how to dissect the parts of your workflow's WDL script - inputs, outputs, and tasks - to help you troubleshoot your workflows.

Identifying workflow and task inputs and outputs

Inputs and outputs are defined in your workflow's Workflow Description Language (WDL) script, at the level of the "workflow" or the "task" within the workflow. Terra interprets the WDL and provides an input "form" to fill out. The outputs part of the form is optional. To access the inputs and outputs forms, as well as more details on the inner workings of the WDL, click on the workflow card from within the Workflows page in your workspace. 

To learn more about configuring workflow inputs and outputs, see How to configure workflow inputs

Understanding where the inputs and outputs are used by the WDL can help with troubleshooting, if your submission fails.  

This is an example of the configuration form you see after clicking on the workflow card (note that you need to be signed into Terra to see this workspace).

You can see the WDL script, inputs, and outputs by clicking on the tabs on the configuration screen:

Screenshot of an example workflow's configuration screen. An orange rectangle highlights the script, inputs, and outputs tabs which are used to view the workflow's WDL script and specify the inputs and outputs.

How many workflows and how many tasks are in the CRAM to BAM WDL in the Sequence format conversion workspace?

HINT: Select the Part1_CRAM-to-BAM workflow, then click on the "Script" tab (at left in the workflow configuration form) to look at the WDL script and find this information.

  • Screenshot of the WDL script for the Part1_CRAM-to-BAM workflow. Orange numbers and arrows highlight the workflow definition and two task definitions.

    Answer: The WDL includes one workflow - CramToBamFlow (1) with two tasks - CramToBamTask (2) and ValidateSameFile (3).

    You can identify tasks by the "call" command. There are inputs listed for the workflow and separately for the tasks, followed by outputs for the workflow.

    In the Inputs tab, you can tell the difference between workflow inputs and task inputs by looking at the name in the first column. The first four inputs are the workflow inputs (i.e., correspond to the workflow, CramToBamFlow).

Was this article helpful?

0 out of 0 found this helpful



Please sign in to leave a comment.