version 1.0 task PeakCalling { input { String? preCommand Array[File] bamFiles String outDir String sampleName Int? threads Int? memory Boolean? nomodel } command { set -e -o pipefail ~{preCommand} macs2 callpeak \ --treatment ~{sep = ' ' bamFiles} \ --outdir ~{outDir} \ --name ~{sampleName} \ ~{default=false true='--nomodel' false='' nomodel} } output { File peakFile = outDir + "/" + sampleName + "/macs2/" + sampleName + "_peaks.narrowPeak" } runtime { cpu: select_first([threads,1]) memory: select_first([memory,8]) } }