You can create workflows using the web interface or using the CLI using tools provided by the DNAnexus SDK. This page focuses on creating a workflow in a terminal. It will walk you through important features of the DNAnexus workflow build infrastructure that will help you build your workflows programmatically.
NOTE: The DNAnexus SDK,
dx-toolkit, is required to build workflows from JSON definitions.
DNAnexus workflows can be built using the
dx build command, which takes the workflow JSON representation from your local workstation and uploads it to a workflow object on the platform. The DNAnexus SDK expects the workflow definition to reside in a directory with the following structure:
MyWorkflow├── dxworkflow.json└── Readme.md
dxworkflow.json is a DNAnexus workflow metadata file. If it is detected in the directory provided to
dx build, the dx-toolkit will attempt to build a workflow in the platform according to the workflow specification in the JSON file.
Readme.md file, if present, is inlined into the
description field of the workflow.
Having placed the workflow metadata in
MyWorkflow, you can load your workflow on the DNAnexus platform:
$ dx build MyWorkflow
The built workflow will be in a closed, immutable state. Adding
--keep-open option will keep the workflow open allowing you to edit the workflow from the DNAnexus UI.
$ dx build MyWorkflow --keep-open
Similarly to apps and applets, developers can use the command
dx get to download the workflow description from the platform, for example:
$ dx get MyWorkflow
It will create a directory
MyWorkflow (after the workflow's name) containing the workflow representation in the working directory. It can be used again to create a new workflow with