TRG 5.10 - Kubernetes versions
Status | Created | Post-History |
---|---|---|
Active | 10-Nov-2023 | |
Prerelease | 7-Mar-2023 | Moved out of draft |
Draft | 24-Feb-2022 | n/a |
Why
New Kubernetes versions are released every few months. The compatibility with those versions needs to be verified as APIs get deprecated. New Versions can also introduce issues.
To make Eclipse Tractus-X usable in the industry, its necessary to support and test multiply versions of kubernetes (upcoming, stable, old). API deprecations are happening slowly but regularly.
Description
To do so you must create a GitHub action which runs helm test against all required kubernetes versions. See the following TRG for an example GitHub action: Helm test.
The GitHub Action either can be triggered manually and allows for selecting the kubernetes versions or it verifies all required kubernetes versions one after the other.
Products need to support 3 versions at a time:
- latest
- latest - 1
- latest - 2
Testing compatibility locally
For local deployment please see Kind clusters where a Kubernetes cluster can be started with a specific version locally on a development machine. Example for example:
# config.yaml
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
- role: worker
image: kindest/node:v1.28.9@sha256:f1de3b0670462f43280114eccceab8bf1b9576d2afe0582f8f74529da6fd0365
After Kind is installed locally, run the following command with the config above:
kind create cluster --config=config.yaml
A Kubernetes node will start with version 1.28.