You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Run the existing e2e suite (test/e2e/) against the prod-fidelity two-cluster environment stood up in #226, instead of the single-stack bridge harness on main.
Today the suite runs via the Makefile bridge path (make kind-standard-cluster + make kind-infra-cluster + make prepare-infra-cluster + make test-e2e) — the stopgap landed in #268 to unblock CI. #226 introduces the canonical env (task test-infra:up: two clusters, EG v1.7.4, the ext-server, the real Coraza data plane, optional Karmada host). This issue tracks lifting the suite onto that env so the arc (#247) has a real place to prove edge behavior, en route to #248 wiring it into CI.
Why it's small
The suite binds to a data-plane contract that #226's env already satisfies with identical names:
Cluster names. Tests use the chainsaw aliases nso-standard / nso-infra; Stand up a test environment that mirrors how the edge really runs #226's kind clusters are nso-upstream / nso-downstream. Aliases are set at invocation (--cluster alias=kubeconfig), not baked into the tests — pure plumbing.
Add a test-infra:test-e2e task: after test-infra:up, run chainsaw test ./test/e2e --cluster nso-standard=<nso-upstream kubeconfig> --cluster nso-infra=<nso-downstream kubeconfig>.
No test rewrites expected — the contract matches. Est. plumbing ~1–2h.
The real risk is runtime, not code
Wiring the suite up is not the same as getting it green. The bridge's own repro (#268) was waf-gw stuck at Programmed=Unknown — the data plane never installed. #226 claims to fix exactly that (EG v1.7.4 pin, maxMessageSize: 256Mi, failOpen: false, includeAll: true). Whether it actually programs under this suite is the open question, and only a live task test-infra:up + run answers it. That verification is the point of this work.
Goal
Run the existing e2e suite (
test/e2e/) against the prod-fidelity two-cluster environment stood up in #226, instead of the single-stack bridge harness onmain.Today the suite runs via the Makefile bridge path (
make kind-standard-cluster+make kind-infra-cluster+make prepare-infra-cluster+make test-e2e) — the stopgap landed in #268 to unblock CI. #226 introduces the canonical env (task test-infra:up: two clusters, EG v1.7.4, the ext-server, the real Coraza data plane, optional Karmada host). This issue tracks lifting the suite onto that env so the arc (#247) has a real place to prove edge behavior, en route to #248 wiring it into CI.Why it's small
The suite binds to a data-plane contract that #226's env already satisfies with identical names:
main)datum-downstream-gatewaydatum-downstream-gatewaydatum-downstream-gatewaydatum-downstream-gatewaygateway.envoyproxy.io/datum-downstream-gatewaydatum-downstream-gatewaydatum-downstream-gatewaymeta.datumapis.com/upstream-cluster-nameOnly real divergences:
nso-standard/nso-infra; Stand up a test environment that mirrors how the edge really runs #226's kind clusters arenso-upstream/nso-downstream. Aliases are set at invocation (--cluster alias=kubeconfig), not baked into the tests — pure plumbing.network-services-operator-systemin Stand up a test environment that mirrors how the edge really runs #226 vsdatum-downstream-gatewayin the bridge. Invisible to the tests — they only reach the ext-server through EG's extensionManager wiring, which Stand up a test environment that mirrors how the edge really runs #226 already stands up.Scope
test-infra:test-e2etask: aftertest-infra:up, runchainsaw test ./test/e2e --cluster nso-standard=<nso-upstream kubeconfig> --cluster nso-infra=<nso-downstream kubeconfig>.maintest/e2e/suite onto the Stand up a test environment that mirrors how the edge really runs #226 branch (it's 70+ commits behind and carries the older tests; the suite was hardened recently in1722a30/69d07c5).prepare-upstream+link-clustersreplication path.No test rewrites expected — the contract matches. Est. plumbing ~1–2h.
The real risk is runtime, not code
Wiring the suite up is not the same as getting it green. The bridge's own repro (#268) was
waf-gwstuck atProgrammed=Unknown— the data plane never installed. #226 claims to fix exactly that (EG v1.7.4 pin,maxMessageSize: 256Mi,failOpen: false,includeAll: true). Whether it actually programs under this suite is the open question, and only a livetask test-infra:up+ run answers it. That verification is the point of this work.Acceptance
test-infra:test-e2etask runs the fulltest/e2e/suite against the Stand up a test environment that mirrors how the edge really runs #226 two-cluster env.waf-gwreachesProgrammed=True(notUnknown) in the env.Related