77)
88
99func TestParseConfig (t * testing.T ) {
10- defaultGroupName := "default"
1110 type args struct {
1211 path string
1312 }
@@ -41,17 +40,13 @@ func TestParseConfig(t *testing.T) {
4140 TortoiseUpdateInterval : 1 * time .Hour ,
4241 HPATargetUtilizationMaxIncrease : 10 ,
4342 MaximumMinReplicas : 10 ,
43+ MaximumMaxReplicas : 100 ,
44+ HPATargetUtilizationUpdateInterval : 3 * time .Hour ,
45+ IstioSidecarProxyDefaultCPU : "100m" ,
46+ IstioSidecarProxyDefaultMemory : "200Mi" ,
47+ MaxAllowedScalingDownRatio : 0.5 ,
4448 ServiceGroups : []ServiceGroup {},
45- MaximumMaxReplicas : []MaximumMaxReplicasPerGroup {
46- {
47- ServiceGroupName : & defaultGroupName ,
48- MaximumMaxReplica : 100 ,
49- },
50- },
51- HPATargetUtilizationUpdateInterval : 3 * time .Hour ,
52- IstioSidecarProxyDefaultCPU : "100m" ,
53- IstioSidecarProxyDefaultMemory : "200Mi" ,
54- MaxAllowedScalingDownRatio : 0.5 ,
49+ MaximumMaxReplicasPerService : []MaximumMaxReplicasPerGroup {},
5550 MinimumCPURequestPerContainer : map [string ]string {
5651 "istio-proxy" : "100m" ,
5752 "hoge-agent" : "120m" ,
@@ -91,21 +86,17 @@ func TestParseConfig(t *testing.T) {
9186 TortoiseUpdateInterval : 15 * time .Second ,
9287 HPATargetUtilizationMaxIncrease : 5 ,
9388 MaximumMinReplicas : 10 ,
89+ MaximumMaxReplicas : 100 ,
90+ HPATargetUtilizationUpdateInterval : 24 * time .Hour ,
91+ IstioSidecarProxyDefaultCPU : "100m" ,
92+ IstioSidecarProxyDefaultMemory : "200Mi" ,
93+ MaxAllowedScalingDownRatio : 0.8 ,
94+ MinimumCPURequestPerContainer : map [string ]string {},
95+ MinimumMemoryRequestPerContainer : map [string ]string {},
96+ ResourceLimitMultiplier : map [string ]int64 {},
9497 ServiceGroups : []ServiceGroup {},
95- MaximumMaxReplicas : []MaximumMaxReplicasPerGroup {
96- {
97- ServiceGroupName : & defaultGroupName ,
98- MaximumMaxReplica : 100 ,
99- },
100- },
101- HPATargetUtilizationUpdateInterval : 24 * time .Hour ,
102- IstioSidecarProxyDefaultCPU : "100m" ,
103- IstioSidecarProxyDefaultMemory : "200Mi" ,
104- MaxAllowedScalingDownRatio : 0.8 ,
105- MinimumCPURequestPerContainer : map [string ]string {},
106- MinimumMemoryRequestPerContainer : map [string ]string {},
107- ResourceLimitMultiplier : map [string ]int64 {},
108- BufferRatioOnVerticalResource : 0.1 ,
98+ MaximumMaxReplicasPerService : []MaximumMaxReplicasPerGroup {},
99+ BufferRatioOnVerticalResource : 0.1 ,
109100 },
110101 },
111102 {
@@ -139,21 +130,17 @@ func TestParseConfig(t *testing.T) {
139130 TortoiseUpdateInterval : 15 * time .Second ,
140131 HPATargetUtilizationMaxIncrease : 5 ,
141132 MaximumMinReplicas : 10 ,
133+ MaximumMaxReplicas : 100 ,
134+ HPATargetUtilizationUpdateInterval : 24 * time .Hour ,
135+ IstioSidecarProxyDefaultCPU : "100m" ,
136+ IstioSidecarProxyDefaultMemory : "200Mi" ,
137+ MaxAllowedScalingDownRatio : 0.8 ,
138+ MinimumCPURequestPerContainer : map [string ]string {},
139+ MinimumMemoryRequestPerContainer : map [string ]string {},
140+ ResourceLimitMultiplier : map [string ]int64 {},
142141 ServiceGroups : []ServiceGroup {},
143- MaximumMaxReplicas : []MaximumMaxReplicasPerGroup {
144- {
145- ServiceGroupName : & defaultGroupName ,
146- MaximumMaxReplica : 100 ,
147- },
148- },
149- HPATargetUtilizationUpdateInterval : 24 * time .Hour ,
150- IstioSidecarProxyDefaultCPU : "100m" ,
151- IstioSidecarProxyDefaultMemory : "200Mi" ,
152- MaxAllowedScalingDownRatio : 0.8 ,
153- MinimumCPURequestPerContainer : map [string ]string {},
154- MinimumMemoryRequestPerContainer : map [string ]string {},
155- ResourceLimitMultiplier : map [string ]int64 {},
156- BufferRatioOnVerticalResource : 0.1 ,
142+ MaximumMaxReplicasPerService : []MaximumMaxReplicasPerGroup {},
143+ BufferRatioOnVerticalResource : 0.1 ,
157144 },
158145 },
159146 }
@@ -172,7 +159,6 @@ func TestParseConfig(t *testing.T) {
172159}
173160
174161func Test_validate (t * testing.T ) {
175- defaultGroupName := "default"
176162 tests := []struct {
177163 name string
178164 config * Config
@@ -225,12 +211,7 @@ func Test_validate(t *testing.T) {
225211 HPATargetUtilizationMaxIncrease : 99 ,
226212 MinimumMinReplicas : 2 ,
227213 MaximumMinReplicas : 20 ,
228- MaximumMaxReplicas : []MaximumMaxReplicasPerGroup {
229- {
230- ServiceGroupName : & defaultGroupName ,
231- MaximumMaxReplica : 10 ,
232- },
233- },
214+ MaximumMaxReplicas : 10 ,
234215 },
235216 wantErr : true ,
236217 },
@@ -242,31 +223,21 @@ func Test_validate(t *testing.T) {
242223 HPATargetUtilizationMaxIncrease : 99 ,
243224 MinimumMinReplicas : 2 ,
244225 MaximumMinReplicas : 20 ,
245- MaximumMaxReplicas : []MaximumMaxReplicasPerGroup {
246- {
247- ServiceGroupName : & defaultGroupName ,
248- MaximumMaxReplica : 100 ,
249- },
250- },
251- PreferredMaxReplicas : 101 ,
226+ MaximumMaxReplicas : 100 ,
227+ PreferredMaxReplicas : 101 ,
252228 },
253229 wantErr : true ,
254230 },
255231 {
256- name : "invalid PreferredMaxReplicas less than minimum " ,
232+ name : "invalid PreferredMaxReplicas less than MinimumMinReplicas " ,
257233 config : & Config {
258234 RangeOfMinMaxReplicasRecommendationHours : 2 ,
259235 GatheringDataPeriodType : "daily" ,
260236 HPATargetUtilizationMaxIncrease : 99 ,
261237 MinimumMinReplicas : 5 ,
262238 MaximumMinReplicas : 20 ,
263- MaximumMaxReplicas : []MaximumMaxReplicasPerGroup {
264- {
265- ServiceGroupName : & defaultGroupName ,
266- MaximumMaxReplica : 100 ,
267- },
268- },
269- PreferredMaxReplicas : 4 ,
239+ MaximumMaxReplicas : 100 ,
240+ PreferredMaxReplicas : 4 ,
270241 },
271242 wantErr : true ,
272243 },
@@ -278,15 +249,9 @@ func Test_validate(t *testing.T) {
278249 HPATargetUtilizationMaxIncrease : 99 ,
279250 MinimumMinReplicas : 5 ,
280251 MaximumMinReplicas : 20 ,
281- ServiceGroups : []ServiceGroup {},
282- MaximumMaxReplicas : []MaximumMaxReplicasPerGroup {
283- {
284- ServiceGroupName : & defaultGroupName ,
285- MaximumMaxReplica : 100 ,
286- },
287- },
288- PreferredMaxReplicas : 6 ,
289- MaxAllowedScalingDownRatio : 1.1 ,
252+ MaximumMaxReplicas : 100 ,
253+ PreferredMaxReplicas : 6 ,
254+ MaxAllowedScalingDownRatio : 1.1 ,
290255 },
291256 wantErr : true ,
292257 },
0 commit comments