Skip to content

Msec-1.1 : updated test for Juniper devices - #5627

Open
sudhirakondi wants to merge 19 commits into
openconfig:mainfrom
sudhirakondi:sudhir-macsec1.1
Open

Msec-1.1 : updated test for Juniper devices#5627
sudhirakondi wants to merge 19 commits into
openconfig:mainfrom
sudhirakondi:sudhir-macsec1.1

Conversation

@sudhirakondi

Copy link
Copy Markdown
Contributor

This Pull is dependent on Merge of Functional Translator code in openconfig/functional-translators#18. This adds support for translation of Native Juniper Paths to OC for macsec.

@sudhirakondi
sudhirakondi requested a review from a team as a code owner June 26, 2026 09:16
@OpenConfigBot

OpenConfigBot commented Jun 26, 2026

Copy link
Copy Markdown

@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 extends the existing MACsec test suite to support Juniper devices. It introduces necessary configuration push logic and adapts state retrieval methods to accommodate Juniper's specific gNMI requirements, ensuring parity with existing Arista support.

Highlights

  • Juniper Support: Added support for MACsec configuration and state retrieval on Juniper devices.
  • Test Infrastructure: Updated test infrastructure to include Juniper-specific functional translators and configuration logic.
  • gNMI Subscription: Implemented a gNMI Subscribe ONCE mechanism for Juniper devices to fetch state data, as they do not support standard gNMI Get for this purpose.
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 introduces support for Juniper devices in MACsec testing, including Juniper-specific CLI configuration, gNMI Subscribe ONCE state retrieval, and helper updates. The review feedback correctly points out that the updated IP addresses (192.168.0.1/30 and 192.168.0.2/30) violate the repository's network assignment guidelines by using a forbidden private range, and suggests using RFC 5737 blocks instead.

Comment thread feature/macsec/otg_tests/macsec/macsec_test.go Outdated
@sudhirakondi

Copy link
Copy Markdown
Contributor Author

/gemini review

@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 adds support for Juniper devices in the MACsec OTG tests, including Juniper-specific CLI configuration, gNMI Subscribe ONCE handling for state data, and updated deviations in metadata.textproto. It also updates test IP addresses to RFC 5737 compliant blocks. Feedback highlights a mismatch where a hardcoded ping destination of '10.0.0.2' remains in the test, and recommends using a cancellable context for the gNMI Subscribe client to prevent resource leaks.

Comment thread feature/macsec/otg_tests/macsec/macsec_test.go
Comment thread feature/macsec/otg_tests/macsec/macsec_test.go
@sudhirakondi

Copy link
Copy Markdown
Contributor Author

/gemini review

@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 adds support for Juniper devices in the MACsec OTG tests by implementing Juniper-specific configuration and state retrieval via gNMI Subscribe ONCE. It also updates IP addresses to RFC 5737 compliant blocks and introduces a helper to resolve the correct functional translator name per vendor. The feedback points out a bug where ip2 is passed directly to sendGnoiPing with its CIDR mask suffix, which will cause the ping to fail, and suggests stripping the mask first.

Comment thread feature/macsec/otg_tests/macsec/macsec_test.go Outdated
sudhirakondi and others added 3 commits June 30, 2026 18:32
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
@ksgireesha

Copy link
Copy Markdown

@sudhirakondi - Could you please look into the failing Go / Static Analysis check, merge the latest changes from main to clear the "out-of-date" error, and formally mark the addressed comment threads as resolved in the UI?

@rohit-rp - Friendly ping! Could you please take a look and provide your final code owner approval once the author fixes the failing check and updates the branch?

@sudhirakondi

Copy link
Copy Markdown
Contributor Author

@ksgireesha
The static analysis failure on this Pull Request is because it is dependent on openconfig/functional-translators#18 which isn't merged yet. Working with @ashishpawar-google to merge code needed for Juniper macsec paths.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants