Closed edison-vflow closed 2 months ago
Further investigation has been carried out.
Since Connaisseur
chart version 2.4, a refactor was done that places connaisseur-env-secret
under env
instead of under envFrom
in the deployment
In values.yaml
when kubernetes.deployment.envs
section is populated, this results in an invalid kubernetes manifest
envFrom:
- configMapRef:
name: connaisseur-env
- secretRef:
name: connaisseur-redis-secret
env:
- name: REDIS_HOST
value: connaisseur-redis-service
- secretRef:
name: connaisseur-env-secret
As shown above, the secretRef
is under env
but any list item that goes under env
should start with name
A fix is suggested in PR https://github.com/sse-secure-systems/connaisseur/pull/1735
This fix is equivalent to reverting the Chart logic that was there pre 2.4 but with the usage of the functions eg
{{ include "connaisseur.name" . }}
same issue here, can we push a quick fix @phbelitz ?
@xavidop @edison-vflow I merged the changes and released a new version. Checkout v3.6.1
🎉
Describe the bug
From Connaisseur Helm chart version
2.4
onwards it seems when you have custom environment variableskubernetes.deployment.envs
eg https://sse-secure-systems.github.io/connaisseur/latest/validators/sigstore_cosign/#kms-support where you need to support KMS and inject AWS environment variablesOnce you have an
envs
fragment, the helm deployment fails│ Error: unable to build kubernetes objects from release manifest: error validating "": error validating data: [ValidationError(Deployment.spec.template.spec.containers[0].env[1]): unknown field "secretRef" in io.k8s.api.core.v1.EnvVar, ValidationError(Deployment.spec.template.spec.containers[0].env[1]): missing required field "name" in io.k8s.api.core.v1.EnvVar]
Expected behavior
In version 2.3.4 and downwards, having this
envs
fragment works without failingComparing the default values of chart 2.3.4 and downwards and 2.4 upwards, there was no change to the yaml structure implying the same
kubernetes.deployment.envs
can be passed.Optional: To reproduce