Hi,
I know this is bad timing since Qcw was just published, but - at least with
libyang - the following YANG data tree that specifies nothing Qcw related is no
longer valid when just loading the Qcw YANG models:
interface.json:
{
"ietf-interfaces:interfaces": {
"interface": [
{
"if-index": 1,
"name": "eth0",
"type": "iana-if-type:ethernetCsmacd",
"oper-status": "down",
"admin-status": "down",
"statistics": {
"discontinuity-time": "2023-12-15T10:04:12.345+00:00"
}
}
]
}
}
yanglint interface.json ieee802-dot1q-sched.yang
ieee802-dot1q-sched-bridge.yang ieee802-types.yang ieee802-dot1q-types.yang
ieee802-dot1q-bridge.yang [email protected]
[email protected]
results into
libyang err : Number of elements in admin-control-list must not be greaterthan
supported-list-max (Data location
"/ietf-interfaces:interfaces/interface[name='eth0']/ieee802-dot1q-bridge:bridge-port/ieee802-dot1q-sched-bridge:gate-parameter-table/admin-control-list".)
libyang err : Number of elements in oper-control-list must not be greaterthan
supported-list-max (Data location
"/ietf-interfaces:interfaces/interface[name='eth0']/ieee802-dot1q-bridge:bridge-port/ieee802-dot1q-sched-bridge:gate-parameter-table/oper-control-list".)
libyang err : admin-cycle-time must not be greater than supported-cycle-max
(Data location
"/ietf-interfaces:interfaces/interface[name='eth0']/ieee802-dot1q-bridge:bridge-port/ieee802-dot1q-sched-bridge:gate-parameter-table/admin-cycle-time".)
libyang err : oper-cycle-time must not be greater than supported-cycle-max
(Data location
"/ietf-interfaces:interfaces/interface[name='eth0']/ieee802-dot1q-bridge:bridge-port/ieee802-dot1q-sched-bridge:gate-parameter-table/oper-cycle-time".)
YANGLINT[E]: Failed to parse input data file "interface.json".
My first expectation was a bug in libyang, but Michal is convinced that
libyang's behavior is correct in this regard:
https://github.com/CESNET/libyang/issues/2140
I have not enough experience in YANG to properly argue if either the YANG model
or libyang needs to be changed, but I don't think we want to force every
interface to specify a
/ietf-interfaces:interfaces/interface[name='eth0']/ieee802-dot1q-bridge:bridge-port/ieee802-dot1q-sched-bridge:gate-parameter-table/supported-list-max
etc. just because the Qcw YANG models are loaded.
I hope I have just a misunderstanding and I am looking forward to your
responses!
Greetings,
Florian
_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod