-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ecds: add support for network filters #14696
Comments
QQ: from a quick glance, https://github.com/envoyproxy/envoy/blob/master/source/common/filter/http/filter_config_discovery_impl.h would work just fine for network filters. However, it would need to be templatized by factory and factory callback classes. This would make it a header-only source file. Is that a reasonable approach style-wise? |
@kyessenov if you can minimize what gets dragged into the template I think it would be good; we prefer not having massive header-only templates. E.g.. put a bunch of the shared logic in a shared base class. |
I plan to redo and finish #14717 with these steps:
|
Refactoring in preparation for #14696 (see #14696 (comment)) Risk Level: Low Testing: Existing #14696 Signed-off-by: Taylor Barrella <[email protected]>
Additional Description: Part of #14696 (comment). The goal is to templatize DynamicFilterConfigProviderImpl while having DynamicFilterConfigProviderImplBase, FilterConfigProviderManagerImplBase, and FilterConfigSubscription agnostic to HTTP vs. network filters. This is a step in that direction, following the approach of #14717. Because extra validation was added since that PR, the filter factory object must be created before onConfigUpdate in addition to during Risk Level: Low Testing: Existing (refactoring) Docs Changes: N/A Release Notes: N/A Platform Specific Features: N/A #14696 Signed-off-by: Taylor Barrella <[email protected]>
Part of #14696 (comment). The refactoring that enables this is mainly within `FilterConfigSubscription::onConfigUpdate`. The rest is adding and removing template parameters. Risk Level: Low Testing: Existing (refactoring) Docs Changes: N/A Release Notes: N/A Platform Specific Features: N/A #14696 Signed-off-by: Taylor Barrella <[email protected]>
I stopped work on this for now so @kyessenov or someone else can continue. Templatizing ECDS code so it can be used for more than just HTTP filters is done, but I did not start any work on network filters. |
@kyessenov do you plan to bring back #14717? |
I plan to try and continue this work for adding network filters support with ECDS. Reading the comments here it seems as @tbarrella did most of the refactoring and templatization for allowing this. Later on, @yanjunxiang-google did some more refactoring for listener filters ECDS support in #20049. Breakdown of steps:
|
Continuing the templatization work that has been done in order to support network filters for ECDS, as a similar feature to listener and HTTP filters. Linked issue: #14696. This PR adds dynamic config providers for network filters without listener consuming. Risk Level: low Testing: Unit tests Signed-off-by: ohadvano <[email protected]>
Support of upstream network filter with ECDS. Resolves #14696. Risk Level: low Testing: Integration tests Docs Changes: ECDS docs Signed-off-by: ohadvano <[email protected]>
Implement ECDS for network filters in listeners. API added here
The text was updated successfully, but these errors were encountered: