{{- if and .Values.controller.metrics.enabled .Values.controller.metrics.serviceMonitor.enabled }} apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: name: {{ include "argo-rollouts.fullname" . }} namespace: {{ default .Release.Namespace .Values.controller.metrics.serviceMonitor.namespace | quote }} labels: app.kubernetes.io/component: {{ .Values.controller.component }} {{- include "argo-rollouts.labels" . | nindent 4 }} {{- range $key, $value := .Values.controller.metrics.serviceMonitor.additionalLabels }} {{ $key }}: {{ $value | quote }} {{- end }} {{- with .Values.controller.metrics.serviceMonitor.additionalAnnotations }} annotations: {{- toYaml . | nindent 4 }} {{- end }} spec: endpoints: - port: {{ .Values.controller.metrics.service.portName }} {{- with .Values.controller.metrics.serviceMonitor.relabelings }} relabelings: {{- toYaml . | nindent 6 }} {{- end }} {{- with .Values.controller.metrics.serviceMonitor.metricRelabelings }} metricRelabelings: {{- toYaml . | nindent 6 }} {{- end }} namespaceSelector: matchNames: - {{ .Release.Namespace }} selector: matchLabels: app.kubernetes.io/component: {{ .Values.controller.component }} {{- include "argo-rollouts.selectorLabels" . | nindent 6 }} {{- end }}