blob: dd1beec8a544b4b9339184ba72942bff0c7812b6 [file] [log] [blame]
Giorgi Lekveishviliea328da2026-07-29 12:15:15 +04001{{- 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 }}
4apiVersion: monitoring.coreos.com/v1
5kind: ServiceMonitor
6metadata:
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 }}
19 prometheus: {{ .Values.prometheus.servicemonitor.prometheusInstance }}
20 {{- with .Values.prometheus.servicemonitor.labels }}
21 {{- toYaml . | nindent 4 }}
22 {{- end }}
23{{- if .Values.prometheus.servicemonitor.annotations }}
24 annotations:
25 {{- with .Values.prometheus.servicemonitor.annotations }}
26 {{- toYaml . | nindent 4 }}
27 {{- end }}
28{{- end }}
29spec:
30 jobLabel: {{ template "cert-manager.fullname" . }}
31 selector:
32 matchExpressions:
33 - key: app.kubernetes.io/name
34 operator: In
35 values:
36 - {{ include "cainjector.name" . }}
37 - {{ template "cert-manager.name" . }}
38 - {{ include "webhook.name" . }}
39 - key: app.kubernetes.io/instance
40 operator: In
41 values:
42 - {{ .Release.Name }}
43 - key: app.kubernetes.io/component
44 operator: In
45 values:
46 - cainjector
47 - controller
48 - webhook
49{{- if .Values.prometheus.servicemonitor.namespace }}
50 namespaceSelector:
51 matchNames:
52 - {{ include "cert-manager.namespace" . }}
53{{- end }}
54 endpoints:
55 - targetPort: {{ .Values.prometheus.servicemonitor.targetPort }}
56 path: {{ .Values.prometheus.servicemonitor.path }}
57 interval: {{ .Values.prometheus.servicemonitor.interval }}
58 scrapeTimeout: {{ .Values.prometheus.servicemonitor.scrapeTimeout }}
59 honorLabels: {{ .Values.prometheus.servicemonitor.honorLabels }}
60 {{- with .Values.prometheus.servicemonitor.endpointAdditionalProperties }}
61 {{- toYaml . | nindent 4 }}
62 {{- end }}
63{{- end }}