Workflow: GATK Co-Cleaning Workflow
PCAWG GATK Co-cleaning workflow is developed by the Broad Institute (https://www.broadinstitute.org), it consists of two pre-processing steps for tumor/normal BAM files: indel realignment and base quality score recalibration (BQSR). The workflow has been dockerized and packaged using CWL workflow language, the source code is available on GitHub at: https://github.com/ICGC-TCGA-PanCancer/pcawg-gatk-cocleaning. ## Run the workflow with your own data ### Prepare compute environment and install software packages The workflow has been tested in Ubuntu 16.04 Linux environment with the following hardware and software settings. #### Hardware requirement (assuming 30X coverage whole genome sequence) - CPU core: 16 - Memory: 64GB - Disk space: 1TB #### Software installation - Docker (1.12.6): follow instructions to install Docker https://docs.docker.com/engine/installation - CWL tool ``` pip install cwltool==1.0.20170217172322 ``` ### Prepare input data #### Input aligned tumor / normal BAM files The workflow uses a pair of aligned BAM files as input, one BAM for tumor, the other for normal, both from the same donor. Here we assume file names are *tumor_sample.bam* and *normal_sample.bam*, and are under *bams* subfolder. #### Reference data files The workflow also uses the following files as reference, they can be downloaded from the ICGC Data Portal: - Under https://dcc.icgc.org/releases/PCAWG/reference_data/pcawg-bwa-mem - genome.fa.gz - genome.dict - Under https://dcc.icgc.org/releases/PCAWG/reference_data/pcawg-gatk-cocleaning - 1000G_phase1.indels.hg19.sites.fixed.vcf.gz - Mills_and_1000G_gold_standard.indels.hg19.sites.fixed.vcf.gz - dbsnp_132_b37.leftAligned.vcf.gz We assume the reference files are under *reference* subfolder. #### Job JSON file for CWL Finally, we need to prepare a JSON file with input, reference files specified. Please replace the *tumor_bam* and *normal_bam* parameters with your real BAM files. Name the JSON file: *pcawg-gatk-cocleaning.job.json* ``` { \"tumor_bam\": { \"class\": \"File\", \"location\": \"bams/tumor_sample.bam\" }, \"normal_bam\": { \"class\": \"File\", \"location\": \"bams/normal_sample.bam\" }, \"reference\": { \"class\": \"File\", \"location\": \"reference/genome.fa\" }, \"knownIndels\": [ { \"class\": \"File\", \"location\": \"reference/1000G_phase1.indels.hg19.sites.fixed.vcf.gz\" }, { \"class\": \"File\", \"location\": \"reference/Mills_and_1000G_gold_standard.indels.hg19.sites.fixed.vcf.gz\" } ], \"knownSites\": [ { \"class\": \"File\", \"location\": \"reference/dbsnp_132_b37.leftAligned.vcf.gz\" } ] } ``` ### Run the workflow #### Option 1: Run with CWL tool - Download CWL workflow definition files ``` wget https://github.com/ICGC-TCGA-PanCancer/pcawg-gatk-cocleaning/archive/0.1.1.tar.gz tar xvf pcawg-gatk-cocleaning-0.1.1.tar.gz ``` - Run `cwltool` to execute the workflow ``` nohup cwltool --debug --non-strict pcawg-gatk-cocleaning-0.1.1/gatk-cocleaning-workflow.cwl pcawg-gatk-cocleaning.job.json > pcawg-gatk-cocleaning.log 2>&1 & ``` #### Option 2: Run with the Dockstore CLI See the *Launch with* section below for details.
- Selected
- |
- Default Values
- Nested Workflows
- Tools
- Inputs/Outputs
Inputs
ID | Type | Title | Doc |
---|---|---|---|
reference | File | ||
tumor_bam | File | ||
knownSites | File[] | ||
normal_bam | File | ||
knownIndels | File[] |
Steps
ID | Runs | Label | Doc |
---|---|---|---|
bqsr_tumor |
gatk-baserecalibrator.cwl
(CommandLineTool)
|
||
bqsr_normal |
gatk-baserecalibrator.cwl
(CommandLineTool)
|
||
indel_realigner |
gatk-indelrealigner.cwl
(CommandLineTool)
|
GATK IndelRealigner | |
printreads_tumor |
gatk-printreads.cwl
(CommandLineTool)
|
GATK PrintReads |
GATK-RealignTargetCreator.cwl is developed for CWL consortium Prints all reads that have a mapping quality above zero Usage: java -Xmx4g -jar GenomeAnalysisTK.jar -T PrintReads -R reference.fasta -I input.bam -o output.bam --read_filter MappingQualityZero |
printreads_normal |
gatk-printreads.cwl
(CommandLineTool)
|
GATK PrintReads |
GATK-RealignTargetCreator.cwl is developed for CWL consortium Prints all reads that have a mapping quality above zero Usage: java -Xmx4g -jar GenomeAnalysisTK.jar -T PrintReads -R reference.fasta -I input.bam -o output.bam --read_filter MappingQualityZero |
realigner_target_creator |
gatk-realignertargetcreator.cwl
(CommandLineTool)
|
GATK RealignerTargetCreator |
Outputs
ID | Type | Label | Doc |
---|---|---|---|
cleaned_tumor_bam | File | ||
cleaned_normal_bam | File |
https://w3id.org/cwl/view/git/562ec2da6a263a9aba45dd0368b9cca5923dcc8c/gatk-cocleaning-workflow.cwl