Skip to content

Commit de00fa9

Browse files
[observability] Add propagated prometheus rules
1 parent 4adce61 commit de00fa9

File tree

1 file changed

+27
-3
lines changed

1 file changed

+27
-3
lines changed

charts/helm_lib/templates/_monitoring_prometheus_rules.tpl

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,22 +42,46 @@
4242

4343
{{- end }}
4444

45-
{{ $definition = $definitionStruct.Rules | toYaml }}
46-
4745
{{- $resourceName := (regexReplaceAllLiteral "\\.(yaml|tpl)$" $path "") }}
4846
{{- $resourceName = ($resourceName | replace " " "-" | replace "." "-" | replace "_" "-") }}
4947
{{- $resourceName = (slice ($resourceName | splitList "/") $folderNamesIndex | join "-") }}
5048
{{- $resourceName = (printf "%s-%s" $context.Chart.Name $resourceName) }}
49+
{{- $propagated := false }}
50+
{{- $useObservabilityRules := false }}
51+
{{- if ( $context.Values.global.enabledModules | has "observability" ) }}
52+
{{- if ($context.Values.global.discovery.apiVersions | has "observability.deckhouse.io/v1alpha1/ClusterObservabilityMetricsRulesGroup") }}
53+
{{- $useObservabilityRules = true }}
54+
{{- $propagated = contains "propagated-" $resourceName }}
55+
{{- end}}
56+
{{- end }}
57+
{{- $resourceName = $resourceName | replace "propagated-" "" }}
58+
59+
{{- if or $propagated $useObservabilityRules }}
60+
{{- range $idx, $group := $definitionStruct.Rules }}
61+
{{- $_ := unset $group "name" }}
62+
{{- $groupResourceName := printf "%s-%d" $resourceName $idx }}
63+
---
64+
apiVersion: observability.deckhouse.io/v1alpha1
65+
kind: ClusterObservability{{ if $propagated }}Propagated{{ end }}MetricsRulesGroup
66+
metadata:
67+
name: {{ $groupResourceName }}
68+
{{- include "helm_lib_module_labels" (list $context (dict "app" "prometheus" "prometheus" "main" "component" "rules")) | nindent 2 }}
69+
spec:
70+
{{- $group | toYaml | nindent 2 }}
71+
{{- end }}
72+
{{- else }}
73+
{{- $definition := $definitionStruct.Rules | toYaml }}
5174
---
5275
apiVersion: monitoring.coreos.com/v1
5376
kind: PrometheusRule
5477
metadata:
5578
name: {{ $resourceName }}
5679
namespace: {{ $namespace }}
57-
{{- include "helm_lib_module_labels" (list $context (dict "app" "prometheus" "prometheus" "main" "component" "rules")) | nindent 2 }}
80+
{{- include "helm_lib_module_labels" (list $context (dict "app" "prometheus" "prometheus" "main" "component" "rules")) | nindent 2 }}
5881
spec:
5982
groups:
6083
{{- $definition | nindent 4 }}
84+
{{- end }}
6185
{{- end }}
6286

6387
{{- $subDirs := list }}

0 commit comments

Comments
 (0)