{{- if .Values.podDisruptionBudget.enabled }} apiVersion: policy/v1 kind: PodDisruptionBudget metadata: name: {{ include "cert-manager.fullname" . }} namespace: {{ include "cert-manager.namespace" . }} labels: app: {{ include "cert-manager.name" . }} app.kubernetes.io/name: {{ include "cert-manager.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/component: "controller" {{- include "labels" . | nindent 4 }} spec: selector: matchLabels: app.kubernetes.io/name: {{ include "cert-manager.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/component: "controller" {{- if not (or (hasKey .Values.podDisruptionBudget "minAvailable") (hasKey .Values.podDisruptionBudget "maxUnavailable")) }} minAvailable: 1 # Default value because minAvailable and maxUnavailable are not set {{- end }} {{- if hasKey .Values.podDisruptionBudget "minAvailable" }} minAvailable: {{ .Values.podDisruptionBudget.minAvailable }} {{- end }} {{- if hasKey .Values.podDisruptionBudget "maxUnavailable" }} maxUnavailable: {{ .Values.podDisruptionBudget.maxUnavailable }} {{- end }} {{- end }}