| gio | 33d6293 | 2026-07-23 16:39:35 +0400 | [diff] [blame] | 1 | {{- if and .Values.prometheus.enabled (and .Values.prometheus.podmonitor.enabled .Values.prometheus.servicemonitor.enabled) }} |
| 2 | {{- fail "Either .Values.prometheus.podmonitor.enabled or .Values.prometheus.servicemonitor.enabled can be enabled at a time, but not both." }} |
| 3 | {{- else if and .Values.prometheus.enabled .Values.prometheus.servicemonitor.enabled }} |
| Giorgi Lekveishvili | d1234c1 | 2023-06-19 10:37:06 +0400 | [diff] [blame] | 4 | apiVersion: monitoring.coreos.com/v1 |
| 5 | kind: ServiceMonitor |
| 6 | metadata: |
| 7 | name: {{ template "cert-manager.fullname" . }} |
| 8 | {{- if .Values.prometheus.servicemonitor.namespace }} |
| 9 | namespace: {{ .Values.prometheus.servicemonitor.namespace }} |
| 10 | {{- else }} |
| 11 | namespace: {{ include "cert-manager.namespace" . }} |
| 12 | {{- end }} |
| 13 | labels: |
| 14 | app: {{ include "cert-manager.name" . }} |
| 15 | app.kubernetes.io/name: {{ include "cert-manager.name" . }} |
| 16 | app.kubernetes.io/instance: {{ .Release.Name }} |
| 17 | app.kubernetes.io/component: "controller" |
| 18 | {{- include "labels" . | nindent 4 }} |
| gio | b6e9f2f | 2026-07-23 16:53:10 +0400 | [diff] [blame] | 19 | {{- if .Values.prometheus.servicemonitor.prometheusInstance }} |
| Giorgi Lekveishvili | d1234c1 | 2023-06-19 10:37:06 +0400 | [diff] [blame] | 20 | prometheus: {{ .Values.prometheus.servicemonitor.prometheusInstance }} |
| gio | b6e9f2f | 2026-07-23 16:53:10 +0400 | [diff] [blame] | 21 | {{- end }} |
| Giorgi Lekveishvili | d1234c1 | 2023-06-19 10:37:06 +0400 | [diff] [blame] | 22 | {{- with .Values.prometheus.servicemonitor.labels }} |
| 23 | {{- toYaml . | nindent 4 }} |
| 24 | {{- end }} |
| 25 | {{- if .Values.prometheus.servicemonitor.annotations }} |
| 26 | annotations: |
| 27 | {{- with .Values.prometheus.servicemonitor.annotations }} |
| 28 | {{- toYaml . | nindent 4 }} |
| 29 | {{- end }} |
| 30 | {{- end }} |
| 31 | spec: |
| gio | 15aa663 | 2026-07-23 17:14:23 +0400 | [diff] [blame] | 32 | jobLabel: app.kubernetes.io/name |
| Giorgi Lekveishvili | d1234c1 | 2023-06-19 10:37:06 +0400 | [diff] [blame] | 33 | selector: |
| gio | 33d6293 | 2026-07-23 16:39:35 +0400 | [diff] [blame] | 34 | matchExpressions: |
| 35 | - key: app.kubernetes.io/name |
| 36 | operator: In |
| 37 | values: |
| 38 | - {{ include "cainjector.name" . }} |
| 39 | - {{ template "cert-manager.name" . }} |
| 40 | - {{ include "webhook.name" . }} |
| 41 | - key: app.kubernetes.io/instance |
| 42 | operator: In |
| 43 | values: |
| 44 | - {{ .Release.Name }} |
| 45 | - key: app.kubernetes.io/component |
| 46 | operator: In |
| 47 | values: |
| 48 | - cainjector |
| 49 | - controller |
| 50 | - webhook |
| Giorgi Lekveishvili | d1234c1 | 2023-06-19 10:37:06 +0400 | [diff] [blame] | 51 | {{- if .Values.prometheus.servicemonitor.namespace }} |
| 52 | namespaceSelector: |
| 53 | matchNames: |
| 54 | - {{ include "cert-manager.namespace" . }} |
| 55 | {{- end }} |
| 56 | endpoints: |
| gio | c895c1d | 2026-07-23 17:18:25 +0400 | [diff] [blame] | 57 | - targetPort: http-metrics |
| 58 | path: /metrics |
| gio | b6e9f2f | 2026-07-23 16:53:10 +0400 | [diff] [blame] | 59 | {{- if .Values.prometheus.servicemonitor.interval }} |
| Giorgi Lekveishvili | d1234c1 | 2023-06-19 10:37:06 +0400 | [diff] [blame] | 60 | interval: {{ .Values.prometheus.servicemonitor.interval }} |
| gio | b6e9f2f | 2026-07-23 16:53:10 +0400 | [diff] [blame] | 61 | {{- end }} |
| 62 | {{- if .Values.prometheus.servicemonitor.scrapeTimeout }} |
| Giorgi Lekveishvili | d1234c1 | 2023-06-19 10:37:06 +0400 | [diff] [blame] | 63 | scrapeTimeout: {{ .Values.prometheus.servicemonitor.scrapeTimeout }} |
| gio | b6e9f2f | 2026-07-23 16:53:10 +0400 | [diff] [blame] | 64 | {{- end }} |
| Giorgi Lekveishvili | d1234c1 | 2023-06-19 10:37:06 +0400 | [diff] [blame] | 65 | honorLabels: {{ .Values.prometheus.servicemonitor.honorLabels }} |
| gio | 33d6293 | 2026-07-23 16:39:35 +0400 | [diff] [blame] | 66 | {{- with .Values.prometheus.servicemonitor.endpointAdditionalProperties }} |
| 67 | {{- toYaml . | nindent 4 }} |
| 68 | {{- end }} |
| Giorgi Lekveishvili | d1234c1 | 2023-06-19 10:37:06 +0400 | [diff] [blame] | 69 | {{- end }} |