-
Notifications
You must be signed in to change notification settings - Fork 160
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gNOI-3.3: add new subtests for configuration convergence #2830
Conversation
Pull Request Functional Test Report for #2830 / 641da8eVirtual Devices
Hardware Devices
|
Pull Request Test Coverage Report for Build 8820903594Details
💛 - Coveralls |
Can you please add
Thanks, |
Thanks for the updates @kjahed I'm wondering if these subtests belong to gNOI-3.3? Specifically for the second case, configuration convergence, there's a separate test gNMI-1.19 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The implementation should probably be moved here instead:
featureprofiles/feature/platform/controllercard/tests/SetRequest_controll_card_switchover/README.md
Line 1 in 64388db
# gNMI-1.19 ConfigPush after Control Card switchover |
* Basic Switchover | ||
* Issue gnoi.SwitchControlProcessor to the chassis with dual supervisor, | ||
specifying the path to choose the standby RE/SUP. | ||
* Ensure the SwitchControlProcessorResponse has the new active supervisor as | ||
the one specified in the request. | ||
* Validate the standby RE/SUP becomes the active after switchover | ||
* Validate that all connected ports are re-enabled. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* Basic Switchover | |
* Issue gnoi.SwitchControlProcessor to the chassis with dual supervisor, | |
specifying the path to choose the standby RE/SUP. | |
* Ensure the SwitchControlProcessorResponse has the new active supervisor as | |
the one specified in the request. | |
* Validate the standby RE/SUP becomes the active after switchover | |
* Validate that all connected ports are re-enabled. | |
* gNOI-3.3.1 Basic Switchover | |
* Issue gnoi.SwitchControlProcessor to the chassis with dual `CONTROLLER_CARD`, | |
specifying the path to choose the standby RE/SUP. | |
* Ensure the SwitchControlProcessorResponse has the new active `CONTROLLER_CARD` as | |
the one specified in the request. | |
* Validate the standby `CONTROLLER_CARD` becomes the active after switchover | |
* Validate that all connected ports are re-enabled. |
* Configuration consistent after switchover | ||
* Get the configuration before switchover. | ||
* Perform and validate switchover using the process outlined above. | ||
* Get configuration after switchover and validate that it matches the pre-switchover configuration. | ||
|
||
* Configuration convergence after switchover | ||
* Perform and validate switchover using the process outlined above. | ||
* Push a large configuration | ||
* Get the configuration and validate that it is accepted whithin 60 seconds. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think these steps should be moved to gNMI-1.19?
I think this portion of the test is duplicate with gnmi-1.19? The implementation should probably be moved here instead:
featureprofiles/feature/platform/controllercard/tests/SetRequest_controll_card_switchover/README.md
Line 1 in 64388db
# gNMI-1.19 ConfigPush after Control Card switchover |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ack. Will close this and open a new PR for gNMI-1.19.
Add the following subtests:
1- TestConfigurationUnchanged checks that the configuration is unchanged after switchover
2- TestConfigurationConvergence checks that a large configuration is accepted within 60 seconds after switchover
Also adds a Reporter to collect diff entries from cmp.Diff. This allows the test to examine the each diff to decide whether, for e.g., the configuration match. In this enhanced switchover test, this is used to ignore leaves that are not explicitly configured (i.e., fields with nil value) when comparing against the configuration returned from the device.