contour
contour copied to clipboard
Gateway API: Fix for Listener/Route hostname isolation
Requests should be "isolated" to the most specific Listener and it's attached routes. This means our existing logic on finding intersecting route and Listener hostnames needs an update to factor in the other Listeners on a Gateway that the route in question may not actually be attached to.
Fix for conformance test: https://github.com/kubernetes-sigs/gateway-api/pull/2669
https://github.com/kubernetes-sigs/gateway-api/pull/2465 for spec
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 81.62%. Comparing base (
7530c06) to head (7573ae4).
Additional details and impacted files
@@ Coverage Diff @@
## main #6162 +/- ##
==========================================
+ Coverage 81.60% 81.62% +0.01%
==========================================
Files 133 133
Lines 15842 15857 +15
==========================================
+ Hits 12928 12943 +15
Misses 2620 2620
Partials 294 294
| Files | Coverage Δ | |
|---|---|---|
| internal/dag/gatewayapi_processor.go | 93.28% <100.00%> (+0.07%) |
:arrow_up: |
Just a rough implementation whipped up, might need some improvements but for now we have something that works with the existing structure
The Contour project currently lacks enough contributors to adequately respond to all PRs.
This bot triages PRs according to the following rules:
- After 14d of inactivity, lifecycle/stale is applied
- After 30d of inactivity since lifecycle/stale was applied, the PR is closed
You can:
- Ensure your PR is passing all CI checks. PRs that are fully green are more likely to be reviewed. If you are having trouble with CI checks, reach out to the #contour channel in the Kubernetes Slack workspace.
- Mark this PR as fresh by commenting or pushing a commit
- Close this PR
- Offer to help out with triage
Please send feedback to the #contour channel in the Kubernetes Slack
The Contour project currently lacks enough contributors to adequately respond to all PRs.
This bot triages PRs according to the following rules:
- After 14d of inactivity, lifecycle/stale is applied
- After 30d of inactivity since lifecycle/stale was applied, the PR is closed
You can:
- Ensure your PR is passing all CI checks. PRs that are fully green are more likely to be reviewed. If you are having trouble with CI checks, reach out to the #contour channel in the Kubernetes Slack workspace.
- Mark this PR as fresh by commenting or pushing a commit
- Close this PR
- Offer to help out with triage
Please send feedback to the #contour channel in the Kubernetes Slack
The Contour project currently lacks enough contributors to adequately respond to all PRs.
This bot triages PRs according to the following rules:
- After 14d of inactivity, lifecycle/stale is applied
- After 30d of inactivity since lifecycle/stale was applied, the PR is closed
You can:
- Ensure your PR is passing all CI checks. PRs that are fully green are more likely to be reviewed. If you are having trouble with CI checks, reach out to the #contour channel in the Kubernetes Slack workspace.
- Mark this PR as fresh by commenting or pushing a commit
- Close this PR
- Offer to help out with triage
Please send feedback to the #contour channel in the Kubernetes Slack
The Contour project currently lacks enough contributors to adequately respond to all PRs.
This bot triages PRs according to the following rules:
- After 14d of inactivity, lifecycle/stale is applied
- After 30d of inactivity since lifecycle/stale was applied, the PR is closed
You can:
- Ensure your PR is passing all CI checks. PRs that are fully green are more likely to be reviewed. If you are having trouble with CI checks, reach out to the #contour channel in the Kubernetes Slack workspace.
- Mark this PR as fresh by commenting or pushing a commit
- Close this PR
- Offer to help out with triage
Please send feedback to the #contour channel in the Kubernetes Slack
I think this impl makes sense? Is it passing the latest version of the upstream conformance (https://github.com/kubernetes-sigs/gateway-api/pull/3047)?
I think this impl makes sense? Is it passing the latest version of the upstream conformance (kubernetes-sigs/gateway-api#3047)?
it was before that PR got recreated, I'll rebase etc. on the version bump PR and see if it still does!
I think this impl makes sense? Is it passing the latest version of the upstream conformance (kubernetes-sigs/gateway-api#3047)?
it was before that PR got recreated, I'll rebase etc. on the version bump PR and see if it still does!
passed in https://github.com/projectcontour/contour/actions/runs/8944042687/job/24570214238
Nice, LGTM