The catalogue is a React webapp using react admin
Install the application dependencies by running:
npm install
Start the application in development mode by running:
npm run dev
Build the application in production mode by running:
npm run build
The app can be deployed as a docker image.
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
- 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