| {{- 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 }} |
| {{- with .Values.podDisruptionBudget.unhealthyPodEvictionPolicy }} |
| unhealthyPodEvictionPolicy: {{ . }} |
| {{- end }} |
| {{- end }} |