import "./tasks/BQSR.wdl" as Sentieon_BQSR import "./tasks/TNseq.wdl" as TNseq import "./tasks/TNscope.wdl" as TNscope import "./tasks/manta.wdl" as manta_calling import "./tasks/strelka.wdl" as strelka_calling import "./tasks/bcftools.wdl" as bcftools import "./tasks/bcftools_concat.wdl" as bcftools_concat import "./tasks/annovar.wdl" as annovar import "./tasks/Haplotyper.wdl" as Haplotyper import "./tasks/MSIsensor.wdl" as MSIsensor import "./tasks/tmb.wdl" as tmb workflow {{ project_name }} { #sample info File? normal_deduped_bam File? normal_deduped_bam_bai File? tumor_deduped_bam File? tumor_deduped_bam_bai String sample_id String Seq_platform #reference fasta String ref_fasta File ref_fasta_dir File annot_gff File dbsnp_dir File dbmills_dir String dbsnp String db_mills File germline_resource File germline_resource_tbi File annovar_database File? regions File baseline File hg38_CDS File tumor_recal_table File normal_recal_table #docker String docker_fastp String docker_sentieon String SENTIEON_LICENSE String docker_qualimap String docker_manta String docker_strelka String docker_bcftools String docker_annovar String docker_tmb String docker_MSIsensor #config String cluster_config String disk_size Boolean? fastqc Boolean bamqc Boolean Annovar Boolean AF_filter call TNscope.sentieon_TNscope as sentieon_TNscope{ input: sample_id = sample_id, tumor_bam = tumor_deduped_bam, tumor_bam_bai = tumor_deduped_bam_bai, normal_bam = normal_deduped_bam, normal_bam_bai = normal_deduped_bam_bai, tumor_name = sample_id+'_T', normal_name = sample_id+'_N', tumor_recall_data = tumor_recal_table, normal_recall_data = normal_recal_table, ref_dir = ref_fasta_dir, ref_fasta = ref_fasta, dbsnp_dir = dbsnp_dir, dbsnp = dbsnp, # excute env docker = docker_sentieon, cluster_config = cluster_config, disk_size = disk_size, SENTIEON_LICENSE = SENTIEON_LICENSE } call bcftools.bcftools as TNscope_bcftools { input: vcf=sentieon_TNscope.vcf, fasta=ref_fasta, ref_dir=ref_fasta_dir, docker=docker_bcftools, cluster_config=cluster_config, disk_size=disk_size } call strelka_calling.strelka_calling as strelka_calling{ input: tumor_bam = tumor_deduped_bam, tumor_bam_bai = tumor_deduped_bam_bai, normal_bam = normal_deduped_bam, normal_bam_bai = normal_deduped_bam_bai, ref_fasta = ref_fasta, ref_dir = ref_fasta_dir, sample_id = sample_id, docker=docker_strelka, cluster_config=cluster_config, disk_size=disk_size } call bcftools_concat.bcftools as bcftools_concat{ input: ref_dir=ref_fasta_dir, fasta=ref_fasta, vcf_indels=strelka_calling.indel_vcf, vcf_snvs=strelka_calling.snv_vcf, sample_id=sample_id, docker=docker_bcftools, cluster_config=cluster_config, disk_size=disk_size } call bcftools.bcftools as strelka_bcftools { input: vcf=bcftools_concat.concat_vcf, fasta=ref_fasta, ref_dir=ref_fasta_dir, docker=docker_bcftools, cluster_config=cluster_config, disk_size=disk_size } if (Annovar){ call annovar.ANNOVAR as TNscope_ANNOVAR { input: vcf=TNscope_bcftools.norm_vcf, annovar_database=annovar_database, docker=docker_annovar, cluster_config=cluster_config, disk_size=disk_size } } }