Replies: 1 comment 9 replies
-
This broadens to whether or not inbound request matches can cascade from a more to less specific Listener (where, at present, Hostname is the only match criteria that supports wildcards). Existing language in the spec has:
but does not have explicit language about attempting to continue match finding on less specific Listeners once all attached routes on a more specific Listener have been exhausted. If we do not allow cascades, and users wish to match both No cascade likely has consequences for Gateway collapsing. If you start with GatewayA, which only has a Kong's implementation cannot easily handle a no-cascade rule. It builds a list matches from the complete set of all routes across all hostnames, sorts them according to specificity, and walks down the list until it finds a match. A route for We could probably work around this by creating a That workaround may not work well if the instance also ingests Ingress resources, though handling both those and Gateway API resources is probably ill-advised "here be dragons" territory where compliance with either spec goes a bit awry anyway. |
Beta Was this translation helpful? Give feedback.
-
Lets take this example where two HTTPRoutes are attached to the same gateway
foo-route
servesfoo.example.com
and matches on/foo
baz-route
serves*.example.com
and matches on/baz
What happens when the request has
Host: foo.example.com
&&Path: /baz
foo-route
/foo.example.com
hostname but cannot find a path matchOR
baz-route
/*.example.com
and finds a match for the/baz
pathHere's the relevant part from the HTTPRoute
https://gateway-api.sigs.k8s.io/references/spec/#gateway.networking.k8s.io%2fv1beta1.HTTPRoute
Beta Was this translation helpful? Give feedback.
All reactions