Using Testkube with Private Registries
This guide shows how to deploy and use Testkube with images from private registries.
To start with, we need to update values.yaml
file, populating registry
and pullSecret
parameters with a value of your private registry and a k8s secret respectively. (Please note that the k8s secret should be created prior to Testkube installation.)
The easiest solution would be to update global
parameters, which will set a new value for all Testkube components, including MongoDB images:
global:
imageRegistry: ""
imagePullSecrets: []
labels: {}
annotations: {}
However, NATS chart that is part of Testkube belongs to a third party and as of now it requires passing image registry and image pull secret parameters separately. The snippet from the values.yaml
file for NATS chart:
nats:
global:
image:
registry: registry-name
Please mind that global
parameters override all local values, so if it is required to set different registries or secret names, please use registry
and pullSecret
parameter for each Testkube service. For example testkube-api
:
testkube-api:
image:
registry: your-registry-name
repository: kubeshop/testkube-api-server
tag: "latest"
pullPolicy: IfNotPresent
pullSecret:
- your-secret-name
Once the values.yaml
is ready we may deploy Testkube to the k8s cluster:
helm repo add kubeshop https://kubeshop.github.io/helm-charts
helm install --create-namespace testkube kubeshop/testkube --namespace testkube --values ./path-to-values.yaml