Skip to content

ebi-ait/data-catalogue-frontend-elwazi

Repository files navigation

eLwazi Catalogue

The catalogue is a React webapp using react admin

Local Installation:

Install the application dependencies by running:

npm install

Development:

Start the application in development mode by running:

npm run dev

Production

Build the application in production mode by running:

npm run build

Deployment

The app can be deployed as a docker image.

CI/CD

We use gitlab for CI/CD. The github repo is mirrored in gitlab. The pipeline is defined in .gitlab-ci.yml. It deploys on the ait k8s. It uses the following gitlab variables:

  • project variables
    • KUBECTL_NAMESPACE - namespace specific for this catalogue project
  • group variables
    • KUBECONFIG - secret file containing connection info to ait k8s cluster
    • KUBERNETES_MASTER - address of k8s cluster
    • DOCKER_CONFIG_JSON - secret file used for k8s to set up the image pull secret from the image repo on gitlab.
flowchart
    gitlab   ===> |1. pull mirroring| github 
    gitlab   ===> |2. trigger| pipeline
    pipeline ===> |3. build and push image|container_repo
    pipeline ===> |4. deploy|k8s

Loading

CI/CD TO-DOs

  • trigger pipeline after push
  • use gitlab k8s integration
  • setup a gitlab environment
  • setup gitlab release tags
  • speed docker image build
  • use access tokens not tied to a personal account for gitlab access