I successfully installed VEP and run it through HAIL using
ht_vep = hl.vep(ht,'s3://bucket/path/vep95_GRCh38_config.json')
I am now looking for Nirvana. I am aware it is a historical experimental function in hail but that would be great to have it functional.
Following the doc, I succeed to install Nirvana within a docker and run in on my master node
# Install Nirvana from docker mkdir -p /opt/nirvana/data cd /opt/nirvana/ docker pull annotation/nirvana:3.9.1 # Download data docker run --rm -i -v /opt/nirvana/data:/scratch annotation/nirvana:3.14 dotnet \ /opt/nirvana/Downloader.dll --ga $ASSEMBLY -o /scratch
I was then able to run Nirvana from command line on the master node
sudo docker run --rm -it -v /opt/nirvana/data:/scratch annotation/nirvana:3.14 dotnet \ /opt/nirvana/Nirvana.dll -c /scratch/Cache/GRCh38/Both \ -r /scratch/References/Homo_sapiens.GRCh38.Nirvana.dat \ --sd /scratch/SupplementaryAnnotation/GRCh38 \ -i /scratch/test.vcf.gz \ -o /scratch/test.out
Now trying to run Nirvana from a notebook with hail
I generated a properties fileas per hail doc. I have been a bit inventive to try to use docker the same way vep was using a docker image
hail.nirvana.dotnet = sudo docker run --rm -it -v /opt/nirvana/data:/scratch annotation/nirvana:3.14 dotnet hail.nirvana.location = /opt/nirvana/Nirvana.dll hail.nirvana.reference = /scratch/References/Homo_sapiens.GRCh38.Nirvana.dat hail.nirvana.cache = /scratch/Cache/GRCh38/Both hail.nirvana.supplementaryAnnotationDirectory = /scratch/SupplementaryAnnotation/GRCh38
and trying to run nirvana as per the hail doc
nirv = hl.nirvana(mt, "nirvana.GRCh38.properties")
First issue is that
hl.nirvana() do not handle files from S3 (where vep does). then I am a bit puzzled where should reside the properties file: in home, in jupyter, in nirvana ?
Second issue is that I am not sure of the properties.
any help welcome