diff --git a/src/sonic-yang-models/tests/files/sample_config_db.json b/src/sonic-yang-models/tests/files/sample_config_db.json index 279efc86a2b..1992588b28d 100644 --- a/src/sonic-yang-models/tests/files/sample_config_db.json +++ b/src/sonic-yang-models/tests/files/sample_config_db.json @@ -1338,10 +1338,14 @@ }, "GNMI_CLIENT_CERT": { "testcert1": { - "role": "RW" + "role": [ + "RW" + ] }, "testcert2": { - "role": "RO" + "role": [ + "RO" + ] } }, "TUNNEL": { diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/gnmi.json b/src/sonic-yang-models/tests/yang_model_tests/tests/gnmi.json index 10956d2bbf3..f8da06ba810 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/gnmi.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/gnmi.json @@ -16,7 +16,7 @@ }, "GNMI_CLIENT_CERT_LIST_TABLE_WITH_MISSING_ROLE": { "desc": "CLIENT_CERT_LIST_TABLE_WITH_MISSING_ROLE failure.", - "eStrKey": "Mandatory" + "eStrKey": "MinElements" }, "GNMI_CLIENT_CERT_LIST_TABLE_WITH_VALID_CONFIG": { "desc": "TABLE WITH VALID CONFIG." diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests_config/gnmi.json b/src/sonic-yang-models/tests/yang_model_tests/tests_config/gnmi.json index ea83bc90d04..fc0477f021f 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests_config/gnmi.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests_config/gnmi.json @@ -80,11 +80,15 @@ "GNMI_CLIENT_CERT_LIST": [ { "cert_cname": "testcert1", - "role": "RW" + "role": [ + "RW" + ] }, { "cert_cname": "testcert2", - "role": "RO" + "role": [ + "RO" + ] } ] } diff --git a/src/sonic-yang-models/yang-models/sonic-gnmi.yang b/src/sonic-yang-models/yang-models/sonic-gnmi.yang index 515db6e783c..c6a31d5276c 100644 --- a/src/sonic-yang-models/yang-models/sonic-gnmi.yang +++ b/src/sonic-yang-models/yang-models/sonic-gnmi.yang @@ -92,9 +92,9 @@ module sonic-gnmi { "client cert common name"; } - leaf role { + leaf-list role { type string; - mandatory true; + min-elements 1; description "role of client cert common name"; }