servicemonitor.yaml 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. {{- $shouldRenderStr := include "external-secrets.shouldRenderServiceMonitor" . | trim }}
  2. {{- if and .Values.serviceMonitor.enabled (eq $shouldRenderStr "true") }}
  3. apiVersion: "monitoring.coreos.com/v1"
  4. kind: ServiceMonitor
  5. metadata:
  6. labels:
  7. {{- include "external-secrets.labels" . | nindent 4 }}
  8. {{- if .Values.serviceMonitor.additionalLabels }}
  9. {{ toYaml .Values.serviceMonitor.additionalLabels | indent 4 }}
  10. {{- end }}
  11. name: {{ include "external-secrets.fullname" . }}-metrics
  12. namespace: {{ .Values.serviceMonitor.namespace | default (include "external-secrets.namespace" .) | quote }}
  13. spec:
  14. selector:
  15. matchLabels:
  16. {{- include "external-secrets.selectorLabels" . | nindent 6 }}
  17. namespaceSelector:
  18. matchNames:
  19. - {{ template "external-secrets.namespace" . }}
  20. endpoints:
  21. - port: metrics
  22. interval: {{ .Values.serviceMonitor.interval }}
  23. scrapeTimeout: {{ .Values.serviceMonitor.scrapeTimeout }}
  24. honorLabels: {{ .Values.serviceMonitor.honorLabels }}
  25. {{- with .Values.serviceMonitor.metricRelabelings }}
  26. metricRelabelings:
  27. {{- toYaml . | nindent 6 }}
  28. {{- end }}
  29. {{- with .Values.serviceMonitor.relabelings }}
  30. relabelings:
  31. {{- toYaml . | nindent 6 }}
  32. {{- end }}
  33. {{- if .Values.metrics.listen.auth.enabled }}
  34. authorization:
  35. credentials:
  36. name: {{ include "external-secrets.serviceAccountName" . }}-token
  37. key: token
  38. type: Bearer
  39. {{- end }}
  40. ---
  41. {{- if .Values.webhook.create }}
  42. apiVersion: "monitoring.coreos.com/v1"
  43. kind: ServiceMonitor
  44. metadata:
  45. labels:
  46. {{- include "external-secrets-webhook.labels" . | nindent 4 }}
  47. {{- if .Values.serviceMonitor.additionalLabels }}
  48. {{ toYaml .Values.serviceMonitor.additionalLabels | indent 4 }}
  49. {{- end }}
  50. name: {{ include "external-secrets.fullname" . }}-webhook-metrics
  51. namespace: {{ .Values.serviceMonitor.namespace | default (include "external-secrets.namespace" .) | quote }}
  52. spec:
  53. selector:
  54. matchLabels:
  55. {{- include "external-secrets-webhook-metrics.labels" . | nindent 6 }}
  56. namespaceSelector:
  57. matchNames:
  58. - {{ template "external-secrets.namespace" . }}
  59. endpoints:
  60. - port: metrics
  61. interval: {{ .Values.serviceMonitor.interval }}
  62. scrapeTimeout: {{ .Values.serviceMonitor.scrapeTimeout }}
  63. honorLabels: {{ .Values.serviceMonitor.honorLabels }}
  64. {{- with .Values.serviceMonitor.metricRelabelings }}
  65. metricRelabelings:
  66. {{- toYaml . | nindent 6 }}
  67. {{- end }}
  68. {{- with .Values.serviceMonitor.relabelings }}
  69. relabelings:
  70. {{- toYaml . | nindent 6 }}
  71. {{- end }}
  72. {{- if .Values.webhook.metrics.listen.auth.enabled }}
  73. authorization:
  74. credentials:
  75. name: {{ include "external-secrets-webhook.serviceAccountName" . }}-token
  76. key: token
  77. type: Bearer
  78. {{- end }}
  79. {{- end }}
  80. ---
  81. {{- if .Values.certController.create }}
  82. apiVersion: "monitoring.coreos.com/v1"
  83. kind: ServiceMonitor
  84. metadata:
  85. labels:
  86. {{- include "external-secrets-cert-controller.labels" . | nindent 4 }}
  87. {{- if .Values.serviceMonitor.additionalLabels }}
  88. {{ toYaml .Values.serviceMonitor.additionalLabels | indent 4 }}
  89. {{- end }}
  90. name: {{ include "external-secrets.fullname" . }}-cert-controller-metrics
  91. namespace: {{ .Values.serviceMonitor.namespace | default (include "external-secrets.namespace" .) | quote }}
  92. spec:
  93. selector:
  94. matchLabels:
  95. {{- include "external-secrets-cert-controller-metrics.labels" . | nindent 6 }}
  96. namespaceSelector:
  97. matchNames:
  98. - {{ template "external-secrets.namespace" . }}
  99. endpoints:
  100. - port: metrics
  101. interval: {{ .Values.serviceMonitor.interval }}
  102. scrapeTimeout: {{ .Values.serviceMonitor.scrapeTimeout }}
  103. honorLabels: {{ .Values.serviceMonitor.honorLabels }}
  104. {{- with .Values.serviceMonitor.metricRelabelings }}
  105. metricRelabelings:
  106. {{- toYaml . | nindent 6 }}
  107. {{- end }}
  108. {{- with .Values.serviceMonitor.relabelings }}
  109. relabelings:
  110. {{- toYaml . | nindent 6 }}
  111. {{- end }}
  112. {{- if .Values.certController.metrics.listen.auth.enabled }}
  113. authorization:
  114. credentials:
  115. name: {{ include "external-secrets-cert-controller.serviceAccountName" . }}-token
  116. key: token
  117. type: Bearer
  118. {{- end }}
  119. {{- end }}
  120. {{- end }}