gloo icon indicating copy to clipboard operation
gloo copied to clipboard

allow extensions to provide custom Upstreams

Open stevenctl opened this issue 1 year ago • 1 comments

Description

We have an extension point for upstreams and endpoints with DiscoveryPlugin, but the EDS emitting logic is based on HybridUpstreamClient. This adds the ability to provide extension there as well.

Code changes

  • NewHybridUpstreamClient now takes a list of []plugin.Plugin and adds to the clientMap
  • Util function to filter plugins by type using generics
  • Replace existing type-filter for DiscoveryPlugin to use helper

Testing steps

WIP enterprise PoC

Checklist:

  • [ ] I have performed a self-review of my own code
  • [ ] I have commented my code, particularly in hard-to-understand areas
  • [ ] I have made corresponding changes to the documentation
  • [ ] I have added tests that prove my fix is effective or that my feature works

stevenctl avatar Aug 15 '24 16:08 stevenctl