import "./tasks/mapping.wdl" as mapping import "./tasks/fastqc.wdl" as fastqc import "./tasks/fastqscreen.wdl" as fastqscreen import "./tasks/qualimap.wdl" as qualimap import "./tasks/Dedup.wdl" as Dedup import "./tasks/deduped_Metrics.wdl" as deduped_Metrics import "./tasks/Realigner.wdl" as Realigner import "./tasks/BQSR.wdl" as BQSR import "./tasks/corealigner.wdl" as corealigner import "./tasks/TNseq.wdl" as TNseq import "./tasks/TNscope.wdl" as TNscope workflow {{ project_name }} { File tumor_fastq_1 File tumor_fastq_2 File normal_fastq_1 File normal_fastq_2 String SENTIEON_INSTALL_DIR String SENTIEON_LICENSE String sample String SENTIEONdocker String FASTQCdocker String FASTQSCREENdocker String QUALIMAPdocker File screen_ref_dir File fastq_screen_conf String fasta File ref_dir File dbmills_dir String db_mills File dbsnp_dir String dbsnp String disk_size String cluster_config call mapping.mapping as tumor_mapping { input: group=sample + "tumor", sample=sample + "tumor", fastq_1=tumor_fastq_1, fastq_2=tumor_fastq_2, SENTIEON_LICENSE=SENTIEON_LICENSE, SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, pl="ILLUMINAL", fasta=fasta, ref_dir=ref_dir, docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call mapping.mapping as normal_mapping { input: group=sample + "normal", sample=sample + "normal", fastq_1=normal_fastq_1, fastq_2=normal_fastq_2, SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, pl="ILLUMINAL", fasta=fasta, ref_dir=ref_dir, docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call fastqc.fastqc as fastqc { input: tumor_read1=tumor_fastq_1, tumor_read2=tumor_fastq_2, normal_read1=normal_fastq_1, normal_read2=normal_fastq_2, docker=FASTQCdocker, cluster_config=cluster_config, disk_size=disk_size } call fastqscreen.fastqscreen as fastqscreen { input: tumor_read1=tumor_fastq_1, tumor_read2=tumor_fastq_2, normal_read1=normal_fastq_1, normal_read2=normal_fastq_2, screen_ref_dir=screen_ref_dir, fastq_screen_conf=fastq_screen_conf, docker=FASTQSCREENdocker, cluster_config=cluster_config, disk_size=disk_size } call Dedup.Dedup as tumor_Dedup { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, sorted_bam=tumor_mapping.sorted_bam, sorted_bam_index=tumor_mapping.sorted_bam_index, sample=sample + "tumor", docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call Dedup.Dedup as normal_Dedup { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, sorted_bam=normal_mapping.sorted_bam, sorted_bam_index=normal_mapping.sorted_bam_index, sample=sample + "normal", docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call qualimap.qualimap as tumor_qualimap { input: bam=tumor_Dedup.Dedup_bam, bai=tumor_Dedup.Dedup_bam_index, docker=QUALIMAPdocker, disk_size=disk_size, cluster_config=cluster_config } call qualimap.qualimap as normal_qualimap { input: bam=normal_Dedup.Dedup_bam, bai=normal_Dedup.Dedup_bam_index, docker=QUALIMAPdocker, disk_size=disk_size, cluster_config=cluster_config } call deduped_Metrics.deduped_Metrics as tumor_deduped_Metrics { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, fasta=fasta, ref_dir=ref_dir, Dedup_bam=tumor_Dedup.Dedup_bam, Dedup_bam_index=tumor_Dedup.Dedup_bam_index, sample=sample + "tumor", docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call deduped_Metrics.deduped_Metrics as normal_deduped_Metrics { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, fasta=fasta, ref_dir=ref_dir, Dedup_bam=normal_Dedup.Dedup_bam, Dedup_bam_index=normal_Dedup.Dedup_bam_index, sample=sample + "normal", docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call Realigner.Realigner as tumor_Realigner { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, fasta=fasta, ref_dir=ref_dir, Dedup_bam=tumor_Dedup.Dedup_bam, Dedup_bam_index=tumor_Dedup.Dedup_bam_index, db_mills=db_mills, dbmills_dir=dbmills_dir, sample=sample + "tumor", docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call Realigner.Realigner as normal_Realigner { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, fasta=fasta, ref_dir=ref_dir, Dedup_bam=normal_Dedup.Dedup_bam, Dedup_bam_index=normal_Dedup.Dedup_bam_index, db_mills=db_mills, dbmills_dir=dbmills_dir, sample=sample + "normal", docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call BQSR.BQSR as tumor_BQSR { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, fasta=fasta, ref_dir=ref_dir, realigned_bam=tumor_Realigner.realigner_bam, realigned_bam_index=tumor_Realigner.realigner_bam_index, db_mills=db_mills, dbmills_dir=dbmills_dir, dbsnp=dbsnp, dbsnp_dir=dbsnp_dir, sample=sample + "tumor", docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call BQSR.BQSR as normal_BQSR { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, fasta=fasta, ref_dir=ref_dir, realigned_bam=normal_Realigner.realigner_bam, realigned_bam_index=normal_Realigner.realigner_bam_index, db_mills=db_mills, dbmills_dir=dbmills_dir, dbsnp=dbsnp, dbsnp_dir=dbsnp_dir, sample=sample + "normal", docker=SENTIEONdocker, disk_size=disk_size, cluster_config=cluster_config } call corealigner.corealigner as corealigner { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, fasta=fasta, ref_dir=ref_dir, sample=sample, docker=SENTIEONdocker, db_mills=db_mills, dbmills_dir=dbmills_dir, dbsnp=dbsnp, dbsnp_dir=dbsnp_dir, disk_size=disk_size, tumor_recaled_bam=tumor_BQSR.recaled_bam, tumor_recaled_bam_index=tumor_BQSR.recaled_bam_index, normal_recaled_bam=normal_BQSR.recaled_bam, normal_recaled_bam_index=normal_BQSR.recaled_bam_index, cluster_config=cluster_config } call TNseq.TNseq as TNseq { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, fasta=fasta, ref_dir=ref_dir, corealigner_bam=corealigner.corealigner_bam, corealigner_bam_index=corealigner.corealigner_bam_index, dbsnp=dbsnp, dbsnp_dir=dbsnp_dir, tumor_name=sample + "tumor", normal_name=sample + "normal", docker=SENTIEONdocker, sample=sample, disk_size=disk_size, cluster_config=cluster_config } call TNscope.TNscope as TNscope { input: SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR, SENTIEON_LICENSE=SENTIEON_LICENSE, fasta=fasta, ref_dir=ref_dir, corealigner_bam=corealigner.corealigner_bam, corealigner_bam_index=corealigner.corealigner_bam_index, dbsnp=dbsnp, dbsnp_dir=dbsnp_dir, tumor_name=sample + "tumor", normal_name=sample + "normal", docker=SENTIEONdocker, sample=sample, disk_size=disk_size, cluster_config=cluster_config } }