@@ -24,7 +24,8 @@ | |||
"disk_size": "200", | |||
"cluster_config": "OnDemand bcs.a2.3xlarge img-ubuntu-vpc", | |||
"germline": false, | |||
"tnseq": true, | |||
"tnscope": true, | |||
"varscan": true | |||
"tnseq": false, | |||
"tnscope": false, | |||
"varscan": false, | |||
"tnseqold": false | |||
} |
@@ -31,6 +31,7 @@ | |||
"{{ project_name }}.cluster_config": "{{ cluster_config }}", | |||
"{{ project_name }}.germline": {{ germline | tojson }}, | |||
"{{ project_name }}.tnseq": {{ tnseq | tojson }}, | |||
"{{ project_name }}.tnseqold": {{ tnseqold | tojson }}, | |||
"{{ project_name }}.tnscope": {{ tnscope | tojson }}, | |||
"{{ project_name }}.varscan": {{ varscan | tojson }} | |||
} |
@@ -0,0 +1,68 @@ | |||
task TNseqold { | |||
String sample | |||
String SENTIEON_INSTALL_DIR | |||
String SENTIEON_LICENSE | |||
File tumor_recaled_bam | |||
File tumor_recaled_bam_index | |||
File tumor_recal_table | |||
File normal_recaled_bam | |||
File normal_recaled_bam_index | |||
File normal_recal_table | |||
String tumor_name | |||
String normal_name | |||
File ref_dir | |||
String fasta | |||
File? regions | |||
Int? interval_padding | |||
File? pon_vcf | |||
String docker | |||
String cluster_config | |||
String disk_size | |||
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 [ ${regions} ]; then | |||
INTERVAL="--interval ${regions} --interval_padding ${interval_padding}" | |||
else | |||
INTERVAL="" | |||
fi | |||
if [ ${pon_vcf} ]; then | |||
PON="--pon ${pon_vcf}" | |||
${SENTIEON_INSTALL_DIR}/bin/sentieon util vcfindex ${pon_vcf} | |||
else | |||
PON="" | |||
fi | |||
${SENTIEON_INSTALL_DIR}/bin/sentieon driver -t $nt \ | |||
--INTERVAL -r ${ref_dir}/${fasta} \ | |||
-i ${tumor_recaled_bam} -q ${tumor_recal_table} \ | |||
-i ${normal_recaled_bam} -q ${normal_recal_table} \ | |||
--algo TNhaplotyper \ | |||
--tumor_sample ${tumor_name} --normal_sample ${normal_name} \ | |||
--dbsnp ${dbsnp_dir}/${dbsnp} $PON \ | |||
${sample}.TNseq.TN.vcf | |||
>>> | |||
runtime { | |||
docker: docker | |||
cluster: cluster_config | |||
systemDisk: "cloud_ssd 40" | |||
dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/" | |||
} | |||
output { | |||
File TNseq_vcf= "${sample}.TNseq.old.TN.vcf" | |||
File TNseq_vcf_index = "${sample}.TNseq.old.TN.vcf.idx" | |||
} |
@@ -1,4 +1,5 @@ | |||
import "./tasks/TNseq.wdl" as TNseq | |||
import "./tasks/TNseqold.wdl" as TNseqold | |||
import "./tasks/TNscope.wdl" as TNscope | |||
import "./tasks/annovar.wdl" as annovar | |||
@@ -42,9 +43,45 @@ workflow {{ project_name }} { | |||
Boolean germline | |||
Boolean tnseq | |||
Boolean tnseqold | |||
Boolean tnscope | |||
Boolean varscan | |||
if (tnseqold) { | |||
call TNseqold.TNseqold as TNseqold { | |||
input: | |||
SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, | |||
SENTIEON_LICENSE=SENTIEON_LICENSE, | |||
sample=sample_id, | |||
normal_recaled_bam=normal_bam, | |||
normal_recaled_bam_index=normal_bai, | |||
normal_recal_table=normal_table, | |||
tumor_recaled_bam=tumor_bam, | |||
tumor_recaled_bam_index=tumor_bai, | |||
tumor_recal_table=tumor_table, | |||
normal_name=sample_id + "_normal", | |||
tumor_name=sample_id + "_tumor", | |||
fasta=fasta, | |||
ref_dir=ref_dir, | |||
regions=regions, | |||
interval_padding=interval_padding, | |||
pon_vcf=tnseq_pon, | |||
docker=sentieon_docker, | |||
cluster_config=cluster_config, | |||
disk_size=disk_size | |||
} | |||
call annovar.annovar as TNseq_annovar { | |||
input: | |||
sample=sample_id, | |||
vcf=TNseq.TNseq_vcf, | |||
database=database, | |||
docker=annovar_docker, | |||
cluster_config=cluster_config, | |||
disk_size=disk_size | |||
} | |||
} | |||
if (tnseq) { | |||
call TNseq.TNseq as TNseq { | |||
input: |