diff --git a/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml b/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml index 49277454..46dcc373 100644 --- a/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml +++ b/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml @@ -2,6 +2,10 @@ apiVersion: monitoring.coreos.com/v1 kind: PodMonitor metadata: +{{- if .Values.reloader.podMonitor.annotations }} + annotations: +{{ tpl (toYaml .Values.reloader.podMonitor.annotations) . | indent 4 }} +{{- end }} labels: {{ include "reloader-labels.chart" . | indent 4 }} {{- if .Values.reloader.podMonitor.labels }} @@ -15,12 +19,35 @@ spec: podMetricsEndpoints: - port: http path: "/metrics" -{{- if .Values.reloader.podMonitor.interval }} - interval: {{ .Values.reloader.podMonitor.interval }} -{{- end }} -{{- if .Values.reloader.podMonitor.timeout }} - scrapeTimeout: {{ .Values.reloader.podMonitor.timeout }} -{{- end }} + {{- with .Values.reloader.podMonitor.interval }} + interval: {{ . }} + {{- end }} + {{- with .Values.reloader.podMonitor.scheme }} + scheme: {{ . }} + {{- end }} + {{- with .Values.reloader.podMonitor.bearerTokenSecret }} + bearerTokenSecret: {{ . }} + {{- end }} + {{- with .Values.reloader.podMonitor.tlsConfig }} + tlsConfig: + {{- toYaml .| nindent 6 }} + {{- end }} + {{- with .Values.reloader.podMonitor.timeout }} + scrapeTimeout: {{ . }} + {{- end }} + honorLabels: {{ .Values.reloader.podMonitor.honorLabels }} + {{- with .Values.reloader.podMonitor.metricRelabelings }} + metricRelabelings: + {{- tpl (toYaml . | nindent 6) $ }} + {{- end }} + {{- with .Values.reloader.podMonitor.relabelings }} + relabelings: + {{- toYaml . | nindent 6 }} + {{- end }} + {{- with .Values.reloader.podMonitor.podTargetLabels }} + podTargetLabels: + {{- toYaml . | nindent 4 }} + {{- end }} jobLabel: {{ template "reloader-fullname" . }} namespaceSelector: matchNames: diff --git a/deployments/kubernetes/chart/reloader/templates/servicemonitor.yaml b/deployments/kubernetes/chart/reloader/templates/servicemonitor.yaml index 0bc3d147..a28fdefc 100644 --- a/deployments/kubernetes/chart/reloader/templates/servicemonitor.yaml +++ b/deployments/kubernetes/chart/reloader/templates/servicemonitor.yaml @@ -2,6 +2,10 @@ apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: +{{- if .Values.reloader.serviceMonitor.annotations }} + annotations: +{{ tpl (toYaml .Values.reloader.serviceMonitor.annotations) . | indent 4 }} +{{- end }} labels: {{ include "reloader-labels.chart" . | indent 4 }} {{- if .Values.reloader.serviceMonitor.labels }} @@ -15,12 +19,35 @@ spec: endpoints: - targetPort: http path: "/metrics" -{{- if .Values.reloader.serviceMonitor.interval }} - interval: {{ .Values.reloader.serviceMonitor.interval }} -{{- end }} -{{- if .Values.reloader.serviceMonitor.timeout }} - scrapeTimeout: {{ .Values.reloader.serviceMonitor.timeout }} -{{- end }} + {{- with .Values.reloader.serviceMonitor.interval }} + interval: {{ . }} + {{- end }} + {{- with .Values.reloader.serviceMonitor.scheme }} + scheme: {{ . }} + {{- end }} + {{- with .Values.reloader.serviceMonitor.bearerTokenFile }} + bearerTokenFile: {{ . }} + {{- end }} + {{- with .Values.reloader.serviceMonitor.tlsConfig }} + tlsConfig: + {{- toYaml .| nindent 6 }} + {{- end }} + {{- with .Values.reloader.serviceMonitor.timeout }} + scrapeTimeout: {{ . }} + {{- end }} + honorLabels: {{ .Values.reloader.serviceMonitor.honorLabels }} + {{- with .Values.reloader.serviceMonitor.metricRelabelings }} + metricRelabelings: + {{- tpl (toYaml . | nindent 6) $ }} + {{- end }} + {{- with .Values.reloader.serviceMonitor.relabelings }} + relabelings: + {{- toYaml . | nindent 6 }} + {{- end }} + {{- with .Values.reloader.serviceMonitor.targetLabels }} + targetLabels: + {{- toYaml . | nindent 4 }} + {{- end }} jobLabel: {{ template "reloader-fullname" . }} namespaceSelector: matchNames: diff --git a/deployments/kubernetes/chart/reloader/values.yaml b/deployments/kubernetes/chart/reloader/values.yaml index c61eabc7..fba9462e 100644 --- a/deployments/kubernetes/chart/reloader/values.yaml +++ b/deployments/kubernetes/chart/reloader/values.yaml @@ -137,7 +137,7 @@ reloader: annotations: {} # The name of the ServiceAccount to use. # If not set and create is true, a name is generated using the fullname template - name: + name: # Optional flags to pass to the Reloader entrypoint # Example: # custom_annotations: @@ -151,23 +151,101 @@ reloader: enabled: false # Set the namespace the ServiceMonitor should be deployed # namespace: monitoring - # Set how frequently Prometheus should scrape - # interval: 30s - # Set labels for the ServiceMonitor, use this to define your scrape label for Prometheus Operator - # labels: - # Set timeout for scrape - # timeout: 10s + + # Fallback to the prometheus default unless specified + # interval: 10s + + ## scheme: HTTP scheme to use for scraping. Can be used with `tlsConfig` for example if using istio mTLS. + # scheme: "" + + ## tlsConfig: TLS configuration to use when scraping the endpoint. For example if using istio mTLS. + ## Of type: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#tlsconfig + # tlsConfig: {} + + # bearerTokenFile: + # Fallback to the prometheus default unless specified + # timeout: 30s + + ## Used to pass Labels that are used by the Prometheus installed in your cluster to select Service Monitors to work with + ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#prometheusspec + labels: {} + + ## Used to pass annotations that are used by the Prometheus installed in your cluster to select Service Monitors to work with + ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#prometheusspec + annotations: {} + + # Retain the job and instance labels of the metrics pushed to the Pushgateway + # [Scraping Pushgateway](https://github.com/prometheus/pushgateway#configure-the-pushgateway-as-a-target-to-scrape) + honorLabels: true + + ## Metric relabel configs to apply to samples before ingestion. + ## [Metric Relabeling](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs) + metricRelabelings: [] + # - action: keep + # regex: 'kube_(daemonset|deployment|pod|namespace|node|statefulset).+' + # sourceLabels: [__name__] + + ## Relabel configs to apply to samples before ingestion. + ## [Relabeling](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config) + relabelings: [] + # - sourceLabels: [__meta_kubernetes_pod_node_name] + # separator: ; + # regex: ^(.*)$ + # targetLabel: nodename + # replacement: $1 + # action: replace + + targetLabels: [] podMonitor: enabled: false # Set the namespace the podMonitor should be deployed # namespace: monitoring - # Set how frequently Prometheus should scrape - # interval: 30s - # Set labels for the podMonitor, use this to define your scrape label for Prometheus Operator - # labels: - # Set timeout for scrape - # timeout: 10s + + # Fallback to the prometheus default unless specified + # interval: 10s + + ## scheme: HTTP scheme to use for scraping. Can be used with `tlsConfig` for example if using istio mTLS. + # scheme: "" + + ## tlsConfig: TLS configuration to use when scraping the endpoint. For example if using istio mTLS. + ## Of type: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#tlsconfig + # tlsConfig: {} + + # bearerTokenSecret: + # Fallback to the prometheus default unless specified + # timeout: 30s + + ## Used to pass Labels that are used by the Prometheus installed in your cluster to select Service Monitors to work with + ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#prometheusspec + labels: {} + + ## Used to pass annotations that are used by the Prometheus installed in your cluster to select Service Monitors to work with + ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#prometheusspec + annotations: {} + + # Retain the job and instance labels of the metrics pushed to the Pushgateway + # [Scraping Pushgateway](https://github.com/prometheus/pushgateway#configure-the-pushgateway-as-a-target-to-scrape) + honorLabels: true + + ## Metric relabel configs to apply to samples before ingestion. + ## [Metric Relabeling](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs) + metricRelabelings: [] + # - action: keep + # regex: 'kube_(daemonset|deployment|pod|namespace|node|statefulset).+' + # sourceLabels: [__name__] + + ## Relabel configs to apply to samples before ingestion. + ## [Relabeling](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config) + relabelings: [] + # - sourceLabels: [__meta_kubernetes_pod_node_name] + # separator: ; + # regex: ^(.*)$ + # targetLabel: nodename + # replacement: $1 + # action: replace + + podTargetLabels: [] podDisruptionBudget: enabled: false