This is a test version of Biostars. For the public version, visit https://www.biostars.org.
VEP ensemble docker and plugins

Hi,

I have used VEP in local using docker and cache and ran this command

sudo docker run \
  -v /mnt/dodl_drive/sarek_cc/vep:/data ensemblorg/ensembl-vep \
  vep -i input_sample.vcf \
  --cache \
  --output_file output_sample.vcf \
  --everything

which ran successfully and the output VCF also is as expected.

But when I am using plugins the output header information is getting updated but no annotation is added to the SNPs. There are the things I tried

sudo docker run -v /mnt/dodl_drive/sarek_cc/vep:/data ensemblorg/ensembl-vep  vep -i data/input_sample.vcf --cache --output_file output_sample_NMD.vcf --force_overwrite  --plugin NMD --everything --hgvs
sudo docker run -v /mnt/dodl_drive/sarek_cc/vep:/data ensemblorg/ensembl-vep  vep -i data/input_sample.vcf --cache --output_file output_sample_NMD.vcf --force_overwrite  --plugin GO,remote --everything --hgvs
sudo docker run -v /mnt/dodl_drive/sarek_cc/vep:/data ensemblorg/ensembl-vep  vep -i data/input_sample.vcf --cache --output_file output_sample_dbNSFP.vcf --force_overwrite  --plugin dbNSFP,plugin/dbNSFP/dbNSFP4.4a_grch38.gz,ALL --everything --hgvs

I have followed the steps to download the dbNSFP data and created the index using tabix as shown in the VEP documentation. every thing showed up the below warning and the output vcf had nothing extra. What might have gone wrong

2023-10-19 12:06:26 - INFO: Database will be accessed when using --hgvs
2023-10-19 12:06:26 - INFO: Database will be accessed when using --hgvsc
2023-10-19 12:06:26 - INFO: Database will be accessed when using --hgvs

Please help me understand what is going wrong or what needs to be added to add the annotation to the SNPs.

plugins docker vep

Do you see any other warning messages?

Yes! The below messages I am getting

2023-10-19 12:06:26 - INFO: Database will be accessed when using --hgvs
2023-10-19 12:06:26 - INFO: Database will be accessed when using --hgvsc
2023-10-19 12:06:26 - INFO: Database will be accessed when using --hgvs

Those are the same messages from the post - I wanted to know if there were any other warning messages.

Moving on, are there any sites where you know there should be a value for HGVSc but is not assigned? If yes, can you show us an example of such a site?

nothing other than that, actually I am running with a very small sample of 4 SNPs vcf to check if the plugins are working on the file and adding annotations. I see that none of the runs with different plugins used added any kind of extra annotations to my SNPs except the annotations that I get from cache. And I didn't provide FASTA file.

rs80357498  17:43115744 A   ENSG00000012048 ENST00000352993 Transcript  missense_variant    235 116 39  S/F tCt/tTt CM980216    IMPACT=MODERATE;STRAND=-1;VARIANT_CLASS=SNV;SYMBOL=BRCA1;SYMBOL_SOURCE=HGNC;HGNC_ID=HGNC:1100;BIOTYPE=protein_coding;TSL=5;ENSP=ENSP00000312236;SWISSPROT=P38398.268;TREMBL=A0A024R1Z8.60;UNIPARC=UPI000013ECD3;UNIPROT_ISOFORM=P38398-5;GENE_PHENO=1;SIFT=deleterious(0);PolyPhen=possibly_damaging(0.845);EXON=3/22;DOMAINS=PDB-ENSP_mappings:1jm7.A,Gene3D:3.30.40.10,PDB-ENSP_mappings:7jzv.A,PDB-ENSP_mappings:7lyb.M,AlphaFold_DB_import:AF-P38398-F1,Pfam:PF00097,PIRSF:PIRSF001734,PROSITE_patterns:PS00518,PROSITE_profiles:PS50089,SMART:SM00184,Superfamily:SSF57850,CDD:cd16498;HGVSc=ENST00000352993.7:c.116G>T;HGVSp=ENSP00000312236.5:p.Ser39Phe;PHENO=1

I see that HGVSc values are added where ever they are to be. Above is a line from my output file.

So... things are working as expected, right? What's the problem?

Things are working only when no plugins are used. When I use the plugins I am not getting annotations added. Take this example of GO annotations using plugin and remote command

sudo docker run -v /mnt/dodl_drive/sarek_cc/vep:/data ensemblorg/ensembl-vep  vep -i data/input_sample.vcf --cache --output_file output_sample_NMD.vcf --force_overwrite  --plugin GO,remote --everything

Nothing is getting added to the SNPs even after including the plugin flags. Not sure where I am going wrong. no error also and no annotation added.

It seems you're writing results in to the container and not to the mounted volume. Could you instead try this?

Added data/ directory to your output path.

sudo docker run -v /mnt/dodl_drive/sarek_cc/vep:/data \
    ensemblorg/ensembl-vep  vep \
    --cache --force_overwrite \
    --plugin GO,remote --everything \
    -i data/input_sample.vcf \
    --output_file data/output_sample_NMD.vcf

I have changed this! but the output file still do not have any annotations added from plugins.

looking at it again the paths should be /data/input_sample.vcf and /data/output_sample_NMD.vcf instead of data/.... without leading /. It shouldn't be able find your input in the first place. Could you make your path absolute?

can you check the plugins are in the docker container? If not you can download them to the directory you're mounting to the container and specify their path with the PLUGINS_DIR parameter.

I did specify the directory in case of dbNSFP and I also have downloaded the db file and processes it just as mentioned in the documentation to make it ready for a run.

sudo docker run -v /mnt/dodl_drive/sarek_cc/vep:/data ensemblorg/ensembl-vep  vep -i data/input_sample.vcf --cache --output_file output_sample_dbNSFP.vcf --force_overwrite  --plugin dbNSFP,plugin/dbNSFP/dbNSFP4.4a_grch38.gz,ALL --everything --hgvs

yes they are there in the docker container, I did check that also.

0 answers

No answers yet.

Log in to answer this question.