{{- if and (.Values.kubePrometheusStack) (.Values.kubePrometheusStack.enable) -}} apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: kube-prometheus-stack namespace: {{ .Values.argoNamespace | default "argocd" }} finalizers: - resources-finalizer.argocd.argoproj.io spec: project: {{ .Values.argoProject | default "default" }} source: repoURL: {{ .Values.repoUrl }} path: add-ons/kube-prometheus-stack targetRevision: {{ .Values.targetRevision }} helm: skipCrds: true values: | kube-prometheus-stack: prometheus: prometheusSpec: podMonitorSelectorNilUsesHelmValues: false serviceMonitorSelectorNilUsesHelmValues: false {{- toYaml .Values.kubePrometheusStack | nindent 10 }} destination: server: {{ .Values.destinationServer | default "https://kubernetes.default.svc" }} namespace: kube-prometheus-stack syncPolicy: automated: prune: true selfHeal: true syncOptions: - CreateNamespace=true retry: limit: 1 backoff: duration: 5s factor: 2 maxDuration: 1m {{- end -}}