File tree Expand file tree Collapse file tree 2 files changed +16
-7
lines changed
internal/controller/nginx/config Expand file tree Collapse file tree 2 files changed +16
-7
lines changed Original file line number Diff line number Diff line change @@ -2,6 +2,7 @@ package config
22
33import (
44 "fmt"
5+ "sort"
56 "strings"
67 gotemplate "text/template"
78
@@ -245,9 +246,17 @@ func buildInferenceMaps(groups []dataplane.BackendGroup) []shared.Map {
245246 }
246247 }
247248
249+ // Sort the map keys to ensure deterministic ordering
250+ mapKeys := make ([]string , 0 , len (uniqueMaps ))
251+ for key := range uniqueMaps {
252+ mapKeys = append (mapKeys , key )
253+ }
254+ sort .Strings (mapKeys )
255+
256+ // Build the result slice in sorted order
248257 inferenceMaps := make ([]shared.Map , 0 , len (uniqueMaps ))
249- for _ , inferenceMap := range uniqueMaps {
250- inferenceMaps = append (inferenceMaps , inferenceMap )
258+ for _ , key := range mapKeys {
259+ inferenceMaps = append (inferenceMaps , uniqueMaps [ key ] )
251260 }
252261
253262 return inferenceMaps
Original file line number Diff line number Diff line change @@ -408,25 +408,25 @@ func TestBuildInferenceMaps(t *testing.T) {
408408 expectedMaps int
409409 }{
410410 {
411- name : "unique backends with different failure modes" ,
411+ name : "unique backends with different failure modes, result is ordered by upstream name " ,
412412 backendGroups : []dataplane.BackendGroup {
413413 {
414414 Backends : []dataplane.Backend {
415415 {
416- UpstreamName : "upstream1 " ,
416+ UpstreamName : "upstream2 " ,
417417 EndpointPickerConfig : & dataplane.EndpointPickerConfig {
418418 NsName : "default" ,
419419 EndpointPickerRef : & inference.EndpointPickerRef {
420- FailureMode : inference .EndpointPickerFailClose ,
420+ FailureMode : inference .EndpointPickerFailOpen ,
421421 },
422422 },
423423 },
424424 {
425- UpstreamName : "upstream2 " ,
425+ UpstreamName : "upstream1 " ,
426426 EndpointPickerConfig : & dataplane.EndpointPickerConfig {
427427 NsName : "default" ,
428428 EndpointPickerRef : & inference.EndpointPickerRef {
429- FailureMode : inference .EndpointPickerFailOpen ,
429+ FailureMode : inference .EndpointPickerFailClose ,
430430 },
431431 },
432432 },
You can’t perform that action at this time.
0 commit comments