From c53bce8f2c0c219e44216aeeff823bf7d4eb9787 Mon Sep 17 00:00:00 2001 From: Michael Welles Date: Tue, 21 Jul 2026 12:44:08 -0400 Subject: [PATCH] fix(dgraph): correct latent StatefulSet bugs (mount, datadir volume, exec, serviceAccountName) --- .../dgraph/templates/alpha/statefulset.yaml | 19 +++++++++---------- charts/dgraph/templates/zero/statefulset.yaml | 6 +++--- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/charts/dgraph/templates/alpha/statefulset.yaml b/charts/dgraph/templates/alpha/statefulset.yaml index 0bd3c702c..304e09763 100644 --- a/charts/dgraph/templates/alpha/statefulset.yaml +++ b/charts/dgraph/templates/alpha/statefulset.yaml @@ -67,10 +67,10 @@ spec: labels: {{- include "dgraph.labels" (dict "ctx" . "component" .Values.alpha.name "podLabels" .Values.alpha.podLabels) | nindent 8 }} spec: - {{- if .Values.serviceAccount.create }} - serviceAccountName: {{ .Values.serviceAccount.name }} - automountServiceAccountToken: {{ .Values.alpha.automountServiceAccountToken }} + {{- if or .Values.serviceAccount.create .Values.serviceAccount.name }} + serviceAccountName: {{ include "dgraph.serviceAccountName" . }} {{- end }} + automountServiceAccountToken: {{ .Values.alpha.automountServiceAccountToken }} {{- if .Values.alpha.schedulerName }} schedulerName: {{ .Values.alpha.schedulerName }} {{- end }} @@ -210,7 +210,7 @@ spec: {{- /* TODO: Remove awk-gsub once dgraph-io/dgraph#6837 is merged and back-ported. */}} - | set -ex - dgraph alpha --my=$(hostname -f | awk '{gsub(/\.$/,""); print $0}'):7080 --zero {{ template "multi_zeros" . }} {{ .Values.alpha.extraFlags }} + exec dgraph alpha --my=$(hostname -f | awk '{gsub(/\.$/,""); print $0}'):7080 --zero {{ template "multi_zeros" . }} {{ .Values.alpha.extraFlags }} resources: {{ toYaml .Values.alpha.resources | indent 10 }} {{- if .Values.alpha.startupProbe.enabled }} @@ -252,10 +252,8 @@ spec: readinessProbe: {{- toYaml .Values.alpha.customReadinessProbe | nindent 10 }} {{- end }} volumeMounts: - {{- if .Values.alpha.persistence.enabled }} - name: datadir mountPath: /dgraph - {{- end }} {{- if .Values.alpha.configFile }} - name: config-volume mountPath: /dgraph/config @@ -282,11 +280,12 @@ spec: {{- end }} terminationGracePeriodSeconds: {{ .Values.alpha.terminationGracePeriodSeconds }} volumes: + {{- if not .Values.alpha.persistence.enabled }} + # When persistence is enabled the volumeClaimTemplates entry below supplies + # the "datadir" volume - the StatefulSet controller injects a per-pod PVC + # (datadir--). Only declare an emptyDir fallback when + # persistence is disabled. - name: datadir - {{- if .Values.alpha.persistence.enabled }} - persistentVolumeClaim: - claimName: datadir - {{- else }} emptyDir: {} {{- end }} {{- if and $backupsEnabled (or $hasS3Keys $hasMinioKeys) }} diff --git a/charts/dgraph/templates/zero/statefulset.yaml b/charts/dgraph/templates/zero/statefulset.yaml index 27c5b9e61..11d9fbfdf 100644 --- a/charts/dgraph/templates/zero/statefulset.yaml +++ b/charts/dgraph/templates/zero/statefulset.yaml @@ -60,10 +60,10 @@ spec: labels: {{- include "dgraph.labels" (dict "ctx" . "component" .Values.zero.name "podLabels" .Values.zero.podLabels) | nindent 8 }} spec: - {{- if .Values.serviceAccount.create }} - serviceAccountName: {{ .Values.serviceAccount.name }} - automountServiceAccountToken: {{ .Values.zero.automountServiceAccountToken }} + {{- if or .Values.serviceAccount.create .Values.serviceAccount.name }} + serviceAccountName: {{ include "dgraph.serviceAccountName" . }} {{- end }} + automountServiceAccountToken: {{ .Values.zero.automountServiceAccountToken }} {{- if .Values.zero.schedulerName }} schedulerName: {{ .Values.zero.schedulerName }} {{- end }}