### ANNOVAR | |||||
This APP developed for the annotation of VCF files. | |||||
**Please take care to check that the parameter `hg` is compatible with your reference genome reference builds version.** | |||||
If the type and version of database currently used in the APP does not meet your needs, please contact the developer. | |||||
### Getting Started | |||||
We recommend using choppy system and Aliyun OSS service. The command will look like this: | |||||
``` | |||||
# Activate the choppy environment | |||||
$ open-choppy-env | |||||
# Install the APP | |||||
$ choppy install YaqingLiu/annovar [-f] | |||||
# List the parameters | |||||
$ choppy samples YaqingLiu/annovar-latest [--no-default] | |||||
# Submit you task with the `samples.csv file` and `project name` | |||||
$ choppy batch YaqingLiu/annovar-latest samples.csv -p Project [-l project:Label] | |||||
# Query the status of all tasks in the project | |||||
$ choppy query -L project:Label | grep "status" | |||||
``` |
{ | |||||
"annovar_docker": "registry.cn-shanghai.aliyuncs.com/pgx-docker-registry/annovar:v2019.10", | |||||
"annovar_database": "oss://pgx-reference-data/annovar/", | |||||
"hg": "hg38", | |||||
"disk_size": "200", | |||||
"cluster_config": "OnDemand bcs.a2.3xlarge img-ubuntu-vpc" | |||||
} |
{ | |||||
"{{ project_name }}.vcf": "{{ vcf }}", | |||||
"{{ project_name }}.annovar_docker": "{{ annovar_docker }}", | |||||
"{{ project_name }}.hg": "{{ hg }}", | |||||
"{{ project_name }}.annovar_database": "{{ annovar_database }}", | |||||
"{{ project_name }}.disk_size": "{{ disk_size }}", | |||||
"{{ project_name }}.cluster_config": "{{ cluster_config }}" | |||||
} |
task annovar { | |||||
File vcf | |||||
String basename = basename(vcf,".vcf") | |||||
String hg | |||||
File annovar_database | |||||
String docker | |||||
String cluster_config | |||||
String disk_size | |||||
command <<< | |||||
set -o pipefail | |||||
set -e | |||||
nt=$(nproc) | |||||
if [ ${hg} == "hg38" ]; then | |||||
/installations/annovar/table_annovar.pl ${vcf}\ | |||||
${annovar_database} -buildver ${hg} \ | |||||
-out ${basename} -remove \ | |||||
-protocol rmsk \ | |||||
-operation r \ | |||||
-nastring . -vcfinput -thread $nt | |||||
fi | |||||
if [ ${hg} == "hg19" ]; then | |||||
/installations/annovar/table_annovar.pl ${vcf}\ | |||||
${annovar_database} -buildver ${hg} \ | |||||
-out ${basename} -remove \ | |||||
-protocol refGene,cytoBand,genomicSuperDups,ljb26_all,snp138,cosmic78,intervar_20170202,popfreq_all_20150413,clinvar_20190305 \ | |||||
-operation g,r,r,f,f,f,f,f,f \ | |||||
-nastring . -vcfinput -thread $nt | |||||
fi | |||||
>>> | |||||
runtime { | |||||
docker: docker | |||||
cluster: cluster_config | |||||
systemDisk: "cloud_ssd 40" | |||||
dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/" | |||||
} | |||||
output { | |||||
File avinput = "${basename}.avinput" | |||||
File rmsk_txt = "${basename}.${hg}_rmsk.txt" | |||||
File rmsk_vcf = "${basename}.${hg}_rmsk.vcf" | |||||
} | |||||
} |
import "./tasks/annovar.wdl" as annovar | |||||
workflow {{ project_name }} { | |||||
File vcf | |||||
String hg | |||||
File annovar_database | |||||
String annovar_docker | |||||
String disk_size | |||||
String cluster_config | |||||
call annovar.annovar as annovar { | |||||
input: | |||||
vcf=vcf, | |||||
hg=hg, | |||||
annovar_database=annovar_database, | |||||
docker=annovar_docker, | |||||
cluster_config=cluster_config, | |||||
disk_size=disk_size | |||||
} | |||||
} |