pipeline/pipeline.wdl

130 lines
3.2 KiB
Plaintext
Raw Normal View History

2023-08-25 10:06:31 +08:00
import "./wdl/task.wdl" as mytask
import "./wdl/qc.wdl"
import "./wdl/alignment.wdl"
2023-09-27 10:47:03 +08:00
import "./wdl/call_mutation.wdl"
2023-10-10 11:09:16 +08:00
import "./wdl/fusion.wdl"
2023-10-18 15:59:11 +08:00
import "./wdl/statistics.wdl"
import "./wdl/cnv.wdl"
import "./wdl/msi.wdl"
2023-11-01 10:09:29 +08:00
import "./wdl/chemo.wdl"
2023-08-29 10:31:06 +08:00
2023-08-25 10:06:31 +08:00
workflow pipeline {
String tumor
String? normal
2023-09-27 10:47:03 +08:00
Boolean umi=false
String input_dir
String output_dir
String bed
2023-10-10 11:09:16 +08:00
String project
2023-11-01 10:09:29 +08:00
String cancer
2023-09-27 10:47:03 +08:00
2023-10-18 15:59:11 +08:00
String codes_dir="/home/zhangchao/project/pipeline/workflow/script"
2023-08-25 10:06:31 +08:00
String ref = "/dataseq/jmdna/database/genome/hg19/hg19.fa"
2023-09-27 10:47:03 +08:00
String workdir="${output_dir}"
2023-08-25 10:06:31 +08:00
call mytask.create_dir as create_dir {
input:
workdir=workdir
}
call qc.qc as qc {
input:
tumor=tumor,
normal=normal,
2023-09-27 10:47:03 +08:00
umi=umi,
input_dir=input_dir,
output_dir=workdir
2023-08-25 10:06:31 +08:00
}
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,
2023-09-27 10:47:03 +08:00
umi=umi,
2023-08-29 10:31:06 +08:00
ref=ref,
bed=bed,
2023-09-27 10:47:03 +08:00
output_dir=workdir
2023-08-25 10:06:31 +08:00
}
2023-10-18 15:59:11 +08:00
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
}
2023-09-27 10:47:03 +08:00
call call_mutation.call_mutation as call_mutation {
2023-08-25 10:06:31 +08:00
input:
tumor=tumor,
2023-09-27 10:47:03 +08:00
tumor_rmdup_bam=alignment.tumor_rmdup_bam,
2023-08-25 10:06:31 +08:00
normal=normal,
2023-09-27 10:47:03 +08:00
normal_rmdup_bam=alignment.normal_rmdup_bam,
2023-08-25 10:06:31 +08:00
2023-09-27 10:47:03 +08:00
umi=umi,
2023-08-25 10:06:31 +08:00
ref=ref,
bed=bed,
2023-11-01 10:09:29 +08:00
output_dir=workdir,
project=project
2023-08-29 17:46:31 +08:00
}
2023-10-10 11:09:16 +08:00
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,
2023-10-18 15:59:11 +08:00
ref=ref,
umi=umi,
2023-11-01 10:09:29 +08:00
tumor_bamdst_depth=statistics.tumor_bamdst_depth,
project=project,
cancer=cancer
2023-10-10 11:09:16 +08:00
}
2023-10-18 15:59:11 +08:00
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,
2023-11-01 10:09:29 +08:00
project=project,
cancer=cancer
2023-10-18 15:59:11 +08:00
}
2023-10-10 11:09:16 +08:00
2023-10-18 15:59:11 +08:00
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,
}
2023-10-10 11:09:16 +08:00
2023-11-01 10:09:29 +08:00
call chemo.chemo as call_chemo {
input:
name=tumor,
output_dir=workdir,
project=project,
vcf=call_mutation.germline_vcf
}
2023-10-10 11:09:16 +08:00
}