Repository navigation
fix(bdd): route multi-cluster HTTP callbacks through the service alias - #2259
Conversation
Set the compute-reachable invocation URL in the multi-cluster Helmfile fixture so workers can return responses across clusters. Add a parsed fixture regression, permit the required override in the defaults test, and verify it survives environment preparation. Fixes NVIDIA#2245 Signed-off-by: Stephanie Baum <sbaum@nvidia.com>
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. 🧰 Additional context used📚 Code guidelines (1)No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (3)
Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 11 remain after this review. 📝 WalkthroughWalkthroughThe multi-cluster BDD fixture now sets ChangesMulti-cluster callback configuration
Priority: ➖ Normal Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix · Severity of issue fixed: Medium Merge Risk: 🔵 Low · up to The multi-cluster callback can fail if an invocation-service rollout overlaps a pending request. This is a bounded rollout-time risk in the BDD fixture; the reported normal test path does not perform such an upgrade. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 20.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 5 functions across 2 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
This PR is included in version 1.29.4. The release is available on GitHub release. |
|
This PR is included in version 1.69.1. The release is available on GitHub release. |
|
This PR is included in version 1.25.1. The release is available on GitHub release. |
|
This PR is included in version 1.14.2. The release is available on GitHub release. |
|
This PR is included in version 1.10.1. The release is available on GitHub release. |
|
This PR is included in version 0.5.1. The release is available on GitHub release. |
|
This PR is included in version 0.9.1. The release is available on GitHub release. |
TL;DR
Fix HTTP 504 responses in the multi-cluster Helmfile BDD by setting
global.workerEndpoints.invocationServiceURLto the existing compute-reachable service alias. Workers can return responses to the control-plane invocation service after processing a request.Additional Details
The fixture omitted the HTTP callback override while configuring gRPC and LLM callbacks. The stack therefore advertised a pod-specific address that the compute cluster could not resolve.
Set the supported override to
http://invocation.nvcf.svc.cluster.local:8080. Document that shared callback routing requires one invocation-service replica because pending requests are held in that replica's memory.Add a regression test that parses the real fixture, correct the defaults test that incorrectly prohibited this override for multi-cluster runs, and assert that Helmfile environment preparation retains it. The single-cluster fixture continues to use its stack default.
For the Reviewer
The change is limited to the multi-cluster BDD fixture and its tests. It uses existing alias Services and stack wiring; no runtime API, deployment topology, or dependency changes are required.
Customer release notes: Local multi-cluster Helmfile BDD HTTP invocations can return responses successfully.
For QA
go test -run '^TestMultiClusterHelmfile$' -timeout 90m -vfromtests/bddon fresh local control-plane and compute clusters, starting froma7a5b08372df53cfc6bc47598275a2095106d94aplus this fix.golangci-lint run --config .golangci.yml ./..., andgit diff --checkpassed.go test -short ./...has one existing failing case:TestRemoteGatewayExamplesConfigureAWSNLBOnEnvoyService/gateway_routing_guidestill reads the moveddocs/user/gateway-routing.md. All other non-skipped cases passed. The unchanged gateway test also reproduces the failure when run alone.QA needed: No additional manual QA for this fixture change; the full requested live suite passed.
Issues
Closes #2245
Discovered during validation of #2232.
Dependencies
None. No dependency or license changes; NOTICE is unchanged.
Checklist
Summary by CodeRabbit