2022-09-01 19:07:49 +00:00
|
|
|
#!/usr/bin/env bats
|
|
|
|
|
|
|
|
load _helpers
|
|
|
|
|
|
|
|
@test "prometheus/PrometheusRules-server: assertDisabled by default" {
|
|
|
|
cd `chart_dir`
|
|
|
|
local actual=$( (helm template \
|
|
|
|
--show-only templates/prometheus-prometheusrules.yaml \
|
2023-05-18 05:01:22 +00:00
|
|
|
--set 'serverTelemetry.prometheusRules.rules[0].foo=bar' \
|
2022-09-01 19:07:49 +00:00
|
|
|
. || echo "---") | tee /dev/stderr |
|
|
|
|
yq 'length > 0' | tee /dev/stderr)
|
|
|
|
[ "${actual}" = "false" ]
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "prometheus/PrometheusRules-server: assertDisabled with rules-defined=false" {
|
|
|
|
cd `chart_dir`
|
|
|
|
local actual=$( (helm template \
|
|
|
|
--show-only templates/prometheus-prometheusrules.yaml \
|
|
|
|
--set 'serverTelemetry.prometheusRules.enabled=true' \
|
|
|
|
. || echo "---") | tee /dev/stderr | yq 'length > 0' | tee /dev/stderr)
|
|
|
|
[ "${actual}" = "false" ]
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "prometheus/PrometheusRules-server: assertEnabled with rules-defined=true" {
|
|
|
|
cd `chart_dir`
|
|
|
|
local output=$( (helm template \
|
|
|
|
--show-only templates/prometheus-prometheusrules.yaml \
|
|
|
|
--set 'serverTelemetry.prometheusRules.enabled=true' \
|
2023-05-18 05:01:22 +00:00
|
|
|
--set 'serverTelemetry.prometheusRules.rules[0].foo=bar' \
|
|
|
|
--set 'serverTelemetry.prometheusRules.rules[1].baz=qux' \
|
2022-09-01 19:07:49 +00:00
|
|
|
.) | tee /dev/stderr )
|
|
|
|
|
|
|
|
[ "$(echo "$output" | yq -r '.spec.groups | length')" = "1" ]
|
|
|
|
[ "$(echo "$output" | yq -r '.spec.groups[0] | length')" = "2" ]
|
2024-05-28 11:52:10 +00:00
|
|
|
[ "$(echo "$output" | yq -r '.spec.groups[0].name')" = "release-name-openbao" ]
|
2022-09-01 19:07:49 +00:00
|
|
|
[ "$(echo "$output" | yq -r '.spec.groups[0].rules | length')" = "2" ]
|
2023-05-18 05:01:22 +00:00
|
|
|
[ "$(echo "$output" | yq -r '.spec.groups[0].rules[0].foo')" = "bar" ]
|
|
|
|
[ "$(echo "$output" | yq -r '.spec.groups[0].rules[1].baz')" = "qux" ]
|
2022-09-01 19:07:49 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@test "prometheus/PrometheusRules-server: assertSelectors default" {
|
|
|
|
cd `chart_dir`
|
|
|
|
local output=$( (helm template \
|
|
|
|
--show-only templates/prometheus-prometheusrules.yaml \
|
|
|
|
--set 'serverTelemetry.prometheusRules.enabled=true' \
|
2023-05-18 05:01:22 +00:00
|
|
|
--set 'serverTelemetry.prometheusRules.rules[0].foo=bar' \
|
2022-09-01 19:07:49 +00:00
|
|
|
. ) | tee /dev/stderr)
|
|
|
|
|
|
|
|
[ "$(echo "$output" | yq -r '.metadata.labels | length')" = "5" ]
|
|
|
|
[ "$(echo "$output" | yq -r '.metadata.labels.release')" = "prometheus" ]
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "prometheus/PrometheusRules-server: assertSelectors overrides" {
|
|
|
|
cd `chart_dir`
|
|
|
|
local output=$( (helm template \
|
|
|
|
--show-only templates/prometheus-prometheusrules.yaml \
|
|
|
|
--set 'serverTelemetry.prometheusRules.enabled=true' \
|
2023-05-18 05:01:22 +00:00
|
|
|
--set 'serverTelemetry.prometheusRules.rules[0].foo=bar' \
|
2022-09-01 19:07:49 +00:00
|
|
|
--set 'serverTelemetry.prometheusRules.selectors.baz=qux' \
|
|
|
|
--set 'serverTelemetry.prometheusRules.selectors.bar=foo' \
|
|
|
|
. ) | tee /dev/stderr)
|
|
|
|
|
|
|
|
[ "$(echo "$output" | yq -r '.metadata.labels | length')" = "6" ]
|
|
|
|
[ "$(echo "$output" | yq -r '.metadata.labels | has("app")')" = "false" ]
|
|
|
|
[ "$(echo "$output" | yq -r '.metadata.labels | has("kube-prometheus-stack")')" = "false" ]
|
|
|
|
[ "$(echo "$output" | yq -r '.metadata.labels.baz')" = "qux" ]
|
|
|
|
[ "$(echo "$output" | yq -r '.metadata.labels.bar')" = "foo" ]
|
|
|
|
}
|