Unverified Commit 5365765a authored by Andrey Azov's avatar Andrey Azov Committed by GitHub
Browse files

Add a custom rendering server (#506)



- added a Node-based rendering server
- refactored build process (added dedicated script files for development and production build)
- refactored routing, so that it can be reused both on the client and on the server side
- added Page-type components for every app; currently they are the only components that run on the server and add the dynamic meta tags to the page
- updated redux code so that it doesn't try to access browser-specific apis during the startup
Co-authored-by: Kamal Dodiya's avatarKamal Dodiya <kamal@ebi.ac.uk>
parent 94cd4c76
Pipeline #168303 passed with stages
in 4 minutes and 33 seconds
...@@ -11,7 +11,8 @@ stages: ...@@ -11,7 +11,8 @@ stages:
- deploy - deploy
variables: variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA} CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:nginx-${CI_COMMIT_SHORT_SHA}
CONTAINER_NODE_IMAGE: ${CI_REGISTRY_IMAGE}:node-${CI_COMMIT_SHORT_SHA}
KUBE_CONTEXT: ens-dev-ctx KUBE_CONTEXT: ens-dev-ctx
DEPLOYENV: dev DEPLOYENV: dev
ENVIRONMENT: production ENVIRONMENT: production
...@@ -20,11 +21,11 @@ variables: ...@@ -20,11 +21,11 @@ variables:
# Template to build static assets # Template to build static assets
.build-static: .build-static:
stage: test_build_static stage: test_build_static
image: node:14.16.0 image: node:14.17.0
before_script: before_script:
- cd src/ensembl - cd src/ensembl
- npm install --global npm@7.7.4 - npm install --global npm@7.12.1
- npm ci - npm ci
script: script:
...@@ -32,13 +33,15 @@ variables: ...@@ -32,13 +33,15 @@ variables:
- npm run build - npm run build
artifacts: artifacts:
name: static_assets name: build_artifacts
paths: paths:
- src/ensembl/dist/ - src/ensembl/dist/
- src/ensembl/package.json
- src/ensembl/package-lock.json
# Template to build nginx docker image for WP k8s cluster # Template to build nginx docker image for WP k8s cluster
# WP k8s cluster uses ingress # WP k8s cluster uses ingress
.build-nginx-wp: .build-nginx:
image: docker image: docker
services: services:
...@@ -53,14 +56,15 @@ variables: ...@@ -53,14 +56,15 @@ variables:
- apk update && apk add git - apk update && apk add git
- git clone --depth 1 https://github.com/Ensembl/ensembl-2020-static-assests.git - git clone --depth 1 https://github.com/Ensembl/ensembl-2020-static-assests.git
- git clone https://gitlab.ebi.ac.uk/kamal/ensembl-client-nginx.git - git clone https://gitlab.ebi.ac.uk/kamal/ensembl-client-nginx.git
- git -C ensembl-client-nginx checkout migration/wp-hx/ingress - git -C ensembl-client-nginx checkout migration/ssr
- docker build -t ${CONTAINER_IMAGE} -f ensembl-client-nginx/Dockerfile --no-cache . - docker build -t ${CONTAINER_IMAGE} -f ensembl-client-nginx/Dockerfile --no-cache .
- docker push ${CONTAINER_IMAGE} - docker push ${CONTAINER_IMAGE}
- docker rmi ${CONTAINER_IMAGE} - docker rmi ${CONTAINER_IMAGE}
- docker logout $CI_REGISTRY - docker logout $CI_REGISTRY
# Template to build nginx docker image for EHK k8s cluster # Template to build node docker image for WP k8s cluster
.build-nginx-ehk: # WP k8s cluster uses ingress
.build-node:
image: docker image: docker
services: services:
...@@ -72,54 +76,39 @@ variables: ...@@ -72,54 +76,39 @@ variables:
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
script: script:
- apk update && apk add git - docker build -t ${CONTAINER_NODE_IMAGE} -f src/ensembl/Dockerfile.node --no-cache .
- git clone --depth 1 https://github.com/Ensembl/ensembl-2020-static-assests.git - docker push ${CONTAINER_NODE_IMAGE}
- git clone https://gitlab.ebi.ac.uk/kamal/ensembl-client-nginx.git - docker rmi ${CONTAINER_NODE_IMAGE}
- sed -i "s/<DEPLOYMENT_ENV>/${DEPLOYENV}/g" ensembl-client-nginx/config/conf.d/local.conf - docker logout $CI_REGISTRY
- docker build -t ${CONTAINER_IMAGE} -f ensembl-client-nginx/Dockerfile --no-cache .
- docker push ${CONTAINER_IMAGE}
- docker rmi ${CONTAINER_IMAGE}
- docker logout "$CI_REGISTRY"
needs:
- Test_N_Build
# Template to deploy to WP k8s cluster
.deploy-wp:
stage: deploy
image: dockerhub.ebi.ac.uk/ensembl-web/deploy-tools:0.1
script:
- git clone https://gitlab.ebi.ac.uk/kamal/ensembl-client-caas-deploy.git
- git -C ensembl-client-caas-deploy/ checkout migration/wp-hx
- sed -i "s#<DOCKER_IMAGE>#${CONTAINER_IMAGE}#g" ensembl-client-caas-deploy/ensembl_client_deployment.yaml
- kubectl apply -f ensembl-client-caas-deploy/ensembl_client_deployment.yaml
# Template to deploy to WP k8s cluster # Template to deploy to WP k8s cluster
.deploy-wp-feature: .deploy:
stage: deploy stage: deploy
image: dockerhub.ebi.ac.uk/ensembl-web/deploy-tools:0.1 image: dockerhub.ebi.ac.uk/ensembl-web/deploy-tools:0.1
script: script:
- git clone https://gitlab.ebi.ac.uk/kamal/ensembl-client-caas-deploy.git - git clone https://gitlab.ebi.ac.uk/ensembl-web/ensembl-k8s-manifests.git
- git -C ensembl-client-caas-deploy/ checkout deployfeature - git -C ensembl-k8s-manifests/ checkout wp-k8s
- sed -i "s#<DEPLOYMENT_ENV>#${CI_COMMIT_REF_SLUG}#g" ensembl-client-caas-deploy/ensembl_client_deployment.yaml - sed -i "s#<DOCKER_IMAGE>#${CONTAINER_IMAGE}#g" ensembl-k8s-manifests/ensembl_client_nginx_deployment.yaml
- sed -i "s#<DOCKER_IMAGE>#${CONTAINER_IMAGE}#g" ensembl-client-caas-deploy/ensembl_client_deployment.yaml - sed -i "s#<DOCKER_IMAGE>#${CONTAINER_NODE_IMAGE}#g" ensembl-k8s-manifests/ensembl_client_node_deployment.yaml
- sed -i "s#<DEPLOYMENT_ENV>#${CI_COMMIT_REF_SLUG}#g" ensembl-client-caas-deploy/ensembl_client_service_node.yaml - kubectl apply -f ensembl-k8s-manifests/ensembl_client_nginx_deployment.yaml
- kubectl apply -f ensembl-client-caas-deploy/ensembl_client_deployment.yaml - kubectl apply -f ensembl-k8s-manifests/ensembl_client_node_deployment.yaml
- kubectl apply -f ensembl-client-caas-deploy/ensembl_client_service_node.yaml
# Template to deploy review-app to WP k8s cluster # Template to deploy review-app to WP k8s cluster
.deploy-wp-review: .deploy-review:
stage: deploy stage: deploy
image: dockerhub.ebi.ac.uk/ensembl-web/deploy-tools:0.1 image: dockerhub.ebi.ac.uk/ensembl-web/deploy-tools:0.1
script: script:
- git clone https://gitlab.ebi.ac.uk/kamal/ensembl-client-caas-deploy.git - git clone https://gitlab.ebi.ac.uk/ensembl-web/ensembl-k8s-manifests.git
- git -C ensembl-client-caas-deploy/ checkout wp-review-apps - git -C ensembl-k8s-manifests/ checkout wp-k8s-review
- sed -i "s#<DEPLOYMENT_ENV>#${CI_COMMIT_REF_SLUG}#g" ensembl-client-caas-deploy/ensembl_client_deployment.yaml - sed -i "s#<DEPLOYMENT_ENV>#${CI_COMMIT_REF_SLUG}#g" ensembl-k8s-manifests/ensembl_client_nginx_deployment.yaml
- sed -i "s#<DOCKER_IMAGE>#${CONTAINER_IMAGE}#g" ensembl-client-caas-deploy/ensembl_client_deployment.yaml - sed -i "s#<DOCKER_IMAGE>#${CONTAINER_IMAGE}#g" ensembl-k8s-manifests/ensembl_client_nginx_deployment.yaml
- kubectl apply -f ensembl-client-caas-deploy/ensembl_client_deployment.yaml - sed -i "s#<DEPLOYMENT_ENV>#${CI_COMMIT_REF_SLUG}#g" ensembl-k8s-manifests/ensembl_client_node_deployment.yaml
- sed -i "s#<DOCKER_IMAGE>#${CONTAINER_NODE_IMAGE}#g" ensembl-k8s-manifests/ensembl_client_node_deployment.yaml
- kubectl apply -f ensembl-k8s-manifests/ensembl_client_nginx_deployment.yaml
- kubectl apply -f ensembl-k8s-manifests/ensembl_client_node_deployment.yaml
# Template for stopping review app - Do cleanup here # Template for stopping review app - Do cleanup here
.stop-wp-review: .stop-review:
stage: deploy stage: deploy
image: dockerhub.ebi.ac.uk/ensembl-web/deploy-tools:0.1 image: dockerhub.ebi.ac.uk/ensembl-web/deploy-tools:0.1
variables: variables:
...@@ -130,23 +119,6 @@ variables: ...@@ -130,23 +119,6 @@ variables:
- kubectl delete svc ensembl-client-${CI_COMMIT_REF_SLUG}-svc - kubectl delete svc ensembl-client-${CI_COMMIT_REF_SLUG}-svc
- kubectl delete deploy ensembl-client-${CI_COMMIT_REF_SLUG}-deployment - kubectl delete deploy ensembl-client-${CI_COMMIT_REF_SLUG}-deployment
# Template to deploy to EHK k8s cluster
.deploy-ehk:
stage: deploy
image: dockerhub.ebi.ac.uk/ensembl-web/deploy-tools:0.1
before_script:
- export KUBECONFIG=/etc/deploy/config
- mkdir -p /etc/deploy
- echo ${EMBASSY_KUBECONFIG} | base64 -d > ${KUBECONFIG}
script:
- git clone https://gitlab.ebi.ac.uk/kamal/ensembl-client-caas-deploy.git
- git -C ensembl-client-caas-deploy checkout refactor-manifest
- sed -i "s/<VERSION>/${CI_COMMIT_SHORT_SHA}-${DEPLOYENV}/g" ensembl-client-caas-deploy/ensembl_client_deployment.yaml
- sed -i "s/<DEPLOYMNET_ENV>/${DEPLOYENV}/g" ensembl-client-caas-deploy/ensembl_client_deployment.yaml
- cat ensembl-client-caas-deploy/ensembl_client_deployment.yaml
- kubectl config use-context ${KUBE_CONTEXT}
- kubectl apply -f ensembl-client-caas-deploy/ensembl_client_deployment.yaml
Test: Test:
image: node:14.16.0 image: node:14.16.0
stage: test stage: test
...@@ -176,10 +148,6 @@ Test_N_Build: ...@@ -176,10 +148,6 @@ Test_N_Build:
ENVIRONMENT: production ENVIRONMENT: production
API_HOST: "" API_HOST: ""
script:
- npm run test
- npm run build
only: only:
- dev - dev
- master - master
...@@ -194,11 +162,6 @@ Test_N_Build:internal: ...@@ -194,11 +162,6 @@ Test_N_Build:internal:
ENVIRONMENT: internal ENVIRONMENT: internal
API_HOST: "" API_HOST: ""
artifacts:
name: static_assets
paths:
- src/ensembl/dist/
only: only:
- master - master
...@@ -213,30 +176,19 @@ Test_N_Build:review: ...@@ -213,30 +176,19 @@ Test_N_Build:review:
- master - master
- /^nodeploy\/.*$/ - /^nodeploy\/.*$/
# Job to build nginx docker image for staging environment (EHK k8s cluster) # Job to build nginx docker image for staging environment
Nginx:Staging-EHK: # dev branch -> Staging
extends: .build-nginx-ehk Nginx:Staging:
variables: extends: .build-nginx
DEPLOYENV: staging
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-staging
only: only:
- dev - dev
needs:
- Test_N_Build
# Job to build nginx docker image for live environment (EHK k8s cluster) # Job to build node docker image for staging environment
Nginx:Live-EHK:
extends: .build-nginx-ehk
variables:
DEPLOYENV: prod
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-prod
only:
- master
# Job to build nginx docker image for staging environment
# dev branch -> Staging # dev branch -> Staging
Nginx:Staging-WP: Node:Staging:
extends: .build-nginx-wp extends: .build-node
variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-stage-ing
only: only:
- dev - dev
needs: needs:
...@@ -244,44 +196,57 @@ Nginx:Staging-WP: ...@@ -244,44 +196,57 @@ Nginx:Staging-WP:
# Job to build nginx docker image for live environment # Job to build nginx docker image for live environment
# master branch -> Live # master branch -> Live
Nginx:Live-WP: Nginx:Live:
extends: .build-nginx-wp extends: .build-nginx
variables: variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-prod-ing CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-prod
only:
- master
needs:
- Test_N_Build
# Job to build node docker image for live environment
# master branch -> Live
Node:Live:
extends: .build-node
variables:
CONTAINER_NODE_IMAGE: ${CI_REGISTRY_IMAGE}:node-${CI_COMMIT_SHORT_SHA}-prod
only: only:
- master - master
needs: needs:
- Test_N_Build - Test_N_Build
# Job to build nginx docker image for staging and internal environment # Job to build nginx docker image for internal environment at WP
# master branch -> internal # master branch -> internal
Nginx:Internal-EHK: Nginx:Internal:
extends: .build-nginx-ehk extends: .build-nginx
variables: variables:
DEPLOYENV: internal DEPLOYENV: internal
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-internal CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:nginx-${CI_COMMIT_SHORT_SHA}-internal
only: only:
- master - master
needs: needs:
- Test_N_Build:internal - Test_N_Build:internal
# Job to build nginx docker image for staging and internal environment at WP # Job to build node docker image for internal environment at WP
# master branch -> internal # master branch -> internal
Nginx:Internal-WP: Node:Internal:
extends: .build-nginx-wp extends: .build-node
variables: variables:
DEPLOYENV: internal DEPLOYENV: internal
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-internal-ing CONTAINER_NODE_IMAGE: ${CI_REGISTRY_IMAGE}:node-${CI_COMMIT_SHORT_SHA}-internal
only: only:
- master - master
needs: needs:
- Test_N_Build:internal - Test_N_Build:internal
# Job to build nginx docker image for review environment at WP
# all other branch -> dev
Nginx:review: Nginx:review:
extends: .build-nginx-wp extends: .build-nginx
variables: variables:
DEPLOYENV: dev DEPLOYENV: dev
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-${CI_COMMIT_REF_SLUG} CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:nginx-${CI_COMMIT_SHORT_SHA}-${CI_COMMIT_REF_SLUG}
except: except:
- dev - dev
- master - master
...@@ -290,59 +255,48 @@ Nginx:review: ...@@ -290,59 +255,48 @@ Nginx:review:
needs: needs:
- Test_N_Build:review - Test_N_Build:review
# Job to deploy to staging environment (EHK k8s cluster) # Job to build node docker image for review environment at WP
Staging:EHK-HH: # all other branch -> dev
extends: .deploy-ehk Node:review:
extends: .build-node
variables: variables:
DEPLOYENV: staging DEPLOYENV: dev
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-staging CONTAINER_NODE_IMAGE: ${CI_REGISTRY_IMAGE}:node-${CI_COMMIT_SHORT_SHA}-${CI_COMMIT_REF_SLUG}
KUBE_CONTEXT: ens-stage-ctx except:
only:
- dev - dev
- master
- /^nodeploy\/.*$/
needs: needs:
- Nginx:Staging-EHK - Test_N_Build:review
# Job to deploy to staging environment (WP-HX k8s cluster) # Job to deploy to staging environment (WP-HX k8s cluster)
Staging:WP-HX: Staging:HX:
extends: .deploy-wp extends: .deploy
variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-stage-ing
environment: environment:
name : wp-hx-staging name : wp-hx-staging
only: only:
- dev - dev
needs: needs:
- Test_N_Build - Test_N_Build
- Nginx:Staging-WP - Nginx:Staging
- Node:Staging
# Job to deploy to staging environment (WP-HH k8s cluster) # Job to deploy to staging environment (WP-HL k8s cluster)
Staging:WP-HH: Staging:HL:
extends: .deploy-wp extends: .deploy
variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-stage-ing
environment: environment:
name : wp-hh-staging name : wp-hh-staging
only: only:
- dev - dev
needs: needs:
- Test_N_Build - Test_N_Build
- Nginx:Staging-WP - Nginx:Staging
- Node:Staging
# Job to deploy to live environment (EHK k8s cluster)
Live:EHK-HH:
extends: .deploy-ehk
variables:
DEPLOYENV: prod
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-prod
KUBE_CONTEXT: ens-prod-ctx
only:
- master
needs:
- Nginx:Live-EHK
# Job to deploy to live environment (WP-HX k8s cluster) # Job to deploy to live environment (WP-HX k8s cluster)
Live:WP-HX: Live:HX:
extends: .deploy-wp extends: .deploy
variables: variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-prod-ing CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-prod-ing
environment: environment:
...@@ -351,11 +305,11 @@ Live:WP-HX: ...@@ -351,11 +305,11 @@ Live:WP-HX:
- master - master
needs: needs:
- Test_N_Build - Test_N_Build
- Nginx:Live-WP - Nginx:Live
# Job to deploy to live environment (WP-HH k8s cluster) # Job to deploy to live environment (WP-HL k8s cluster)
Live:WP-HH: Live:HL:
extends: .deploy-wp extends: .deploy
variables: variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-prod-ing CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-prod-ing
environment: environment:
...@@ -364,24 +318,11 @@ Live:WP-HH: ...@@ -364,24 +318,11 @@ Live:WP-HH:
- master - master
needs: needs:
- Test_N_Build - Test_N_Build
- Nginx:Live-WP - Nginx:Live
# Job to deploy to internal environment (EHK k8s cluster)
Internal:EHK-HH:
extends: .deploy-ehk
variables:
DEPLOYENV: internal
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-internal
KUBE_CONTEXT: ens-dev-ctx
only:
- master
needs:
- Test_N_Build:internal
- Nginx:Internal-EHK
# Job to deploy to internal environment (WP-HX k8s cluster) # Job to deploy to internal environment (WP-HX k8s cluster)
Internal:WP-HX: Internal:HX:
extends: .deploy-wp extends: .deploy
variables: variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-internal-ing CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-internal-ing
environment: environment:
...@@ -390,11 +331,11 @@ Internal:WP-HX: ...@@ -390,11 +331,11 @@ Internal:WP-HX:
- master - master
needs: needs:
- Test_N_Build:internal - Test_N_Build:internal
- Nginx:Internal-WP - Nginx:Internal
# Job to deploy to internal environment (WP-HH k8s cluster) # Job to deploy to internal environment (WP-HL k8s cluster)
Internal:WP-HH: Internal:HL:
extends: .deploy-wp extends: .deploy
variables: variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-internal-ing CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-internal-ing
environment: environment:
...@@ -403,28 +344,10 @@ Internal:WP-HH: ...@@ -403,28 +344,10 @@ Internal:WP-HH:
- master - master
needs: needs:
- Test_N_Build:internal - Test_N_Build:internal
- Nginx:Internal-WP - Nginx:Internal
Feature:EHK-HH:
extends: .deploy-ehk
variables:
DEPLOYENV: ${CI_COMMIT_REF_SLUG}
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-${CI_COMMIT_REF_SLUG}
KUBE_CONTEXT: ens-dev-ctx
except: Review:HX:
- dev extends: .deploy-review
- master
- /^nodeploy\/.*$/
needs:
- Test_N_Build:review
- Nginx:review
Review:WP-HX:
extends: .deploy-wp-review
variables:
CONTAINER_IMAGE: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}-${CI_COMMIT_REF_SLUG}
environment: environment:
name: review/$CI_COMMIT_REF_SLUG name: review/$CI_COMMIT_REF_SLUG
url: http://$CI_COMMIT_REF_SLUG.review.ensembl.org url: http://$CI_COMMIT_REF_SLUG.review.ensembl.org
...@@ -438,9 +361,10 @@ Review:WP-HX: ...@@ -438,9 +361,10 @@ Review:WP-HX:
needs: needs:
- Test_N_Build:review - Test_N_Build:review
- Nginx:review - Nginx:review
- Node:review
stop_review: stop_review:
extends: .stop-wp-review extends: .stop-review
environment: environment:
name: review/$CI_COMMIT_REF_SLUG name: review/$CI_COMMIT_REF_SLUG
action: stop action: stop
......
...@@ -8,3 +8,4 @@ docker-compose* ...@@ -8,3 +8,4 @@ docker-compose*
README.md README.md
LICENSE LICENSE
.vscode .vscode
dist
...@@ -10,5 +10,19 @@ GOOGLE_ANALYTICS_KEY="UA-58710484-17" ...@@ -10,5 +10,19 @@ GOOGLE_ANALYTICS_KEY="UA-58710484-17"
# Base URL for the API endpoints # Base URL for the API endpoints
API_HOST="" API_HOST=""
# GTI Genesearch API endpoint # GTI Genesearch API endpoint (used by Custom Download)
GENESEARCH_API_ENDPOINT="http://gti-es-0.ebi.ac.uk:8080/api" GENESEARCH_API_ENDPOINT="http://gti-es-0.ebi.ac.uk:8080/api"
# paths to different microservices
SSR_THOAS_BASE_URL="https://staging-2020.ensembl.org/api/thoas"
BROWSER_THOAS_BASE_URL="/api/thoas"
SSR_GENOME_SEARCH_BASE_URL="https://staging-2020.ensembl.org/api/genomesearch"
BROWSER_GENOME_SEARCH_BASE_URL="/api/genomesearch"
SSR_DOCS_BASE_URL="https://staging-2020.ensembl.org/api/docs"
BROWSER_DOCS_BASE_URL="/api/docs"
GENOME_BROWSER_BASE_URL="/api/browser"
REFGET_BASE_URL="/api/refget"
{
"presets": [
"@babel/react",
"@babel/typescript"
],
"plugins": [