Переглянути джерело

上传文件至 ''

master
meng 2 роки тому
джерело
коміт
b8d3682ac4
5 змінених файлів з 276 додано та 1 видалено
  1. +1
    -1
      README.md
  2. +33
    -0
      bcftools_concat.wdl
  3. +33
    -0
      defaults
  4. +38
    -0
      inputs
  5. +171
    -0
      workflow.wdl

+ 1
- 1
README.md Переглянути файл

@@ -1,2 +1,2 @@
# TNScope_and_Stralka
# somatic_SNVs_calling_VIP


+ 33
- 0
bcftools_concat.wdl Переглянути файл

@@ -0,0 +1,33 @@
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"
}
}

+ 33
- 0
defaults Переглянути файл

@@ -0,0 +1,33 @@
{
"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

}

+ 38
- 0
inputs Переглянути файл

@@ -0,0 +1,38 @@
{
"{{ 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 }}"

}

+ 171
- 0
workflow.wdl Переглянути файл

@@ -0,0 +1,171 @@
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
# }



}
}

Завантаження…
Відмінити
Зберегти