task TNseq { File ref_dir File dbsnp_dir File? regions String sample String SENTIEON_INSTALL_DIR String SENTIEON_LICENSE String tumor_name String normal_name String docker String cluster_config String fasta File? corealigner_bam File? corealigner_bam_index File tumor_recaled_bam File tumor_recaled_bam_index String dbsnp String disk_size Boolean set_pon String? cosmic_vcf File? cosmic_dir File? pon_vcf String pon_command = if set_pon then "--pon /cromwell_root/tmp/PON/$(basename ${pon_vcf}) --cosmic /cromwell_root/tmp/PON/${cosmic_vcf}" else "" command <<< set -o pipefail set -e export SENTIEON_LICENSE=${SENTIEON_LICENSE} nt=$(nproc) if ${set_pon}; then mkdir -p /cromwell_root/tmp/PON/ cp ${cosmic_dir}/${cosmic_vcf} /cromwell_root/tmp/PON/ cp ${pon_vcf} /cromwell_root/tmp/PON/ ${SENTIEON_INSTALL_DIR}/bin/sentieon util vcfindex /cromwell_root/tmp/PON/${cosmic_vcf} ${SENTIEON_INSTALL_DIR}/bin/sentieon util vcfindex /cromwell_root/tmp/PON/$(basename ${pon_vcf}) fi if [ ${regions} != "" ]; then ${SENTIEON_INSTALL_DIR}/bin/sentieon driver -t $nt --interval ${regions} -r ${ref_dir}/${fasta} -i ${corealigner_bam} --algo TNhaplotyper --tumor_sample ${tumor_name} --normal_sample ${normal_name} --dbsnp ${dbsnp_dir}/${dbsnp} ${pon_command} ${sample}.TNseq.TN.vcf else ${SENTIEON_INSTALL_DIR}/bin/sentieon driver -t $nt -r ${ref_dir}/${fasta} -i ${corealigner_bam} --algo TNhaplotyper --tumor_sample ${tumor_name} --normal_sample ${normal_name} --dbsnp ${dbsnp_dir}/${dbsnp} ${pon_command} ${sample}.TNseq.TN.vcf fi >>> runtime { docker: docker cluster: cluster_config systemDisk: "cloud_ssd 40" dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/" } output { File TNseq_vcf= "${sample}.TNseq.TN.vcf" File TNseq_vcf_index = "${sample}.TNseq.TN.vcf.idx" } }