-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Need a way for RouteAction to indicate that a filter will choose the cluster #8953
Description
Today, the RouteAction proto contains a oneof that provides 3 different ways to select the cluster:
- hard-coded cluster name
- header from which to read the cluster name
- the WeightedClusters mechanism
We would like to write an HTTP filter that can override the cluster chosen for a given route, which basically means that we are not using any of the 3 mechanisms currently supported. My initial thought was that we should add a 4th option to this oneof to indicate that the cluster will be chosen by a filter.
After discussion with @mattklein123 and @htuch, our consensus is that a more general way to do this would be to provide a generic way for a filter to overwrite any part of the RouteAction proto, not just the choice of cluster. This would address not just my immediate use-case but also the more general problem of allowing filters to have more control over routing decisions.
This more general approach could be configured via an Any field, either within the RouteAction proto or as a sibling of the RouteAction proto within the Route proto.