thrift: adding xDS RDS support for thrift proxy.#19982
thrift: adding xDS RDS support for thrift proxy.#19982htuch merged 49 commits intoenvoyproxy:mainfrom tkovacs-2:add_thrift_rds
Conversation
The implementation is mostly copy form source/common/router/ minus the unnecessary parts. Unfortunatly no common base classes to share code. Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Conflicts: source/common/config/type_to_endpoint.cc Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Conflicts: api/envoy/extensions/filters/network/thrift_proxy/v4alpha/BUILD api/envoy/extensions/filters/network/thrift_proxy/v4alpha/route.proto api/envoy/extensions/filters/network/thrift_proxy/v4alpha/thrift_proxy.proto generated_api_shadow/envoy/annotations/resource.proto generated_api_shadow/envoy/extensions/filters/network/thrift_proxy/v3/route.proto generated_api_shadow/envoy/extensions/filters/network/thrift_proxy/v3/thrift_proxy.proto generated_api_shadow/envoy/extensions/filters/network/thrift_proxy/v4alpha/BUILD generated_api_shadow/envoy/extensions/filters/network/thrift_proxy/v4alpha/route.proto generated_api_shadow/envoy/extensions/filters/network/thrift_proxy/v4alpha/thrift_proxy.proto source/extensions/filters/network/thrift_proxy/config.cc test/extensions/filters/network/thrift_proxy/router_ratelimit_test.cc Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Adding template base classes for rds handling Use base classes instead previsous copy-pasted solution in thrift. Rework existing rds implementation for http to use the new base classes. Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Even if the config was invalid it was stored. This confused delta updates. Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Remove reference to Rds::ConfigFactory form Rds::RdsRouteConfigProviderImpl and RdsRouteConfigProviderImpl. Move init_manager.add() call into Rds::RouteConfigProviderManagerImpl::insertDynamicProvider, in this way no need to take care of it in each provider manager. Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
There is unit test to check if the proper TRDS endpoints are referred towards server, also for thrift config with rds on filter level. |
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
|
/retest |
|
Retrying Azure Pipelines: |
|
/retest |
|
Retrying Azure Pipelines: |
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
htuch
left a comment
There was a problem hiding this comment.
Some tiny API nits. I think we should have a full integration test, since while individual parts and their integration may be tested, it would be helpful to see this demoed e2e in case we miss anything and to prevent any regression. Otherwise LGTM and ready to merge.
|
/wait |
Ok, I have just noticed there are integration tests for thrift I try to add one for trds. |
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com> Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
|
Great PR. Thanks for the rds templating. Then, we can try to add dubbo rds to Envoy just by adding little codes. |
Adding xDS routing discovery support for thrift proxy. The routing discovery is supported only through ADS. No separate service endpoints added for thrift routing config type url. This PR is split from envoyproxy#17631 Risk Level: Low Testing: - Unittest - Manual test with static routing from bootstrap config, static routing and dynamic routing from GRPC based xDS server. Docs Changes: Comment added to the new API field. Signed-off-by: Tamas Kovacs <tamas.2.kovacs@nokia-sbell.com>
Commit Message:
Adding xDS routing discovery support for thrift proxy.
Additional Description:
for thrift routing config type url.
This PR is split from #17631
Risk Level:
Low
Testing:
Docs Changes:
Comment added to the new API field.
Release Notes:
Platform Specific Features: