[yang]: Update yang models to support 'cluster' (#10597)

Why I did it
Minigraph parser added a new field 'cluster' to device_metadata, and then yang validation is blocked.

How I did it
Add 'cluster' to device_metadata yang models.

How to verify it
Run UT for sonc-yang-models.
Use minigraph parser to generate ConfigDB schema and run yang validation.

Signed-off-by: Gang Lv ganglv@microsoft.com
This commit is contained in:
ganglv 2022-04-21 17:20:36 +08:00 committed by GitHub
parent 0526ff98f2
commit a4597396c2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 61 additions and 44 deletions

View File

@ -1,37 +1,37 @@
{ {
"DEV_META_DEV_NEIGH_VERSION_TABLE": { "DEV_META_DEV_NEIGH_VERSION_TABLE": {
"desc": "DEVICE_METADATA DEVICE_NEIGHBOR VERSION TABLE." "desc": "DEVICE_METADATA DEVICE_NEIGHBOR VERSION TABLE."
}, },
"DEVICE_METADATA_DEFAULT_BGP_STATUS": { "DEVICE_METADATA_DEFAULT_BGP_STATUS": {
"desc": "DEVICE_METADATA DEFAULT VALUE FOR BGP_STATUS FIELD.", "desc": "DEVICE_METADATA DEFAULT VALUE FOR BGP_STATUS FIELD.",
"eStrKey" : "Verify", "eStrKey" : "Verify",
"verify": { "verify": {
"xpath": "/sonic-device_metadata:sonic-device_metadata/DEVICE_METADATA/localhost/hostname", "xpath": "/sonic-device_metadata:sonic-device_metadata/DEVICE_METADATA/localhost/hostname",
"key": "sonic-device_metadata:default_bgp_status", "key": "sonic-device_metadata:default_bgp_status",
"value": "up" "value": "up"
} }
}, },
"DEVICE_METADATA_DEFAULT_DOCKER_ROUTING_CONFIG_MODE": { "DEVICE_METADATA_DEFAULT_DOCKER_ROUTING_CONFIG_MODE": {
"desc": "DEVICE_METADATA DEFAULT VALUE FOR DOCKER_ROUTING_CONFIG_MODE FIELD.", "desc": "DEVICE_METADATA DEFAULT VALUE FOR DOCKER_ROUTING_CONFIG_MODE FIELD.",
"eStrKey" : "Verify", "eStrKey" : "Verify",
"verify": { "verify": {
"xpath": "/sonic-device_metadata:sonic-device_metadata/DEVICE_METADATA/localhost/hostname", "xpath": "/sonic-device_metadata:sonic-device_metadata/DEVICE_METADATA/localhost/hostname",
"key": "sonic-device_metadata:docker_routing_config_mode", "key": "sonic-device_metadata:docker_routing_config_mode",
"value": "unified" "value": "unified"
} }
}, },
"DEVICE_METADATA_DEFAULT_PFCWD_STATUS": { "DEVICE_METADATA_DEFAULT_PFCWD_STATUS": {
"desc": "DEVICE_METADATA DEFAULT VALUE FOR PFCWD FIELD.", "desc": "DEVICE_METADATA DEFAULT VALUE FOR PFCWD FIELD.",
"eStrKey" : "Verify", "eStrKey" : "Verify",
"verify": { "verify": {
"xpath": "/sonic-device_metadata:sonic-device_metadata/DEVICE_METADATA/localhost/hostname", "xpath": "/sonic-device_metadata:sonic-device_metadata/DEVICE_METADATA/localhost/hostname",
"key": "sonic-device_metadata:default_pfcwd_status", "key": "sonic-device_metadata:default_pfcwd_status",
"value": "disable" "value": "disable"
} }
}, },
"DEVICE_METADATA_TYPE_INCORRECT_PATTERN": { "DEVICE_METADATA_TYPE_INCORRECT_PATTERN": {
"desc": "DEVICE_METADATA_TYPE_INCORRECT_PATTERN pattern failure.", "desc": "DEVICE_METADATA_TYPE_INCORRECT_PATTERN pattern failure.",
"eStrKey" : "Pattern" "eStrKey" : "Pattern"
}, },
"DEVICE_METADATA_TYPE_CORRECT_PATTERN": { "DEVICE_METADATA_TYPE_CORRECT_PATTERN": {
"desc": "DEVICE_METADATA correct value for Type field" "desc": "DEVICE_METADATA correct value for Type field"
@ -73,26 +73,29 @@
"DEVICE_METADATA_RESOURCE_TYPE_CONFIG": { "DEVICE_METADATA_RESOURCE_TYPE_CONFIG": {
"desc": "Verifying resource type configuration." "desc": "Verifying resource type configuration."
}, },
"DEVICE_METADATA_VALID_SUBTYPE": { "DEVICE_METADATA_VALID_CLUSTER": {
"desc": "Verifying valid subtype value" "desc": "Verifying valid cluster configuration."
}, },
"DEVICE_METADATA_INVALID_SUBTYPE": { "DEVICE_METADATA_VALID_SUBTYPE": {
"desc": "Verifying invalid subtype value", "desc": "Verifying valid subtype value"
"eStrKey": "Pattern" },
}, "DEVICE_METADATA_INVALID_SUBTYPE": {
"DEVICE_METADATA_VALID_PEER_SWITCH": { "desc": "Verifying invalid subtype value",
"desc": "Verifying valid peer switch hostname" "eStrKey": "Pattern"
}, },
"DEVICE_METADATA_INVALID_PEER_SWITCH": { "DEVICE_METADATA_VALID_PEER_SWITCH": {
"desc": "Verifying test fails with hostname that is too long", "desc": "Verifying valid peer switch hostname"
"eStrKey": "Range" },
}, "DEVICE_METADATA_INVALID_PEER_SWITCH": {
"DEVICE_METADATA_VALID_STORAGE_DEVICE": { "desc": "Verifying test fails with hostname that is too long",
"desc": "Verifying valid storage device value" "eStrKey": "Range"
}, },
"DEVICE_METADATA_INVALID_STORAGE_DEVICE": { "DEVICE_METADATA_VALID_STORAGE_DEVICE": {
"desc": "Verifying invalid storage device value", "desc": "Verifying valid storage device value"
"eStrKey": "InvalidValue" },
"DEVICE_METADATA_INVALID_STORAGE_DEVICE": {
"desc": "Verifying invalid storage device value",
"eStrKey": "InvalidValue"
}, },
"DEVICE_METADATA_VALID_DHCP_SERVER": { "DEVICE_METADATA_VALID_DHCP_SERVER": {
"desc": "Verifying dhcp_server configuration." "desc": "Verifying dhcp_server configuration."

View File

@ -198,6 +198,15 @@
} }
} }
}, },
"DEVICE_METADATA_VALID_CLUSTER": {
"sonic-device_metadata:sonic-device_metadata": {
"sonic-device_metadata:DEVICE_METADATA": {
"sonic-device_metadata:localhost": {
"cluster": "AAA00PrdStr00"
}
}
}
},
"DEVICE_METADATA_VALID_SUBTYPE": { "DEVICE_METADATA_VALID_SUBTYPE": {
"sonic-device_metadata:sonic-device_metadata": { "sonic-device_metadata:sonic-device_metadata": {
"sonic-device_metadata:DEVICE_METADATA": { "sonic-device_metadata:DEVICE_METADATA": {

View File

@ -135,6 +135,11 @@ module sonic-device_metadata {
type string; type string;
} }
leaf cluster {
type string;
description "The switch is a member of this cluster.";
}
leaf subtype { leaf subtype {
type string { type string {
pattern "DualToR"; pattern "DualToR";