test: add Network and NetworkContext lifecycle e2e#281
Open
ecv wants to merge 1 commit into
Open
Conversation
Add e2e coverage for two NSO-owned reconcile paths that had none, run against the prod-fidelity two-cluster env (upstream alias nso-standard). network-crud guards a bare Network's admission, the network-controller finalizer, and clean deletion. network-context-lifecycle guards the two behaviors most likely to regress silently: the Programmed to Ready transition the networkcontext controller derives, and the Network finalizer's garbage collection of its owned NetworkContext on delete. Readiness is provider-driven and no provider runs in the harness, so the lifecycle test patches Programmed directly to stand in for the plugin, mirroring networkbinding/ready-when-context-is-ready, then asserts the operator-owned consequences. Key changes: - Add test/e2e/network-crud/chainsaw-test.yaml - Add test/e2e/network-context-lifecycle/chainsaw-test.yaml
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.
Rebase of #236 onto current
main. The original branch was 57 commits behind and its green checks predate the prod-fidelity env (#276); this re-runs the same two tests against the currenttask test-infra:test-e2etwo-cluster env.What
test/e2e/network-crud— bareNetworklifecycle: admission, thenetworking.datumapis.com/network-controllerfinalizer, clean deletion.test/e2e/network-context-lifecycle— builds theNetwork→NetworkBinding→NetworkContextchain, drives the contextProgrammed, asserts the controller derivesReady, asserts theNetworkBindingreachesReady, then deletes theNetworkand asserts its finalizer cascade-deletes the ownedNetworkContext.Compatibility with the current env
Both scenarios are control-plane-only and bind to the upstream alias
nso-standardthe env maps at invocation — no data-plane, no retired-bridge assumptions, nothing to provision downstream.Programmedis patched directly to stand in for the absent provider (same pattern asnetworkbinding/ready-when-context-is-ready). TheNetworkBindingreferencestest-locationwithout creating a Location object; that is correct —networkbinding_controller.gocopies the location reference into theNetworkContextand derives its name, it does not look up a Location.Verification
chainsaw lintclean.Supersedes #236.