gchq / gaffer-docker

Gaffer Docker images and associated Helm charts for deploying on Kubernetes
https://gchq.github.io/gaffer-docker
Apache License 2.0
30 stars 37 forks source link

Add dependency version management #210

Open t92549 opened 2 years ago

t92549 commented 2 years ago

The version numbers of the helm charts are managed automatically with a script: https://github.com/gchq/gaffer-docker/blob/41f9f516300666ace81be02bb94ea93ed045d3ee/kubernetes/gaffer-road-traffic/Chart.yaml#L19

However, the versions of all the dependencies across the Dockerfiles, docker-compose .env files, and helm charts, are not managed automatically and must be updated manually before a gaffer-docker release: https://github.com/gchq/gaffer-docker/blob/377655a59d9ad603cdbd86d1d6b4e89d8fa67a3e/docker/gaffer/Dockerfile#L18-L24 https://github.com/gchq/gaffer-docker/blob/377655a59d9ad603cdbd86d1d6b4e89d8fa67a3e/docker/gaffer/.env#L1-L4 https://github.com/gchq/gaffer-docker/blob/377655a59d9ad603cdbd86d1d6b4e89d8fa67a3e/kubernetes/gaffer/values.yaml#L56-L58

Not only is this tedious for releases, requiring manual update commits, but it is also error-prone as this manual process could be done wrong, or different versions could be inconsistent with each other.

Therefore, a way of managing these versions should be added so it can be done automatically at time of release, and safely.

t92549 commented 2 years ago

211 ensured that the images that are built, tested and released are the ones in the docker/gaffer-pyspark-notebook/.env file, as well as automatically ensuring the helm chart versions are correct.

This is a step forward but manual commits are still required to update the versions in the Dockerfiles and docker-compose files.