use env entries instead of envFrom (#36)

The reason for this PR is that currently if the secret doesn’t have the
key NB_API_KEY yet at deployment time, the deployment will still run and
pull in an env list that doesn’t include NB_API_KEY since the envFrom
will just pull any and all keys it finds in the secret and makes env
vars out of them. then at a later point, once the NB_API_KEY key is
populated in the secret, one has to bounce the pod to get the key to be
picked up.

if you use the env: valueFrom syntax using a named key, if that named
key doesn’t exist, the deployment should give an error and retry until
the secret key is available
This commit is contained in:
David Fry
2025-05-01 14:52:03 +02:00
committed by GitHub
parent 8ff64b433c
commit 18a5b55839
2 changed files with 13 additions and 9 deletions
@@ -78,13 +78,16 @@ spec:
successThreshold: {{ .Values.operator.livenessProbe.successThreshold }}
timeoutSeconds: {{ .Values.operator.livenessProbe.timeoutSeconds }}
{{- if or .Values.netbirdAPI.key .Values.netbirdAPI.keyFromSecret }}
envFrom:
- secretRef:
{{- if .Values.netbirdAPI.keyFromSecret }}
name: {{.Values.netbirdAPI.keyFromSecret}}
{{- else }}
name: {{ include "kubernetes-operator.fullname" . }}
{{- end }}
env:
- name: NB_API_KEY
valueFrom:
{{- if .Values.netbirdAPI.keyFromSecret }}
name: {{.Values.netbirdAPI.keyFromSecretName}}
key: {{.Values.netbirdAPI.keyFromSecretKey}}
{{- else }}
name: {{ include "kubernetes-operator.fullname" . }}
key: NB_API_KEY
{{- end }}
{{- end }}
readinessProbe:
failureThreshold: 3
+3 -2
View File
@@ -70,7 +70,7 @@ operator:
name: ""
# This is for setting Kubernetes Annotations to a Pod.
# For more information checkout: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
# For more information checkout: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
podAnnotations: {}
# This is for setting Kubernetes Labels to a Pod.
# For more information checkout: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
@@ -190,4 +190,5 @@ cluster:
netbirdAPI: {}
# NetBird Service Account Token
# key: "nbp_m0LM9ZZvDUzFO0pY50iChDOTxJgKFM3DIqmZ"
# keyFromSecret: "Secret name with NB_API_KEY=Service Account Token"
# keyFromSecretName: "Secret name"
# keyFromSecretKey: "NB_API_KEY"