gNMI project
Welcome to gNMI project
Introduction
Even despite the increased popularity of gNMI in the past years OpenDaylight project is missing its implementation.
The main goal of this project is to bring to OpenDaylight a gNMI soutbound implementation providing capabilities to manage network of gNMI capable devices.
That implementation should be able to provide users a way to manage this network with RESTCONF as a northbound. This use case is shown here.
Additionally, users would have a possibility to use this plugin within other projects such like TPCE to provide monitoring side of network automation and optimization.
In this proposal we propose to move gNMI plugin implementation from lighty.io to this new project in OpenDaylight ecosystem to fulfill the goals mentioned above.
Migration from lighty.io in details:
lighty-applications/lighty-rnc-app-aggregator → in ODL instead of lighty application running in docker we create a karaf feature
lighty-models → we need to create in ODL features to provide lighty-gnmi-models and openconfig-models
lighty-modules/lighty-gnmi → the main logic, and lighty-gnmi-test
lighty-resources/singlenode-configuration → configuration in tests, ODL GNMI will provide its own clustering config as usual
.github/workflows/lighty-rcgnmi-app → an integration test which we can reproduce in Java/Pytest
Code published in lighty.io codebase is EPL v1.0 licensed and thus compatible with OpenDaylight.
As such, this proposal seeks to allocate the following namespaces:
gnmias its repository nameGNMIas its Jira project keyorg.opendaylight.gnmi.*MavengroupIds
Project Facts
Project Creation Date:
Primary Contact: @Ivan Hraško
Project Lead: @Ivan Hraško
Committers: NETCONF committers
Mailing List:
Meetings: See Community Meetings
Repository:
Jenkins:
Open Bugs:
Documentation
The following documentation will be provided
Getting Started for Developers, outlining how to use provided Java APIs, for example to be able to invoke
gNMI GETandgNMI SEToperations programmaticallyGetting Started for Users, outlining common use-cases with gNMI plugin deployment originally posted at:
https://github.com/PANTHEONtech/lighty/blob/main/lighty-examples/lighty-gnmi-community-restconf-app/README.md
Release Planning
This project will follow Semantic Versioning from its inception. The following versions are envisioned:
1.0.0includes completed migration from lighty.io codebase(M = 1..).x.xversions provided as per the evolution on1.0.0code and how the project sees fit(N = M+1).x.xincludes version for M+1 for OpenDaylight major releaseM.x.xand any other releases as the project sees fit
Release Notes