-
Notifications
You must be signed in to change notification settings - Fork 708
Closed
Labels
help wantedExtra attention is neededExtra attention is neededkind/bugSomething isn't workingSomething isn't working
Milestone
Description
Description:
Hi,
I’m trying to attach a custom extension to a GRPCRoute using ExtensionRef. Specifically, I have a custom CRD called RouteMetadata that I want to attach via the ExtensionRef filter. like this
apiVersion: gateway.networking.k8s.io/v1
kind: GRPCRoute
metadata:
name: 6test
namespace: default
spec:
rules:
- backendRefs:
- group: gateway.envoyproxy.io
kind: Backend
name: test
filters:
- extensionRef:
group: dp.wso2.com
kind: RoutePolicy
name: 6a254687f3229c35dd0189aac7f7fc4b6228e97a2d319a3fa5
type: ExtensionRef
- extensionRef:
group: dp.wso2.com
kind: RouteMetadata
name: 6a254687f3229c35dd0189aac7f7fc4b6228e97a2d319a3fa5
type: ExtensionRef
matches:
- method:
method: GetStudent
This works fine when attaching to an HTTPRoute (I registered it under extensionManager.resources), but when I try with GRPCRoutes I get the following error:
message: 'Invalid filter ExtensionRef: unknown kind dp.wso2.com/RouteMetadata'
Looking at the code, I noticed that in one place ValidateGRPCRouteFilter is called without the external kinds list:
👉
https://github.com/envoyproxy/gateway/blob/main/internal/gatewayapi/filters.go#L139
But in another place it’s called with the external kinds list:
👉
| if err := gatewayapi.ValidateGRPCRouteFilter(&filter, extGKs...); err != nil { |
Looks like a bug.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
help wantedExtra attention is neededExtra attention is neededkind/bugSomething isn't workingSomething isn't working