Skip to content

Managing workflows

Once you are signed in, the first step is to register a workflow and its first version, or a new version of an existing workflow.

Terminal window
geni workflow list

See the versions of one workflow:

Terminal window
geni workflow versions <workflow-name>

Every listing command accepts --format, which takes table (the default), csv or json.

Terminal window
geni workflow create \
--workflow-name <workflow-name> \
--workflow-version <workflow-version> \
--file <path to the Nextflow, WDL or ZIP file>

The Nextflow (.nf), WDL (.wdl) or ZIP file must be on your computer. The CLI uploads it to GENI, which keeps it for future submissions. Once registered, you no longer need the local file.

Nextflow. The archive must contain a main.nf at its root. Every dependency must be inside the archive. Configuration files (nextflow.config) are allowed. Python scripts belong in a bin/ folder at the root — Nextflow then copies them, as executables, into the container of every task in the workflow.

WDL / Cromwell. The archive must contain a main.wdl at its root, with every dependency inside it.

Terminal window
zip -r <workflow-files>.zip main.nf nextflow.config modules/

Use --cancel-time to set the maximum duration of a submission of this workflow version. After that period GENI cancels the submission automatically.

Terminal window
geni workflow create \
--workflow-name wgs-germline \
--workflow-version v2.1.0 \
--file wgs-germline.zip \
--cancel-time 00:12:00

The format is DD:HH:MM. There is no limit by default.

A submission can override this with its own --cancel-time.

Tags attached to a workflow are inherited by every submission of every version. See Tagging.

Terminal window
geni workflow create \
--workflow-name wgs-germline --workflow-version v2.1.0 \
--file wgs-germline.zip --tag client=acme --tag project=dnabr
Terminal window
geni workflow export <workflow-name> \
--workflow-version <workflow-version> \
--output-folder <path>

Delete one version:

Terminal window
geni workflow delete \
--workflow-name <workflow-name> \
--workflow-version <workflow-version>

Delete a workflow and all of its versions:

Terminal window
geni workflow delete --workflow-name <workflow-name>

In both cases the command asks for confirmation before deleting.

Managing submissions — running the workflow you just registered.