Tool registration#
After the reference and sample files are registered, the next step is to register a predefined workflow as a tool on the SeqsLab platform.
Objective#
This tutorial will help you register a tool based on a GATK-Germline-Snps-Indels workflow from Dockstore.
Prerequisites#
Before you begin, you will need the following:
SeqsLab managed application on Azure. For details, see Test drive SeqsLab.
A running instance of the SeqsLab CLI tool. For details, see Pull and run the SeqsLab CLI.
A command line interface (CLI) tool such as the Windows Command Prompt or the Mac Terminal
1. Get the published workflow from Dockstore#
Use the following command to get the workflow from Dockstore:
# get workflow.zip from dockstore
mkdir working_dir && \
wget https://dockstore.org/api/workflows/18394/zip/158152 \
-O working_dir/workflow.zip
cd working_dir && unzip workflow.zip
The downloaded ZIP includes all the WDL files for the published tool.
tree
.
├── GATK-Germline-Snps-Indels
│ ├── execs
│ │ └── gatk.parallel.hg19.0713.execs.json
│ ├── inputs
│ │ └── GATK-Germline-Snps-Indels-inputs.json
│ └── wdl
│ ├── GATK-Germline-Snps-Indels-main.wdl
│ └── subworkflows
│ ├── haplotypecaller-gvcf-gatk4.wdl
│ ├── processing-for-variant-discovery-gatk4.wdl
│ └── tasks.wdl
└── workflow.zip
2. Register the tool#
Use the tools tool command to register the workflow as a new tool.
export TOOL_ID="wgs_germline_gatk4_snp_indel_`date '+%Y%m%d%H%M%S'`"
seqslab tools tool \
--id "${TOOL_ID}" \
--name "testdrive-${TOOL_ID}" \
--description "test drive workflow"
Use the tools version command to register a new tool version.
seqslab tools version \
--descriptor-type WDL \
--tool-id "${TOOL_ID}" \
--id "1.0" \
--workspace "${WORKSPACE}" \
--images '[{"image_type": "docker", "image_name": "atgenomix/seqslab_runtime-1.5_ubuntu-20.04_preprocessgatk4-4.2.0.0:2022-10-05-02-36", "registry_host": "tmuhwus24434bacr.azurecr.io", "size": 3349109245, "checksum": "sha256:020be4ed428c7dfec67d6c640aaec07d239406c1222295b22a8da6be2ec38ad1"}]'
Use the tools file command to upload tool files to the newly created tool version.
seqslab tools file \
--descriptor-type WDL \
--tool-id "${TOOL_ID}" \
--version-id "1.0" \
--working-dir `pwd`/GATK-Germline-Snps-Indels/ \
--file-info execs/gatk.parallel.hg19.0713.execs.json