From a39bb49de391a6a862c03be19e52f4be3937b6d1 Mon Sep 17 00:00:00 2001 From: jkgoodrich Date: Wed, 8 Sep 2021 14:57:40 -0600 Subject: [PATCH] Add VEP 101 init --- init_scripts/vep101-init.sh | 100 ++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 init_scripts/vep101-init.sh diff --git a/init_scripts/vep101-init.sh b/init_scripts/vep101-init.sh new file mode 100644 index 000000000..6bf8b3177 --- /dev/null +++ b/init_scripts/vep101-init.sh @@ -0,0 +1,100 @@ +#!/bin/bash + +export PROJECT="$(gcloud config get-value project)" +export VEP_CONFIG_PATH="$(/usr/share/google/get_metadata_value attributes/VEP_CONFIG_PATH)" +export VEP_REPLICATE="$(/usr/share/google/get_metadata_value attributes/VEP_REPLICATE)" +export VEP_BUCKET=hail-${VEP_REPLICATE}-vep +export ASSEMBLY=GRCh38 +export VEP_DOCKER_IMAGE=gcr.io/broad-mpg-gnomad/vep_101 + +mkdir -p /vep_data/loftee_data +mkdir -p /vep_data/homo_sapiens + +# Install docker +apt-get update +apt-get -y install \ + apt-transport-https \ + ca-certificates \ + curl \ + gnupg2 \ + software-properties-common \ + tabix +curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - +sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" +apt-get update +apt-get install -y --allow-unauthenticated docker-ce + + +gsutil -u $PROJECT cat gs://${VEP_BUCKET}/loftee-beta/${ASSEMBLY}.tar | tar -xf - -C /vep_data/ & +gsutil -u $PROJECT cat gs://${VEP_BUCKET}/Plugins.tar /vep_data/Plugins.tar | tar -xf - -C /vep_data +docker pull ${VEP_DOCKER_IMAGE} & +wait + +################################################################ +# Added stuff +################################################################ + +# GCS copy of ftp://ftp.ensembl.org/pub/release-101/variation/indexed_vep_cache/homo_sapiens_merged_vep_101_GRCh38.tar.gz +gsutil -u $PROJECT cat gs://gnomad-public-requester-pays/resources/vep/v101/homo_sapiens_merged_vep_101_GRCh38.tar.gz | tar -xzf - -C /vep_data + +wait + +# FASTA file from Hail's VEP 101 data +gsutil -u $PROJECT cp gs://gnomad-public-requester-pays/resources/vep/Homo_sapiens.GRCh38.dna.toplevel.fa.gz /vep_data/ +gsutil -u $PROJECT cp gs://gnomad-public-requester-pays/resources/vep/Homo_sapiens.GRCh38.dna.toplevel.fa.gz.fai /vep_data/ +gsutil -u $PROJECT cp gs://gnomad-public-requester-pays/resources/vep/Homo_sapiens.GRCh38.dna.toplevel.fa.gz.gzi /vep_data/ + +# Create config file. + +cat > /vep_data/vep101-GRCh38.json </vep.c < +#include + +int +main(int argc, char *const argv[]) { + if (setuid(geteuid())) + perror( "setuid" ); + + execv("/vep.sh", argv); + return 0; +} +EOF +gcc -Wall -Werror -O2 /vep.c -o /vep +chmod u+s /vep + +cat >/vep.sh <