import "./wdl/task.wdl" as mytask import "./wdl/qc.wdl" import "./wdl/alignment.wdl" import "./wdl/call_mutation.wdl" import "./wdl/fusion.wdl" import "./wdl/statistics.wdl" import "./wdl/cnv.wdl" import "./wdl/msi.wdl" import "./wdl/chemo.wdl" workflow pipeline { String tumor String? normal Boolean umi=false String input_dir String output_dir String bed String project String cancer String codes_dir="/home/zhangchao/project/pipeline/workflow/script" String ref = "/dataseq/jmdna/database/genome/hg19/hg19.fa" String workdir="${output_dir}" call mytask.create_dir as create_dir { input: workdir=workdir } call qc.qc as qc { input: tumor=tumor, normal=normal, umi=umi, input_dir=input_dir, output_dir=workdir } call alignment.alignment as alignment { input: tumor=tumor, tumor_r1=qc.tumor_r1, tumor_r2=qc.tumor_r2, normal=normal, normal_r1=qc.normal_r1, normal_r2=qc.normal_r2, umi=umi, ref=ref, bed=bed, output_dir=workdir } call statistics.statistics as statistics { input: tumor=tumor, tumor_rmdup_bam=alignment.tumor_rmdup_bam, normal=normal, normal_rmdup_bam=alignment.normal_rmdup_bam, ref=ref, bed=bed, output_dir=workdir } call call_mutation.call_mutation as call_mutation { input: tumor=tumor, tumor_rmdup_bam=alignment.tumor_rmdup_bam, normal=normal, normal_rmdup_bam=alignment.normal_rmdup_bam, umi=umi, ref=ref, bed=bed, output_dir=workdir, project=project } call fusion.call_fusion as call_fusion { input: name=tumor, sorted_bam=alignment.tumor_sorted_bam, rmdup_bam=alignment.tumor_rmdup_bam, output_dir=output_dir, ref=ref, umi=umi, tumor_bamdst_depth=statistics.tumor_bamdst_depth, project=project, cancer=cancer } call cnv.call_cnv as call_cnv { input: tumor=tumor, tumor_rmdup_bam=alignment.tumor_rmdup_bam, normal=normal, normal_rmdup_bam=alignment.normal_rmdup_bam, ref=ref, bed=bed, output_dir=workdir, project=project, cancer=cancer } call msi.call_msi as call_msi { input: tumor=tumor, tumor_rmdup_bam=alignment.tumor_rmdup_bam, normal=normal, normal_rmdup_bam=alignment.normal_rmdup_bam, bed=bed, output_dir=workdir, } call chemo.chemo as call_chemo { input: name=tumor, output_dir=workdir, project=project, vcf=call_mutation.germline_vcf } }