Skip to content

gNMI-1.3: update BGP import/export policy, MED, and IS-IS authentication configuration - #6048

Open
LiamWalsh98 wants to merge 8 commits into
openconfig:mainfrom
b4firex:bgp-oc-yml-pr6-gnmi-1-3
Open

LiamWalsh98 wants to merge 8 commits into
openconfig:mainfrom
b4firex:bgp-oc-yml-pr6-gnmi-1-3

Conversation

@LiamWalsh98

Copy link
Copy Markdown
Contributor

Summary

Updates gNMI-1.3 to replace complete BGP import/export policy roots, send set-med-action with set-med, and configure IS-IS authentication at the interface level.

Path changes

Previous BGP export-policy leaf-list update:

  • .../apply-policy/config/export-policy

Current BGP import/export policy root replacement:

  • .../apply-policy/config

Existing MED value:

/routing-policy/policy-definitions/policy-definition/statements/statement/actions/bgp-actions/config/set-med

Required companion leaf:

/routing-policy/policy-definitions/policy-definition/statements/statement/actions/bgp-actions/config/set-med-action

Previous IS-IS authentication path:

/network-instances/network-instance/protocols/protocol/isis/interfaces/interface/levels/level/config/hello-authentication-type

Current IS-IS authentication path:

/network-instances/network-instance/protocols/protocol/isis/interfaces/interface/config/authentication-type

Removed deviation assignment

  • bgp_set_med_action_unsupported

gNMI-1.3

Replaces and deletes the complete peer-group apply-policy root, enables the paired MED action, and uses interface-level IS-IS authentication as the default behavior.

@LiamWalsh98
LiamWalsh98 requested a review from a team as a code owner September 15, 2026 20:56
@OpenConfigBot

OpenConfigBot commented Sep 15, 2026 •

Copy link
Copy Markdown

Pull Request Functional Test Report for #6048 / 1f55cf8

Virtual Devices

Device Test Status Test Documentation Job Raw Log
Arista cEOS status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time
Cisco 8000E status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time
Cisco XRd status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time
Juniper ncPTX status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time
Nokia SR Linux status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time
Openconfig Lemming status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time

Hardware Devices

Device Test Status Test Documentation Raw Log
Arista status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time
Cisco status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time
Juniper status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time
Nokia status
gNMI-1.3: pending authorization
gNMI-1.3: Benchmarking: Drained Configuration Convergence Time

Help

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! 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 updates the gNMI-1.3 implementation to align with revised configuration paths for BGP policies, MED actions, and IS-IS authentication. The changes simplify policy handling by introducing helper functions for peer-group modifications and ensure compatibility with current OpenConfig models by moving authentication settings to the interface level.

Highlights

  • BGP Policy Management: Replaced granular BGP import/export policy leaf-list updates with complete root replacements and introduced helper functions to standardize policy management across different device configurations.
  • MED Action Support: Enabled the use of set-med-action alongside set-med and removed the associated unsupported deviation.
  • IS-IS Authentication: Migrated IS-IS authentication configuration from the level-specific hierarchy to the interface-level configuration path.
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 the 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 counterproductive. You can react with 👍 and 👎 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.

Footnotes

  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. ↩

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request refactors BGP policy configuration and cleanup in the drained configuration convergence time test by introducing helper functions replacePeerGroupExportPolicy and deletePeerGroupApplyPolicy to handle platform deviations. It also removes a Cisco platform exception from metadata and updates IS-IS authentication in a shared setup helper. Review feedback advises against changing the default IS-IS authentication globally to prevent regressions, suggests using gnmi.Lookup instead of gnmi.Get to safely retrieve unconfigured policy paths, and warns against deleting unsupported AFI/SAFI policy paths to avoid gNMI errors on strict implementations.

Comment thread internal/gnmi/setup/setup.go
@danielbarney

Copy link
Copy Markdown
Contributor

/fptest virtual

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants