v0.2.0
What's Changed
- Bump ygnmi to v0.8.1 and ygot: v0.29.0
- Generate Map() functions for lists in gnmi API
- Restore grpc.WithBlock as a common dial option
- KNE solver uses unspecific vendor for host nodes
Backwards-incompatible changes for ygnmi/ygot API
- All nodes marked as
telemetry-atomic
no longer provides telemetry/configuration path access to descendant nodes. This is because we expect a single Notification message at the atomic node, and devices/caches are not expected to support descendant nodes: https://github.com/openconfig/gnmi/blob/5473f2ef722ee45c3f26eee3f4a44a7d827e3575/cache/cache.go#L454
This version of Ondatra also uses a new ygnmi/ygot API for list containers (recall that in OpenConfig YANG models, all lists are surrounded by a container containing that list as its only child node), such that:
ordered-by user
lists now has a different API to allow respecting the ordering of list elements (this affects BGP policy statements "/routing-policy/policy-definitions/policy-definition/statements/statement" and DNS server configuration "/system/dns/servers/server").ordered-by user
lists, notably BGP policy statements, are treated astelemetry-atomic
in order to convey ordering when receiving data via telemetry; therefore, any descendent nodes are not accessible via ygnmi's telemetry API.
Example config of affected list containers:
container statements {
oc-ext:telemetry-atomic
list statement {
ordered-by user; // optional
}
}
Other Notable Changes
- All lists now have a ygnmi API suffixed with
Map
that returns amap[key]value
. This improves upon the current wildcard API suffixed withAny
.
Full Changelog: v0.1.23...v0.1.24