match_delegate: Add runtime control#28937
Conversation
Signed-off-by: tyxia <tyxia@google.com>
Signed-off-by: tyxia <tyxia@google.com>
Signed-off-by: tyxia <tyxia@google.com>
Signed-off-by: tyxia <tyxia@google.com>
Signed-off-by: tyxia <tyxia@google.com>
|
/retest |
|
/assign @htuch @rshriram @yanavlasov |
| if (!has_match_tree_) { | ||
| // If no match tree is set or it is disabled by runtime guard, interpret as a skip. | ||
| if (!has_match_tree_ || | ||
| !Runtime::runtimeFeatureEnabled("envoy.reloadable_features.enable_extension_with_matcher")) { |
There was a problem hiding this comment.
These feature flags aren't designed as permanent config knobs, and I feel this capability should exist generally. Also, you might want to do the runtime override on a per match filter basis.
I'd suggest having an API in which we add runtime_key (search for other users in Envoy API) to allow the runtime key to be specific. That way you can have individual filter control.
As discussed the other day, adding a disabling filter might be more general, since this is a useful feature in general for filters, the idea that we might want to with runtime turn on/off a specific filter in the filter chain. Such filters could be wrapper with a RuntimeDisabledFilter filter. This is more an optional nicety, I'm good with just adding runtime_key to the config.
CC @envoyproxy/api-shepherds
There was a problem hiding this comment.
Re: @htuch , I thought we just need a temporary runtime flag. I agree that runtime key will be a permanent knob and enables per-filter granularity and other flexibilities. Will update.
Re @adisuissa: We need runtime control here. That disabled knob still needs the config updates, IIUC.
There was a problem hiding this comment.
Yes, it does require a config update.
If you need a RuntimeFeatureFlag field, consider adding it next to the disabled field.
|
/wait |
|
Just FYI, we decided that this runtime control is not immediately needed for us at this moment. But it is still good to have it. I will revisit this PR later |
|
This pull request has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in 7 days if no further activity occurs. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions! |
|
This pull request has been automatically closed because it has not had activity in the last 37 days. Please feel free to give a status update now, ping for review, or re-open when it's ready. Thank you for your contributions! |
Add runtime flag for match_delegate. When flag is set to false, this filter becomes a passthrough filter, the things wrapped under it(i.e. delegate filter) will be skipped as well