# TNScope_and_Stralka | |||||
# somatic_SNVs_calling_VIP | |||||
task bcftools { | |||||
File ref_dir | |||||
String fasta | |||||
File vcf_indels | |||||
File vcf_snvs | |||||
String sample_id | |||||
String docker | |||||
String cluster_config | |||||
String disk_size | |||||
command <<< | |||||
set -o pipefail | |||||
set -e | |||||
nt=$(nproc) | |||||
bcftools concat -a ${vcf_indels} ${vcf_snvs} -Oz -o ${sample_id}_stralka.vcf.gz | |||||
bcftools index -t ${sample_id}_stralka.vcf.gz | |||||
>>> | |||||
runtime { | |||||
docker: docker | |||||
cluster: cluster_config | |||||
systemDisk: "cloud_ssd 40" | |||||
dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/" | |||||
} | |||||
output { | |||||
File concat_vcf = "${sample_id}_stralka.vcf.gz" | |||||
File concat_vcf_index = "${sample_id}_stralka.vcf.gz.tbi" | |||||
} | |||||
} |
{ | |||||
"Seq_platform":"Illumina", | |||||
"ref_fasta":"GRCh38.d1.vd1.fa", | |||||
"ref_fasta_dir":"oss://hcc1395/reference_genome/GRCh38.d1.vd1/", | |||||
"docker_fastp":"registry-vpc.cn-shanghai.aliyuncs.com/easygene/fastp:v0.20.1_cv1", | |||||
"docker_sentieon":"registry-vpc.cn-shanghai.aliyuncs.com/hcc1395_aliyun/sentieon-genomics:v202112.05", | |||||
"docker_qualimap":"registry.cn-shanghai.aliyuncs.com/hcc1395_aliyun/qualimap:2.0.0", | |||||
"docker_manta":"registry.cn-shanghai.aliyuncs.com/hcc1395_aliyun/manta:v1.6.0", | |||||
"docker_strelka":"registry.cn-shanghai.aliyuncs.com/hcc1395_aliyun/strelka:v2.9.10", | |||||
"SENTIEON_LICENSE":"172.25.2.5:8990", | |||||
"cluster_config":"OnDemand ecs.c6.xlarge img-ubuntu-vpc", | |||||
"disk_size":"500", | |||||
"fastqc":false, | |||||
"annot_gff":"oss://hcc1395/reference_genome/gencode.v36.annotation.gff", | |||||
"dbsnp_dir":"oss://hcc1395/reference_genome/GRCh38.d1.vd1/", | |||||
"dbmills_dir":"oss://hcc1395/reference_genome/GRCh38.d1.vd1/", | |||||
"dbsnp":"dbsnp_146.hg38.vcf", | |||||
"db_mills":"Mills_and_1000G_gold_standard.indels.hg38.vcf", | |||||
"bamqc":true, | |||||
"germline_resource":"oss://hcc1395/reference_genome/gnomAD/af-only-gnomad.v3.1.1.vcf.gz", | |||||
"germline_resource_tbi":"oss://hcc1395/reference_genome/gnomAD/af-only-gnomad.v3.1.1.vcf.gz.tbi", | |||||
"annovar_database":"oss://hcc1395/reference_genome/annovar/", | |||||
"docker_bcftools":"registry.cn-shanghai.aliyuncs.com/hcc1395_aliyun/delly:1.1.6", | |||||
"docker_annovar":"registry.cn-shanghai.aliyuncs.com/hcc1395_aliyun/annovar:v20191024", | |||||
"Annovar":true, | |||||
"regions":"", | |||||
"baseline":"oss://hcc1395/reference_genome/MSIsensor/hg38_reference.list_baseline", | |||||
"docker_MSIsensor":"registry.cn-shanghai.aliyuncs.com/hcc1395_aliyun/msisensor-pro:1.2.0", | |||||
"hg38_CDS":"oss://hcc1395/reference_genome/TMB_dir/genecode.v36.CDS_merged.bed", | |||||
"docker_tmb":"registry.cn-shanghai.aliyuncs.com/hcc1395_aliyun/tmb:1.1.0", | |||||
"AF_filter":true | |||||
} |
{ | |||||
"{{ project_name }}.sample_id": "{{ sample_id }}", | |||||
"{{ project_name }}.normal_deduped_bam": "{{ normal_deduped_bam }}", | |||||
"{{ project_name }}.normal_deduped_bam_bai": "{{ normal_deduped_bam_bai }}", | |||||
"{{ project_name }}.tumor_deduped_bam": "{{ tumor_deduped_bam }}", | |||||
"{{ project_name }}.tumor_deduped_bam_bai": "{{ tumor_deduped_bam_bai }}", | |||||
"{{ project_name }}.Seq_platform": "{{ Seq_platform }}", | |||||
"{{ project_name }}.ref_fasta": "{{ ref_fasta }}", | |||||
"{{ project_name }}.ref_fasta_dir": "{{ ref_fasta_dir }}", | |||||
"{{ project_name }}.fastqc": {{ fastqc | tojson }}, | |||||
"{{ project_name }}.cluster_config": "{{cluster_config }}", | |||||
"{{ project_name }}.disk_size": "{{ disk_size }}", | |||||
"{{ project_name }}.docker_fastp": "{{ docker_fastp }}", | |||||
"{{ project_name }}.docker_sentieon": "{{ docker_sentieon }}", | |||||
"{{ project_name }}.SENTIEON_LICENSE": "{{ SENTIEON_LICENSE }}", | |||||
"{{ project_name }}.docker_qualimap": "{{ docker_qualimap }}", | |||||
"{{ project_name }}.annot_gff": "{{ annot_gff }}", | |||||
"{{ project_name }}.dbsnp_dir": "{{ dbsnp_dir }}", | |||||
"{{ project_name }}.dbmills_dir": "{{ dbmills_dir }}", | |||||
"{{ project_name }}.dbsnp": "{{ dbsnp }}", | |||||
"{{ project_name }}.db_mills": "{{ db_mills }}", | |||||
"{{ project_name }}.bamqc": {{ bamqc | tojson }}, | |||||
"{{ project_name }}.germline_resource": "{{ germline_resource }}", | |||||
"{{ project_name }}.germline_resource_tbi": "{{ germline_resource_tbi }}", | |||||
"{{ project_name }}.docker_manta": "{{ docker_manta }}", | |||||
"{{ project_name }}.docker_strelka": "{{ docker_strelka }}", | |||||
"{{ project_name }}.annovar_database": "{{ annovar_database}}", | |||||
"{{ project_name }}.docker_bcftools":"{{docker_bcftools}}", | |||||
"{{ project_name }}.docker_annovar":"{{docker_annovar}}", | |||||
"{{ project_name }}.Annovar":{{ Annovar | tojson }}, | |||||
"{{ project_name }}.AF_filter":{{ AF_filter | tojson }}, | |||||
"{{ project_name }}.regions":"{{regions}}", | |||||
"{{ project_name }}.baseline":"{{baseline}}", | |||||
"{{ project_name }}.hg38_CDS":"{{hg38_CDS}}", | |||||
"{{ project_name }}.docker_tmb": "{{ docker_tmb }}", | |||||
"{{ project_name }}.docker_MSIsensor": "{{ docker_MSIsensor }}" | |||||
} |
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 | |||||
#VIP客户(只用TNseq进行call) | |||||
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 | |||||
#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 MSIsensor.MSIsensor as MSIsensor { | |||||
# input: | |||||
# sample=sample_id, | |||||
# fasta=ref_fasta, | |||||
# ref_dir=ref_fasta_dir, | |||||
# normal_bam=normal_deduped_bam, | |||||
# normal_bam_index=normal_deduped_bam_bai, | |||||
# tumor_bam=tumor_deduped_bam, | |||||
# tumor_bam_index=tumor_deduped_bam_bai, | |||||
# baseline=baseline, | |||||
# docker=docker_MSIsensor, | |||||
# cluster_config=cluster_config, | |||||
# 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=normal_deduped_bam, | |||||
# recaled_bam_index=normal_deduped_bam_bai, | |||||
# 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=cluster_config, | |||||
# disk_size=disk_size | |||||
# } | |||||
call TNseq.sentieon_TNseq as sentieon_TNseq{ | |||||
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', | |||||
ref_dir = ref_fasta_dir, | |||||
ref_fasta = ref_fasta, | |||||
germline_resource = germline_resource, | |||||
germline_resource_tbi = germline_resource_tbi, | |||||
docker = docker_sentieon, | |||||
cluster_config = cluster_config, | |||||
disk_size = disk_size, | |||||
SENTIEON_LICENSE = SENTIEON_LICENSE | |||||
} | |||||
call bcftools.bcftools as TNseq_bcftools { | |||||
input: | |||||
vcf=sentieon_TNseq.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 TNseq_ANNOVAR { | |||||
input: | |||||
vcf=TNseq_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=cluster_config, | |||||
# disk_size=disk_size, | |||||
# AF_filter=AF_filter | |||||
# } | |||||
# call annovar.ANNOVAR as Haplotyper_ANNOVAR { | |||||
# input: | |||||
# vcf=Haplotyper_bcftools.norm_vcf, | |||||
# annovar_database=annovar_database, | |||||
# docker=docker_annovar, | |||||
# cluster_config=cluster_config, | |||||
# disk_size=disk_size | |||||
# } | |||||
} | |||||
} |