2
2
3
3
load _helpers
4
4
5
- @test " prometheus/ServiceMonitor-server: assertDisabled by default " {
5
+ @test " prometheus/ServiceMonitor-server: assertDisabled in values " {
6
6
cd ` chart_dir`
7
- local actual=$( (helm template \
8
- --show-only templates/prometheus-servicemonitor.yaml \
9
- . || echo " ---" ) | tee /dev/stderr |
10
- yq ' length > 0' | tee /dev/stderr)
11
- [ " ${actual} " = " false" ]
7
+ local actual=$( cat values.yaml | yq ' .telemetry.serviceMonitor.enabled' | tee /dev/stderr)
8
+ [ " ${actual} " == " false" ]
12
9
}
13
10
11
+ @test " prometheus/ServiceMonitor-server: assertDisabled by default" {
12
+ cd ` chart_dir`
13
+ local actual=$( helm template \
14
+ . | tee /dev/stderr |
15
+ yq ' select(.kind == "ServiceMonitor" and .metadata.labels."control-plane" == "controller-manager") | documentIndex' | tee /dev/stderr)
16
+ [ " ${actual} " = " " ]
17
+ }
14
18
15
19
@test " prometheus/ServiceMonitor-server: assertEnabled" {
16
20
cd ` chart_dir`
17
- local actual=$( (helm template \
18
- --show-only templates/prometheus-servicemonitor.yaml \
21
+ local actual=$( helm template \
19
22
--set ' telemetry.serviceMonitor.enabled=true' \
20
- . || echo " --- " ) | tee /dev/stderr |
21
- yq ' length > 0 ' | tee /dev/stderr)
22
- [ " ${actual} " = " true " ]
23
+ . | tee /dev/stderr |
24
+ yq ' select(.kind == "ServiceMonitor" and .metadata.labels."control-plane" == "controller-manager") | documentIndex ' | tee /dev/stderr)
25
+ [ " ${actual} " -ge 0 ]
23
26
}
24
27
25
28
@test " prometheus/ServiceMonitor-server: assertScrapeTimeout default" {
26
29
cd ` chart_dir`
27
- local actual=$( (helm template \
28
- --show-only templates/prometheus-servicemonitor.yaml \
30
+ local actual=$( helm template \
29
31
--set ' telemetry.serviceMonitor.enabled=true' \
30
- . ) | tee /dev/stderr |
32
+ --show-only templates/prometheus-servicemonitor.yaml \
33
+ . | tee /dev/stderr |
31
34
yq -r ' .spec.endpoints[0].scrapeTimeout' | tee /dev/stderr)
32
35
[ " ${actual} " = " 10s" ]
33
36
}
34
37
35
38
@test " prometheus/ServiceMonitor-server: assertScrapeTimeout update" {
36
39
cd ` chart_dir`
37
- local actual=$( ( helm template \
40
+ local actual=$( helm template \
38
41
--show-only templates/prometheus-servicemonitor.yaml \
39
42
--set ' telemetry.serviceMonitor.enabled=true' \
40
43
--set ' telemetry.serviceMonitor.scrapeTimeout=60s' \
41
- . ) | tee /dev/stderr |
44
+ . | tee /dev/stderr |
42
45
yq -r ' .spec.endpoints[0].scrapeTimeout' | tee /dev/stderr)
43
46
[ " ${actual} " = " 60s" ]
44
47
}
45
48
46
49
@test " prometheus/ServiceMonitor-server: assertInterval default" {
47
50
cd ` chart_dir`
48
- local actual=$( ( helm template \
51
+ local actual=$( helm template \
49
52
--show-only templates/prometheus-servicemonitor.yaml \
50
53
--set ' telemetry.serviceMonitor.enabled=true' \
51
- . ) | tee /dev/stderr |
54
+ . | tee /dev/stderr |
52
55
yq -r ' .spec.endpoints[0].interval' | tee /dev/stderr)
53
56
[ " ${actual} " = " 30s" ]
54
57
}
55
58
56
59
@test " prometheus/ServiceMonitor-server: assertInterval update" {
57
60
cd ` chart_dir`
58
- local actual=$( ( helm template \
61
+ local actual=$( helm template \
59
62
--show-only templates/prometheus-servicemonitor.yaml \
60
63
--set ' telemetry.serviceMonitor.enabled=true' \
61
64
--set ' telemetry.serviceMonitor.interval=60s' \
62
- . ) | tee /dev/stderr |
65
+ . | tee /dev/stderr |
63
66
yq -r ' .spec.endpoints[0].interval' | tee /dev/stderr)
64
67
[ " ${actual} " = " 60s" ]
65
68
}
66
69
67
70
@test " prometheus/ServiceMonitor-server: assertSelectors default" {
68
71
cd ` chart_dir`
69
- local output=$( ( helm template \
72
+ local output=$( helm template \
70
73
--show-only templates/prometheus-servicemonitor.yaml \
71
74
--set ' telemetry.serviceMonitor.enabled=true' \
72
- . ) | tee /dev/stderr)
75
+ . | tee /dev/stderr)
73
76
74
77
[ " $( echo " $output " | yq -r ' .metadata.labels | length' ) " = " 7" ]
75
78
[ " $( echo " $output " | yq -r ' .metadata.labels.control-plane' ) " = " controller-manager" ]
76
79
}
77
80
78
81
@test " prometheus/ServiceMonitor-server: assertSelectors override" {
79
82
cd ` chart_dir`
80
- local output=$( ( helm template \
83
+ local output=$( helm template \
81
84
--show-only templates/prometheus-servicemonitor.yaml \
82
85
--set ' telemetry.serviceMonitor.enabled=true' \
83
86
--set ' telemetry.serviceMonitor.selectors.baz=qux' \
84
87
--set ' telemetry.serviceMonitor.selectors.bar=foo' \
85
- . ) | tee /dev/stderr)
88
+ . | tee /dev/stderr)
86
89
87
90
[ " $( echo " $output " | yq -r ' .metadata.labels | length' ) " = " 9" ]
88
91
[ " $( echo " $output " | yq -r ' .metadata.labels | has("app")' ) " = " false" ]
@@ -92,10 +95,10 @@ load _helpers
92
95
93
96
@test " prometheus/ServiceMonitor-server: assertEndpoints default" {
94
97
cd ` chart_dir`
95
- local output=$( ( helm template \
98
+ local output=$( helm template \
96
99
--show-only templates/prometheus-servicemonitor.yaml \
97
100
--set ' telemetry.serviceMonitor.enabled=true' \
98
- . ) | tee /dev/stderr)
101
+ . | tee /dev/stderr)
99
102
100
103
[ " $( echo " $output " | yq -r ' .spec.endpoints | length' ) " = " 1" ]
101
104
[ " $( echo " $output " | yq -r ' .spec.endpoints[0].scheme' ) " = " https" ]
@@ -105,13 +108,13 @@ load _helpers
105
108
106
109
@test " prometheus/ServiceMonitor-server: assertEndpoints update" {
107
110
cd ` chart_dir`
108
- local output=$( ( helm template \
111
+ local output=$( helm template \
109
112
--show-only templates/prometheus-servicemonitor.yaml \
110
113
--set ' telemetry.serviceMonitor.enabled=true' \
111
114
--set ' telemetry.serviceMonitor.scheme=http' \
112
115
--set ' telemetry.serviceMonitor.port=http' \
113
116
--set ' telemetry.serviceMonitor.bearerTokenFile=/foo/token' \
114
- . ) | tee /dev/stderr)
117
+ . | tee /dev/stderr)
115
118
116
119
[ " $( echo " $output " | yq -r ' .spec.endpoints | length' ) " = " 1" ]
117
120
[ " $( echo " $output " | yq -r ' .spec.endpoints[0].scheme' ) " = " http" ]
0 commit comments