ACL-1.2 Add Strata platform support to acl_update_test#5520
ACL-1.2 Add Strata platform support to acl_update_test#5520deva-arista wants to merge 2 commits into
Conversation
Pull Request Functional Test Report for #5520 / f4f091aVirtual Devices
Hardware Devices
|
Summary of ChangesHello, 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 introduces support for Arista Strata platforms within the ACL update testing framework. By adding a configurable delay factor, the tests can now accommodate the slower ACL update performance characteristic of these specific hardware models, ensuring more reliable test execution across different Arista platforms. Highlights
Using Gemini Code AssistThe 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
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 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
|
There was a problem hiding this comment.
Code Review
This pull request introduces a new deviation, acl_update_delay_factor, to scale the maximum allowed dropped packets during ACL update tests on Arista devices. It updates the metadata proto, adds the deviation accessor, and configures the TCAM profile for DCS-7050. The review feedback highlights a critical issue in NewDUTHardwareInit where mutating the global aristaTcamProfileMap introduces side effects across tests, and suggests returning an empty string directly instead.
| if strings.Contains(dut.Model(), "DCS-7050") { | ||
| aristaTcamProfileMap[FeatureACLCounters] = `` | ||
| } |
There was a problem hiding this comment.
Modifying the package-level global map aristaTcamProfileMap inside NewDUTHardwareInit introduces a side effect that persists across subsequent calls and tests. If a non-DCS-7050 device is initialized after a DCS-7050 device in the same test run, its FeatureACLCounters profile will incorrectly be empty.
Instead of mutating the global map, return an empty string directly when the feature is FeatureACLCounters and the model is DCS-7050.
| if strings.Contains(dut.Model(), "DCS-7050") { | |
| aristaTcamProfileMap[FeatureACLCounters] = `` | |
| } | |
| if feature == FeatureACLCounters && strings.Contains(dut.Model(), "DCS-7050") { | |
| return "" | |
| } |
acl_update_test deviations for vendor "ARISTA" was set for "sand" platform. Strata platform (e.g.
DCS-7050CX4M-48D8-F) is slower in updating ACL and requires new deviation
acl_update_delay_factor.This change adds the hardware_model_regex to differentiate between different ARISTA platforms.
acl_update_delay_factorfor strata (DCS-7050.*)