Skip to main content

Cromwell

Cromwell is a workflow management system that takes a workflow (e.g., a workflow written in Workflow Description Language (WDL)), its dependencies and input data, and runs it on a given platform (e.g., GCP). In order to run a workflow on Cromwell, you need a running instance of Cromwell that is available in two forms: Server and stand-alone mode.

In general, you may use a managed Cromwell server maintained by your institute or host a self-managed server, or run Cromwell as a standalone Java application. The former is ideal for large scale execution in a managed environment, and the latter is useful for small scale and isolated WDL development.

info

Due to its dependency on cloud-hosted resources and large-scale execution needs, we currently do not support running the entire GATK-SV pipeline using Cromwell as a stand-alone Java application.

Additionally, we currently only support running the pipeline on Google Cloud Platform (GCP).

Cromwell Server

There are two option to communicate with a running Cromwell server: REST API, and Cromshell which is a command line tool to interface with a Cromwell server. We recommend using Cromshell due to its simplicity of use. This documentation is explained using Cromshell, but the same steps can be taken using the REST API.

  • Setup Cromwell: You may follow this documentation on setting up a Cromwell server.

  • Setup Cromshell: You may follow this documentation on installing and configuring Cromshell to communicate with the Cromwell server.