Skip to content

Commit 4a92e37

Browse files
authored
Yang model changes for additional SpineRouter roles (sonic-net#22285) (sonic-net#1026)
Why I did it Add switch roles to support additional SpineRouter roles Work item tracking Microsoft ADO 32403731: How I did it Updated device metadata yang model How to verify it Validate config tree generation using "pyang -Vf tree -p /usr/local/share/yang/modules/ietf ./yang-models/sonic-voq-inband-interface.yang" Build the below python-wheels to validate unit tests and other changes target/python-wheels/bullseye/sonic_yang_mgmt-1.0-py3-none-any.whl target/python-wheels/bullseye/sonic_yang_models-1.0-py3-none-any.whl target/python-wheels/bullseye/sonic_config_engine-1.0-py3-none-any.whl
2 parents c134bfb + f44c481 commit 4a92e37

3 files changed

Lines changed: 50 additions & 2 deletions

File tree

src/sonic-yang-models/tests/yang_model_tests/tests/device_metadata.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,12 @@
4242
"DEVICE_METADATA_TYPE_CORRECT_PATTERN": {
4343
"desc": "DEVICE_METADATA correct value for Type field"
4444
},
45+
"DEVICE_METADATA_TYPE_UPPER_SPINEROUTER_PATTERN": {
46+
"desc": "DEVICE_METADATA value as UpperSpineRouter for Type field"
47+
},
48+
"DEVICE_METADATA_TYPE_FABRIC_SPINEROUTER_PATTERN": {
49+
"desc": "DEVICE_METADATA value as FabricSpineRouter for Type field"
50+
},
4551
"DEVICE_METADATA_TYPE_BMC_MGMT_TOR_PATTERN": {
4652
"desc": "DEVICE_METADATA value as BmcMgmtToRRouter for Type field"
4753
},
@@ -109,6 +115,9 @@
109115
"DEVICE_METADATA_VALID_SUBTYPE3": {
110116
"desc": "Verifying valid subtype value downstreamLC"
111117
},
118+
"DEVICE_METADATA_VALID_SUBTYPE4": {
119+
"desc": "Verifying valid subtype value LowerSpineRouter"
120+
},
112121
"DEVICE_METADATA_INVALID_SUBTYPE": {
113122
"desc": "Verifying invalid subtype value",
114123
"eStrKey": "Pattern"

src/sonic-yang-models/tests/yang_model_tests/tests_config/device_metadata.json

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,36 @@
8282
}
8383
}
8484
},
85+
"DEVICE_METADATA_TYPE_SPINEROUTER_PATTERN": {
86+
"sonic-device_metadata:sonic-device_metadata": {
87+
"sonic-device_metadata:DEVICE_METADATA": {
88+
"sonic-device_metadata:localhost": {
89+
"bgp_asn": "65002",
90+
"type": "SpineRouter"
91+
}
92+
}
93+
}
94+
},
95+
"DEVICE_METADATA_TYPE_UPPER_SPINEROUTER_PATTERN": {
96+
"sonic-device_metadata:sonic-device_metadata": {
97+
"sonic-device_metadata:DEVICE_METADATA": {
98+
"sonic-device_metadata:localhost": {
99+
"bgp_asn": "65002",
100+
"type": "UpperSpineRouter"
101+
}
102+
}
103+
}
104+
},
105+
"DEVICE_METADATA_TYPE_FABRIC_SPINEROUTER_PATTERN": {
106+
"sonic-device_metadata:sonic-device_metadata": {
107+
"sonic-device_metadata:DEVICE_METADATA": {
108+
"sonic-device_metadata:localhost": {
109+
"bgp_asn": "65002",
110+
"type": "FabricSpineRouter"
111+
}
112+
}
113+
}
114+
},
85115
"DEVICE_METADATA_TYPE_BMC_MGMT_TOR_PATTERN": {
86116
"sonic-device_metadata:sonic-device_metadata": {
87117
"sonic-device_metadata:DEVICE_METADATA": {
@@ -301,6 +331,15 @@
301331
}
302332
}
303333
},
334+
"DEVICE_METADATA_VALID_SUBTYPE4": {
335+
"sonic-device_metadata:sonic-device_metadata": {
336+
"sonic-device_metadata:DEVICE_METADATA": {
337+
"sonic-device_metadata:localhost": {
338+
"subtype": "LowerSpineRouter"
339+
}
340+
}
341+
}
342+
},
304343
"DEVICE_METADATA_INVALID_SUBTYPE": {
305344
"sonic-device_metadata:sonic-device_metadata": {
306345
"sonic-device_metadata:DEVICE_METADATA": {

src/sonic-yang-models/yang-models/sonic-device_metadata.yang

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ module sonic-device_metadata {
100100
leaf type {
101101
type string {
102102
length 1..255;
103-
pattern "ToRRouter|LeafRouter|SpineChassisFrontendRouter|ChassisBackendRouter|ASIC|MgmtToRRouter|SpineRouter|BackEndToRRouter|BackEndLeafRouter|EPMS|MgmtTsToR|BmcMgmtToRRouter|SonicHost|not-provisioned";
103+
pattern "ToRRouter|LeafRouter|SpineChassisFrontendRouter|ChassisBackendRouter|ASIC|MgmtToRRouter|SpineRouter|UpperSpineRouter|FabricSpineRouter|BackEndToRRouter|BackEndLeafRouter|EPMS|MgmtTsToR|BmcMgmtToRRouter|SonicHost|not-provisioned";
104104
}
105105
}
106106

@@ -169,7 +169,7 @@ module sonic-device_metadata {
169169

170170
leaf subtype {
171171
type string {
172-
pattern "DualToR|SmartSwitch|Supervisor|UpstreamLC|DownstreamLC";
172+
pattern "DualToR|SmartSwitch|Supervisor|UpstreamLC|DownstreamLC|LowerSpineRouter";
173173
}
174174
}
175175

0 commit comments

Comments
 (0)