52 lines
1.7 KiB
YAML
52 lines
1.7 KiB
YAML
{{- if eq .Values.controller.type "statefulset" }}
|
|
{{- if .Values.enableStatefulSetAutoDeletePVC }}
|
|
{{- fail "Value 'enableStatefulSetAutoDeletePVC' should be nested inside 'controller' options." }}
|
|
{{- end }}
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: {{ include "alloy.fullname" . }}
|
|
namespace: {{ include "alloy.namespace" . }}
|
|
labels:
|
|
{{- include "alloy.labels" . | nindent 4 }}
|
|
{{- with .Values.controller.extraAnnotations }}
|
|
annotations:
|
|
{{- toYaml . | nindent 4 }}
|
|
{{- end }}
|
|
spec:
|
|
{{- if not .Values.controller.autoscaling.enabled }}
|
|
replicas: {{ .Values.controller.replicas }}
|
|
{{- end }}
|
|
{{- if .Values.controller.parallelRollout }}
|
|
podManagementPolicy: Parallel
|
|
{{- end }}
|
|
{{- if ge (int .Capabilities.KubeVersion.Minor) 22 }}
|
|
minReadySeconds: 10
|
|
{{- end }}
|
|
serviceName: {{ include "alloy.fullname" . }}
|
|
selector:
|
|
matchLabels:
|
|
{{- include "alloy.selectorLabels" . | nindent 6 }}
|
|
template:
|
|
{{- include "alloy.pod-template" . | nindent 4 }}
|
|
{{- with .Values.controller.updateStrategy }}
|
|
updateStrategy:
|
|
{{- toYaml . | nindent 4 }}
|
|
{{- end }}
|
|
{{- with .Values.controller.volumeClaimTemplates }}
|
|
volumeClaimTemplates:
|
|
{{- range . }}
|
|
- {{ toYaml . | nindent 6 }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- if and (semverCompare ">= 1.23-0" .Capabilities.KubeVersion.Version) (.Values.controller.enableStatefulSetAutoDeletePVC) }}
|
|
{{- /*
|
|
Data on the read nodes is easy to replace, so we want to always delete PVCs to make
|
|
operation easier, and will rely on re-fetching data when needed.
|
|
*/}}
|
|
persistentVolumeClaimRetentionPolicy:
|
|
whenDeleted: Delete
|
|
whenScaled: Delete
|
|
{{- end }}
|
|
{{- end }}
|