Browse Source

更新 'workflow_SEQC2.wdl'

master
meng 2 years ago
parent
commit
f6bafb6dca
1 changed files with 81 additions and 60 deletions
  1. +81
    -60
      workflow_SEQC2.wdl

+ 81
- 60
workflow_SEQC2.wdl View File

#import "./tasks/fastp.wdl" as fastp
import "./tasks/BQSR.wdl" as Sentieon_BQSR import "./tasks/BQSR.wdl" as Sentieon_BQSR
import "./tasks/TNseq.wdl" as TNseq import "./tasks/TNseq.wdl" as TNseq
import "./tasks/TNscope.wdl" as TNscope import "./tasks/TNscope.wdl" as TNscope
import "./tasks/bcftools.wdl" as bcftools import "./tasks/bcftools.wdl" as bcftools
import "./tasks/bcftools_concat.wdl" as bcftools_concat import "./tasks/bcftools_concat.wdl" as bcftools_concat
import "./tasks/annovar.wdl" as annovar import "./tasks/annovar.wdl" as annovar
import "./tasks/Haplotyper.wdl" as Haplotyper
import "./tasks/MSIsensor.wdl" as MSIsensor
import "./tasks/tmb.wdl" as tmb




#如果是SEQC的结果,应该是'T_1'和'N_1'
workflow {{ project_name }} { workflow {{ project_name }} {
#sample info #sample info
File? normal_deduped_bam
File? normal_deduped_bam_bai
File? normal_deduped_bam
File? normal_deduped_bam_bai
File? tumor_deduped_bam File? tumor_deduped_bam
File? tumor_deduped_bam_bai File? tumor_deduped_bam_bai
String sample_id
String sample_id
String Seq_platform String Seq_platform
#reference fasta #reference fasta
String ref_fasta String ref_fasta
File ref_fasta_dir File ref_fasta_dir
File annot_gff File annot_gff
File dbsnp_dir
File dbmills_dir
String dbsnp
String db_mills
File dbsnp_dir
File dbmills_dir
String dbsnp
String db_mills
File germline_resource File germline_resource
File germline_resource_tbi File germline_resource_tbi
File annovar_database File annovar_database
File? regions
File baseline
File hg38_CDS


#docker #docker
String docker_fastp
String docker_fastp
String docker_sentieon String docker_sentieon
String SENTIEON_LICENSE String SENTIEON_LICENSE
String docker_qualimap String docker_qualimap
String docker_strelka String docker_strelka
String docker_bcftools String docker_bcftools
String docker_annovar String docker_annovar
String docker_tmb
String docker_MSIsensor


#config #config
String cluster_config
String disk_size
String cluster_config
String disk_size
Boolean? fastqc Boolean? fastqc
Boolean bamqc Boolean bamqc
Boolean Annovar Boolean Annovar
Boolean AF_filter


#SEQC2应该是_N_1和T_1
if (normal_deduped_bam != ""){ if (normal_deduped_bam != ""){


call Sentieon_BQSR.Sentieon_BQSR as Sentieon_BQSR_normal{ call Sentieon_BQSR.Sentieon_BQSR as Sentieon_BQSR_normal{


} }


call MSIsensor.MSIsensor as MSIsensor {
input:
sample=sample_id,
fasta=ref_fasta,
ref_dir=ref_fasta_dir,
normal_bam=Sentieon_BQSR_normal.recaled_bam,
normal_bam_index=Sentieon_BQSR_normal.recaled_bam_index,
tumor_bam=Sentieon_BQSR_tumor.recaled_bam,
tumor_bam_index=Sentieon_BQSR_tumor.recaled_bam_index,
baseline=baseline,
docker=docker_MSIsensor,
cluster_config="OnDemand bcs.ps.g.large img-ubuntu-vpc",
disk_size=disk_size
}


call Haplotyper.Haplotyper as Haplotyper {
input:
SENTIEON_LICENSE=SENTIEON_LICENSE,
sample=sample_id + '.N',
fasta=ref_fasta,
ref_dir=ref_fasta_dir,
recaled_bam=Sentieon_BQSR_normal.recaled_bam,
recaled_bam_index=Sentieon_BQSR_normal.recaled_bam_index,
dbsnp=dbsnp,
dbsnp_dir=dbsnp_dir,
regions=regions,
docker=docker_sentieon,
disk_size=disk_size,
cluster_config=cluster_config
}

call bcftools.bcftools as Haplotyper_bcftools {
input:
vcf=Haplotyper.vcf,
fasta=ref_fasta,
ref_dir=ref_fasta_dir,
docker=docker_bcftools,
cluster_config="OnDemand bcs.ps.g.large img-ubuntu-vpc",
disk_size=disk_size
}

call TNseq.sentieon_TNseq as sentieon_TNseq{ call TNseq.sentieon_TNseq as sentieon_TNseq{
input: input:
sample_id = sample_id, sample_id = sample_id,
SENTIEON_LICENSE = SENTIEON_LICENSE SENTIEON_LICENSE = SENTIEON_LICENSE
} }




call bcftools.bcftools as TNseq_bcftools { call bcftools.bcftools as TNseq_bcftools {
input: input:
vcf=sentieon_TNseq.vcf, vcf=sentieon_TNseq.vcf,
fasta=ref_fasta, fasta=ref_fasta,
ref_dir=ref_fasta_dir, ref_dir=ref_fasta_dir,
docker=docker_bcftools, docker=docker_bcftools,
cluster_config=cluster_config,
cluster_config="OnDemand bcs.ps.g.large img-ubuntu-vpc",
disk_size=disk_size disk_size=disk_size
} }


fasta=ref_fasta, fasta=ref_fasta,
ref_dir=ref_fasta_dir, ref_dir=ref_fasta_dir,
docker=docker_bcftools, docker=docker_bcftools,
cluster_config=cluster_config,
cluster_config="OnDemand bcs.ps.g.large img-ubuntu-vpc",
disk_size=disk_size disk_size=disk_size
} }


call manta_calling.manta_calling as manta_calling{
input:
tumor_bam = Sentieon_BQSR_tumor.recaled_bam,
tumor_bam_bai = Sentieon_BQSR_tumor.recaled_bam_index,
normal_bam = Sentieon_BQSR_normal.recaled_bam,
normal_bam_bai = Sentieon_BQSR_normal.recaled_bam_index,
ref_fasta = ref_fasta,
ref_dir = ref_fasta_dir,
sample_id = sample_id,
docker = docker_manta,
cluster_config = cluster_config,
disk_size = disk_size

}


call strelka_calling.strelka_calling as strelka_calling{ call strelka_calling.strelka_calling as strelka_calling{
input: input:
ref_fasta = ref_fasta, ref_fasta = ref_fasta,
ref_dir = ref_fasta_dir, ref_dir = ref_fasta_dir,
sample_id = sample_id, sample_id = sample_id,
manta_indel_vcf = manta_calling.manta_indel_vcf,
manta_indel_vcf_index = manta_calling.manta_indel_vcf_index,
docker=docker_strelka, docker=docker_strelka,
cluster_config=cluster_config,
cluster_config="OnDemand bcs.ps.g.6xlarge img-ubuntu-vpc",
disk_size=disk_size disk_size=disk_size
} }


vcf_snvs=strelka_calling.snv_vcf, vcf_snvs=strelka_calling.snv_vcf,
sample_id=sample_id, sample_id=sample_id,
docker=docker_bcftools, docker=docker_bcftools,
cluster_config=cluster_config,
cluster_config="OnDemand bcs.ps.g.large img-ubuntu-vpc",
disk_size=disk_size 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){ if (Annovar){
call annovar.ANNOVAR as TNseq_ANNOVAR { call annovar.ANNOVAR as TNseq_ANNOVAR {
input: input:
vcf=TNseq_bcftools.norm_vcf, vcf=TNseq_bcftools.norm_vcf,
annovar_database=annovar_database, annovar_database=annovar_database,
docker=docker_annovar, docker=docker_annovar,
cluster_config=cluster_config,
cluster_config="OnDemand bcs.ps.g.6xlarge img-ubuntu-vpc",
disk_size=disk_size disk_size=disk_size
} }


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
}
call tmb.TMB as TMB{
input:
sample=sample_id,
hg38_CDS=hg38_CDS,
regions=regions,
snpindel_txt=TNseq_ANNOVAR.multianno_txt,
docker=docker_tmb,
cluster_config="OnDemand bcs.ps.g.large img-ubuntu-vpc",
disk_size=disk_size,
AF_filter=AF_filter
}



call annovar.ANNOVAR as strelka_ANNOVAR {
input:
vcf=strelka_bcftools.norm_vcf,
annovar_database=annovar_database,
docker=docker_annovar,
cluster_config=cluster_config,
disk_size=disk_size
}
} }


} }

Loading…
Cancel
Save