BMP-1.1: BMP Session Establishment and Telemetry Test
Readme Location : https://github.com/openconfig/featureprofiles/tree/main/feature/bgp/bmp/otg_tests/bmp_base_session_test
Summary of Changes
Hello @ANISH-GOTTAPU, I'm Gemini Code Assist[^1]! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request introduces the foundational test framework for validating BGP Monitoring Protocol (BMP) session establishment and telemetry. It includes a new test file that configures BGP sessions between a DUT and ATE, and sets up the DUT for BMP monitoring. While the core test structure is in place, the actual BMP verification steps are currently commented out, awaiting full OpenConfig and OTG support for BMP. A deviation has been added to accommodate platforms where OpenConfig for BMP is not yet available, allowing for CLI-based configuration in such cases.
Highlights
-
New BMP Test Case: Introduced a new test file,
bmp_base_session_test.go, to validate BMP (BGP Monitoring Protocol) session establishment and telemetry on the DUT. -
BMP Configuration Logic: Added a
ConfigureBMPfunction withincfgplugins/bgp.goto handle DUT-side BMP station configuration. This function includes a fallback to CLI commands for platforms that do not yet support OpenConfig for BMP. -
OpenConfig BMP Deviation: Implemented a
bmp_oc_unsupporteddeviation, primarily for Arista platforms, to indicate when OpenConfig-based BMP configuration is not supported and requires alternative (CLI) methods. -
Placeholder Verification: The BMP verification functions (
verifyBMPSessionOnDUT,verifyBMPSessionOnATE, etc.) are currently placeholders, explicitly stating that OTG (Open Traffic Generator) support for BMP is not yet available and will be uncommented once implemented. -
BGP Configuration Enhancements: Updated BGP configuration logic in
cfgplugins/bgp.goto refine multipath settings and introduce a newBMPConfigParamsstruct for clearer BMP-related parameters.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.
| Feature | Command | Description |
|---|---|---|
| Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
| Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
| Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in pull request comments and review comments. |
| Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with :thumbsup: and :thumbsdown: on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
[^1]: Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.
Pull Request Functional Test Report for #4759 / dfc864bf2861e027d757b6a9684373c1a9479fe9
Virtual Devices
| Device | Test | Test Documentation | Job | Raw Log |
|---|---|---|---|---|
| Arista cEOS | BMP-1.1: BMP Session Establishment and Telemetry Test |
|||
| Cisco 8000E | BMP-1.1: BMP Session Establishment and Telemetry Test |
|||
| Cisco XRd | BMP-1.1: BMP Session Establishment and Telemetry Test |
|||
| Juniper ncPTX | BMP-1.1: BMP Session Establishment and Telemetry Test |
|||
| Nokia SR Linux | BMP-1.1: BMP Session Establishment and Telemetry Test |
|||
| Openconfig Lemming | BMP-1.1: BMP Session Establishment and Telemetry Test |
Hardware Devices
| Device | Test | Test Documentation | Raw Log |
|---|---|---|---|
| Arista 7808 | BMP-1.1: BMP Session Establishment and Telemetry Test |
||
| Cisco 8808 | BMP-1.1: BMP Session Establishment and Telemetry Test |
||
| Juniper PTX10008 | BMP-1.1: BMP Session Establishment and Telemetry Test |
||
| Nokia 7250 IXR-10e | BMP-1.1: BMP Session Establishment and Telemetry Test |
Pull Request Test Coverage Report for Build 20088911644
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.
- For more information on this, see Tracking coverage changes with pull request builds.
- To avoid this issue with future PRs, see these Recommended CI Configurations.
- For a quick fix, rebase this PR at GitHub. Your next report should be accurate.
Details
- 0 of 83 (0.0%) changed or added relevant lines in 3 files are covered.
- 3 unchanged lines in 1 file lost coverage.
- Overall coverage increased (+0.2%) to 10.232%
| Changes Missing Coverage | Covered Lines | Changed/Added Lines | % |
|---|---|---|---|
| internal/deviations/deviations.go | 0 | 3 | 0.0% |
| proto/metadata_go_proto/metadata.pb.go | 0 | 5 | 0.0% |
| internal/cfgplugins/bgp.go | 0 | 75 | 0.0% |
| <!-- | Total: | 0 | 83 |
| Files with Coverage Reduction | New Missed Lines | % |
|---|---|---|
| internal/cfgplugins/bgp.go | 3 | 0.0% |
| <!-- | Total: | 3 |
| Totals | |
|---|---|
| Change from base Build 20074033946: | 0.2% |
| Covered Lines: | 2227 |
| Relevant Lines: | 21766 |