Skip to content

Commit 3ca5c31

Browse files
committed
Make interconnects an array instead of a map
1 parent 9314644 commit 3ca5c31

File tree

4 files changed

+17
-19
lines changed

4 files changed

+17
-19
lines changed

configdb/configdb.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@ func getFeatures(features map[string]values.Feature) map[string]Feature {
219219
return configFeatures
220220
}
221221

222-
func getInterfaces(ports values.Ports, bgpPorts []string, interconnects map[string]values.Interconnect) map[string]Interface {
222+
func getInterfaces(ports values.Ports, bgpPorts []string, interconnects []values.Interconnect) map[string]Interface {
223223
interfaces := make(map[string]Interface)
224224

225225
for _, port := range ports.List {
@@ -523,7 +523,7 @@ func getVLANMembers(vlans []values.VLAN, addVlanMembers bool) map[string]VLANMem
523523
return vlanMembers
524524
}
525525

526-
func getVRFs(interconnects map[string]values.Interconnect, ports values.Ports, vlans []values.VLAN) map[string]VRF {
526+
func getVRFs(interconnects []values.Interconnect, ports values.Ports, vlans []values.VLAN) map[string]VRF {
527527
vrfs := make(map[string]VRF)
528528

529529
for _, interconnect := range interconnects {

configdb/configdb_test.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ func Test_getInterfaces(t *testing.T) {
1515
name string
1616
ports values.Ports
1717
bgpPorts []string
18-
interconnects map[string]values.Interconnect
18+
interconnects []values.Interconnect
1919
want map[string]Interface
2020
}{
2121
{
@@ -123,8 +123,8 @@ func Test_getInterfaces(t *testing.T) {
123123
},
124124
{
125125
name: "interconnect without unnumbered interfaces",
126-
interconnects: map[string]values.Interconnect{
127-
"internet": {
126+
interconnects: []values.Interconnect{
127+
{
128128
UnnumberedInterfaces: []string{},
129129
VNI: "104000",
130130
VRF: "VrfInternet",
@@ -134,8 +134,8 @@ func Test_getInterfaces(t *testing.T) {
134134
},
135135
{
136136
name: "interconnect with unnumbered interfaces",
137-
interconnects: map[string]values.Interconnect{
138-
"internet": {
137+
interconnects: []values.Interconnect{
138+
{
139139
UnnumberedInterfaces: []string{
140140
"Ethernet0",
141141
"Ethernet1",
@@ -440,15 +440,15 @@ func Test_getPortsAndBreakouts(t *testing.T) {
440440
func Test_getVRFs(t *testing.T) {
441441
tests := []struct {
442442
name string
443-
interconnects map[string]values.Interconnect
443+
interconnects []values.Interconnect
444444
ports values.Ports
445445
vlans []values.VLAN
446446
want map[string]VRF
447447
}{
448448
{
449449
name: "no ports or vlans to add",
450-
interconnects: map[string]values.Interconnect{
451-
"mpls": {
450+
interconnects: []values.Interconnect{
451+
{
452452
VNI: "1",
453453
VRF: "Vrf40",
454454
},
@@ -465,8 +465,8 @@ func Test_getVRFs(t *testing.T) {
465465
},
466466
{
467467
name: "duplicates are not added",
468-
interconnects: map[string]values.Interconnect{
469-
"mpls": {
468+
interconnects: []values.Interconnect{
469+
{
470470
VNI: "1",
471471
VRF: "Vrf40",
472472
},
@@ -491,8 +491,8 @@ func Test_getVRFs(t *testing.T) {
491491
},
492492
{
493493
name: "new vrfs are added",
494-
interconnects: map[string]values.Interconnect{
495-
"mpls": {
494+
interconnects: []values.Interconnect{
495+
{
496496
VNI: "1",
497497
VRF: "Vrf40",
498498
},

tests/1/sonic-config.yaml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,9 @@ features:
1515
frr_mgmt_framework_config: false
1616

1717
interconnects:
18-
mpls:
19-
vni: 104010
18+
- vni: 104010
2019
vrf: VrfMpls
21-
internet:
22-
vrf: VrfInternet
20+
- vrf: VrfInternet
2321

2422
hostname: leaf01
2523
lldp_hello_time: 10

values/values.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ type Values struct {
9696
Features map[string]Feature `yaml:"features"`
9797
FRRMgmtFrameworkConfig bool `yaml:"frr_mgmt_framework_config"`
9898
Hostname string `yaml:"hostname"`
99-
Interconnects map[string]Interconnect `yaml:"interconnects"`
99+
Interconnects []Interconnect `yaml:"interconnects"`
100100
LLDPHelloTime int `yaml:"lldp_hello_time"`
101101
LoopbackAddress string `yaml:"loopback_address"`
102102
MCLAG MCLAG `yaml:"mclag"`

0 commit comments

Comments
 (0)