32 lines
1.3 KiB
YAML
32 lines
1.3 KiB
YAML
{{- if .Values.controller.podDisruptionBudget.enabled }}
|
|
{{- if eq .Values.controller.type "daemonset" }}
|
|
{{- fail "PDBs (Pod Disruption Budgets) are not intended for DaemonSets. Please use a different controller type." }}
|
|
{{- end }}
|
|
|
|
{{- if and .Values.controller.podDisruptionBudget.minAvailable .Values.controller.podDisruptionBudget.maxUnavailable }}
|
|
{{- fail "Only one of minAvailable or maxUnavailable should be defined for PodDisruptionBudget" }}
|
|
{{- end }}
|
|
|
|
{{- if not (or .Values.controller.podDisruptionBudget.minAvailable .Values.controller.podDisruptionBudget.maxUnavailable) }}
|
|
{{- fail "Either minAvailable or maxUnavailable must be defined for PodDisruptionBudget" }}
|
|
{{- end }}
|
|
|
|
apiVersion: {{ include "alloy.controller.pdb.apiVersion" . }}
|
|
kind: PodDisruptionBudget
|
|
metadata:
|
|
name: {{ include "alloy.fullname" . }}
|
|
namespace: {{ include "alloy.namespace" . }}
|
|
labels:
|
|
{{- include "alloy.labels" . | nindent 4 }}
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
{{- include "alloy.selectorLabels" . | nindent 6 }}
|
|
{{- if .Values.controller.podDisruptionBudget.minAvailable }}
|
|
minAvailable: {{ .Values.controller.podDisruptionBudget.minAvailable }}
|
|
{{- end }}
|
|
{{- if .Values.controller.podDisruptionBudget.maxUnavailable }}
|
|
maxUnavailable: {{ .Values.controller.podDisruptionBudget.maxUnavailable }}
|
|
{{- end }}
|
|
{{- end }}
|