Newer
Older
#TODO needs to be extended for all possible output extensions
Map[String, String] samOutputNames = {"BAM SortedByCoordinate": "sortedByCoord.out.bam"}
# converts String? to String for use as key (for the Map above) in output
String key = select_first([outSAMtype, "BAM SortedByCoordinate"])
command {
set -e -o pipefail
mkdir -p ${sub(outFileNamePrefix, basename(outFileNamePrefix) + "$", "")}
${preCommand}
STAR \
--outFileNamePrefix ${outFileNamePrefix} \
--genomeDir ${genomeDir} \
--outSAMtype ${default="BAM SortedByCoordinate" outSAMtype} \
--readFilesCommand ${default="zcat" readFilesCommand} \
${"--runThreadN " + runThreadN} \
${"--outStd " + outStd} \
${"--twopassMode " + twopassMode} \
${true="--outSAMattrRGline " false="" defined(outSAMattrRGline)} ${sep=" , " outSAMattrRGline}
File bamFile = outFileNamePrefix + "Aligned." + samOutputNames[key]
}
task makeStarRGline {
String sample
String library
String? platform
String readgroup
command {
printf '"ID:${readgroup}" "LB:${library}" "PL:${default="ILLUMINA" platform}" "SM:${sample}"'
}
output {
String rgLine = read_string(stdout())
}
}