[docs/testplan][bgp]: Add test plan for PrefixListMgr refactor and SUPPRESS_PREFIX#24575
Open
nanali-msft wants to merge 2 commits into
Open
[docs/testplan][bgp]: Add test plan for PrefixListMgr refactor and SUPPRESS_PREFIX#24575nanali-msft wants to merge 2 commits into
nanali-msft wants to merge 2 commits into
Conversation
…PPRESS_PREFIX Signed-off-by: Na Li <nanali19871126@gmail.com>
Collaborator
|
/azp run |
|
Azure Pipelines could not run because the pipeline triggers exclude this branch/path. |
Signed-off-by: Na Li <nanali19871126@gmail.com>
Collaborator
|
/azp run |
|
Azure Pipelines could not run because the pipeline triggers exclude this branch/path. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of PR
Summary:
Add a new test plan document
docs/testplan/PrefixListMgr-Refactor-Test-Plan.mdthat defines regression and feature coverage for sonic-net/sonic-buildimage#26937
("[PrefixListMgr]: Refactor PrefixListMgr to support multiple prefix types via
config registry").
The plan covers:
re-run of existing
tests/bgp/test_prefix_list.py, rejection on non-spine,persistence across
config reloadanddocker restart bgp, and validationthat
PrefixListMgris now registered on every device).status for IPv4 + IPv6, FRR
show <ip|ipv6> prefix-listrendering,any-device acceptance,
constants.ymlname override path, registry-defaultfallback, and persistence.
CONFIG_DB write, malformed prefixes,
statusallowed on every device, andunchanged chassis-supervisor skip behavior.
Each test case includes topology, step-by-step procedure, expected results,
pass criteria, and Python skeletons (helpers, fixtures, loganalyzer hookup,
constants.yml override patcher) that map 1:1 to a follow-up
tests/bgp/test_prefix_list_suppress.pyimplementation. Pytest invocationcommands for physical (t0/t1/t2) and VS testbeds are included.
Fixes # (n/a — doc-only follow-up for sonic-net/sonic-buildimage#26937)
Type of change
Back port request
Approach
What is the motivation for this PR?
sonic-net/sonic-buildimage#26937 refactors
PrefixListMgrto be data-drivenvia a per-prefix-type registry and introduces a new generic
SUPPRESS_PREFIXtype. The PR also changes
bgpcfgdto registerPrefixListMgrunconditionally and relaxes
prefix_list statusto be allowed on everydevice. We need an explicit test plan to (1) prove no regression for the
existing ANCHOR_PREFIX flow on UpstreamLC / UpperSpineRouter and (2) verify
the new SUPPRESS_PREFIX feature,
constants.ymloverride path, and per-typedevice gating on physical testbeds.
How did you do it?
Authored
docs/testplan/PrefixListMgr-Refactor-Test-Plan.mdwith:SUPPRESS_PREFIX (TC-S1..S6), and negative/validation (TC-N1..N5).
(
op_prefix_with_cmd,verify_prefix_list_in_db,verify_frr_prefix_list_entry,get_suppress_pl_names), a function-scopedcleanup fixture, and a
LogAnalyzerfixture so intentionallog_warnlines for negative cases are expected and any new errors are caught.
How did you verify/test it?
Doc-only change; verified internal links and the existing baseline test
(
tests/bgp/test_prefix_list.py) referenced by the plan exist in the repo.The implementation (
tests/bgp/test_prefix_list_suppress.py) will besubmitted in a follow-up PR and validated on physical t0/t1/t2 testbeds per
the plan.
Any platform specific information?
None. ANCHOR_PREFIX cases require a chassis with an UpstreamLC line card
(t2). SUPPRESS_PREFIX and negative cases run on any topology (t0/t1/t2/vs).
Supported testbed topology if it's a new test case?
t2(UpstreamLC / UpperSpineRouter).t0,t1,t2.vms-kvm-t0): smoke-test for CLI plumbing andbgpcfgdstartup only.Documentation
docs/testplan/PrefixListMgr-Refactor-Test-Plan.md