From 70ae489e1b0f3ffd6f76621fbc8a62e4f498bfc9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ant=C3=B3nio=20Paulo?= <antonio.do.paulo@ist.utl.pt>
Date: Sun, 4 Aug 2019 15:14:26 +0200
Subject: [PATCH] add GATK FilterMutectCalls as a task

---
 gatk.wdl | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 50 insertions(+), 1 deletion(-)

diff --git a/gatk.wdl b/gatk.wdl
index 51cc133..12d8dba 100644
--- a/gatk.wdl
+++ b/gatk.wdl
@@ -318,7 +318,7 @@ task LearnReadOrientationModel {
     }
 
     output {
-        File artifactPriorTable = "artifact-priors.tar.gz"
+        File artifactPriorsTable = "artifact-priors.tar.gz"
     }
 
     runtime {
@@ -420,6 +420,55 @@ task CalculateContamination {
     }
 }
 
+task FilterMutectCalls {
+    input {
+        File referenceFasta
+        File referenceFastaFai
+        File referenceFastaDict
+        File unfilteredVcf
+        File unfilteredVcfIndex
+        String outputVcf
+        File? contaminationTable
+        File? mafTumorSegments
+        File? artifactPriors
+        Int uniqueAltReadCount = 4
+        File mutect2Stats
+        String? extraArgs
+
+        Int memory = 4
+        Float memoryMultiplier = 1.5
+        String dockerImage = "quay.io/biocontainers/gatk4:4.1.2.0--1"
+    }
+
+    command {
+        set -e
+        gatk --java-options -Xmx~{memory}G \
+        FilterMutectCalls \
+        -R ~{referenceFasta} \
+        -V ~{unfilteredVcf} \
+        -O ${outputVcf} \
+        ~{"--contamination-table " + contaminationTable} \
+        ~{"--tumor-segmentation " + mafTumorSegments} \
+        ~{"--ob-priors " + artifactPriors} \
+        ~{"--unique-alt-read-count " + uniqueAltReadCount} \
+        ~{"-stats " + mutect2Stats} \
+        --filtering-stats "filtering.stats" \
+        --showHidden \
+        ~{extraArgs}
+    }
+
+    output {
+        File filteredVcf = outputVcf
+        File filteredVcfIndex = outputVcf + ".tbi"
+        File filteringStats = "filtering.stats"
+    }
+
+    runtime {
+        docker: dockerImage
+        memory: ceil(memory * memoryMultiplier)
+    }
+}
+
 task SplitNCigarReads {
     input {
         File inputBam
-- 
GitLab