Welcome to Genius
Genius project provides Generic Network Interfaces, Utilities & Services. Any ODL application can use these to achieve interference-free co-existence with other applications using Genius. In the the first phase (ODL-Boron time frame), Genius would provide following modules --
- Modules providing a common view of Network interfaces for different services
- Interface (logical port) Manager
- Allows bindings/registration of multiple services to logical ports/interfaces
- Ability to plugin different types of southbound protocol renders.
- Overlay Tunnel Manager
- Creates and maintains overlay tunnels between configured TEP's.
- Modules providing commonly used functions as shared services to avoid duplication of code and waste of resources.
- Aliveness Monitor
- Provides tunnel/next-hop aliveness monitoring services
- ID Manager
- Generates persistent unique integer IDs
- MD-SAL Utils
- Provides common generic APIs for interaction with MD-SAL
Getting Started for Users
Genius User Guide
For genius overview, please refer documentation section.
Getting Started for Developers
Genius Design doc
Committers typically do not review changes with build failures; it is the Gerrit Owner's responsibility to get them to build. If you're facing build issues you don't know how to solve, email the app-dev list asking for help (don't just wait and expect committers to notice your proposed change and help you fix its build).
Feel free to email the app-dev list after 1 week of no movement on a (green ticked build passing) Gerrit.
Getting Started for Committers
We do not "self merge" our own changes, but add other committers as reviewers. The first reviewing committer will +1, the second reviewing committer will +2. Any other committers can merge proposed changes with at least x2 +1 from contributors.
The one exception to the rule is that we allow self merging critical changes required to unblock broken builds.
If you've been added as a Reviewer to a change you don't feel comfortable reviewing, or don't anticipate to have the time to review within say 1 week, then you may want to remove yourself from the review, ideally with a short comment, to signal that to the owner, so that he can find others willing to review (or make changes to significantly simplify or further extensively document and re-add), instead of "doing nothing" and letting reviews "linger" for too long with no action.
We aim to review all pending Gerrits which have passed Verify and have no merge conflicts and no -1/-2 (and only those) in the weekly meeting. We ignore pending Gerrits which are not Verify. (Here are those with -1/-2 reviews.)
We occasionally review the list of all pending very old Gerrits which may be should and can be abandoned (or need to poke people).