diff --git a/biopet.wdl b/biopet.wdl index 1055960492d133aa9e85842fc18b18b255ce7e0e..8aff11f03cccd16aa0189fc14aebb0edb9144735 100644 --- a/biopet.wdl +++ b/biopet.wdl @@ -3,7 +3,7 @@ task BaseCounter { String? preCommand - File toolJar + String? toolJar File bam File bamIndex File refFlat @@ -12,13 +12,17 @@ task BaseCounter { Float? memory Float? memoryMultiplier - Int mem = ceil(select_first([memory, 12.0])) + Int mem = ceil(select_first([memory, 4.0])) + + String toolCommand = if defined(toolJar) + then "java -Xmx" + mem + "G -jar " +toolJar + else "biopet-basecounter -Xmx" + mem + "G" command { set -e -o pipefail mkdir -p ${outputDir} ${preCommand} - java -Xmx${mem}G -jar ${toolJar} \ + ${toolCommand} \ -b ${bam} \ -r ${refFlat} \ -o ${outputDir} \ @@ -67,8 +71,8 @@ task BaseCounter { } } -task extractAdaptersFastqc { - File? toolJar +task ExtractAdaptersFastqc { + String? toolJar File inputFile String outputDir String? adapterOutputFilePath = outputDir + "/adapter.list" @@ -118,14 +122,22 @@ task FastqSplitter { String? preCommand File inputFastq Array[String] outputPaths - String toolJar + String? toolJar + + Float? memory + Float? memoryMultiplier + Int mem = ceil(select_first([memory, 4.0])) + + String toolCommand = if defined(toolJar) + then "java -Xmx" + mem + "G -jar " +toolJar + else "biopet-fastqsplitter -Xmx" + mem + "G" command { set -e -o pipefail ${preCommand} mkdir -p $(dirname ${sep=') $(dirname ' outputPaths}) if [ ${length(outputPaths)} -gt 1 ]; then - java -jar ${toolJar} \ + ${toolCommand} \ -I ${inputFastq} \ -o ${sep=' -o ' outputPaths} else @@ -136,6 +148,10 @@ task FastqSplitter { output { Array[File] chunks = outputPaths } + + runtime { + memory: ceil(mem * select_first([memoryMultiplier, 2.5])) + } } task FastqSync { @@ -146,13 +162,21 @@ task FastqSync { File in2 String out1path String out2path - File toolJar + String? toolJar + + Float? memory + Float? memoryMultiplier + Int mem = ceil(select_first([memory, 4.0])) + + String toolCommand = if defined(toolJar) + then "java -Xmx" + mem + "G -jar " +toolJar + else "biopet-fastqsync -Xmx" + mem + "G" command { set -e -o pipefail ${preCommand} mkdir -p $(dirname ${out1path}) $(dirname ${out2path}) - java -jar ${toolJar} \ + ${toolCommand} \ --in1 ${in1} \ --in2 ${in2} \ --ref1 ${ref1} \ @@ -165,10 +189,14 @@ task FastqSync { File out1 = out1path File out2 = out2path } + + runtime { + memory: ceil(mem * select_first([memoryMultiplier, 2.5])) + } } task SampleConfig { - File? toolJar + String? toolJar String? preCommand Array[File]+ inputFiles String keyFilePath @@ -216,7 +244,7 @@ task ScatterRegions { File refFasta File refDict String outputDirPath - File toolJar + String? toolJar Int? scatterSize File? regions @@ -224,11 +252,15 @@ task ScatterRegions { Float? memoryMultiplier Int mem = ceil(select_first([memory, 4.0])) + String toolCommand = if defined(toolJar) + then "java -Xmx" + mem + "G -jar " +toolJar + else "biopet-scatterregions -Xmx" + mem + "G" + command { set -e -o pipefail ${preCommand} mkdir -p ${outputDirPath} - java -Xmx${mem}G -jar ${toolJar} \ + ${toolCommand} \ -R ${refFasta} \ -o ${outputDirPath} \ ${"-s " + scatterSize} \