Change how gNMI paths are requested via NBI and controller
Description
The current way of handling path requests does not fit our desired behaviour. Currently, when a path is requested via NBI the controller forwards the request, updates the storage with the answer from the target and then forwards the answer to the originally requesting entity. What we actually want is a mix between intended state in the storage and the actual state of the device. This way, it is possible to compare intended and current state and deal with issues with they differ.
This requires a new type of path request via NBI, sth like GetPathIntended
in addition to the current path requests. The new one should return the intended state from the storage. The original, currently used path request should still be forwarded to the device, but the storage should not be updated with its answer. Instead, the answer would just need to get forwarded to the originally requesting entity. Only once, during the creation of a managed network element in the storage, its answer (but only the writable/configurable paths) should be stored as the model.
-
add new path request for intended state -
update original path path request -
update network element creation to fit these changes