import "istio.io/istio/pilot/pkg/networking/core"
type ConfigGenerator interface { // BuildListeners returns the list of inbound/outbound listeners for the given proxy. This is the LDS output // Internally, the computation will be optimized to ensure that listeners are computed only // once and shared across multiple invocations of this function. BuildListeners(node *model.Proxy, push *model.PushContext) []*listener.Listener // BuildClusters returns the list of clusters for the given proxy. This is the CDS output BuildClusters(node *model.Proxy, push *model.PushContext) []*cluster.Cluster // BuildHTTPRoutes returns the list of HTTP routes for the given proxy. This is the RDS output BuildHTTPRoutes(node *model.Proxy, push *model.PushContext, routeNames []string) []*route.RouteConfiguration // BuildNameTable returns list of hostnames and the associated IPs BuildNameTable(node *model.Proxy, push *model.PushContext) *nds.NameTable // BuildExtensionConfiguration returns the list of extension configuration for the given proxy and list of names. This is the ECDS output. BuildExtensionConfiguration(node *model.Proxy, push *model.PushContext, extensionConfigNames []string) []*core.TypedExtensionConfig // ConfigChanged is invoked when mesh config is changed, giving a chance to rebuild any cached config. MeshConfigChanged(mesh *meshconfig.MeshConfig) }
ConfigGenerator represents the interfaces to be implemented by code that generates xDS responses
func NewConfigGenerator(plugins []string, cache model.XdsCache) ConfigGenerator
NewConfigGenerator creates a new instance of the dataplane configuration generator
Path | Synopsis |
---|---|
v1alpha3 | |
v1alpha3/envoyfilter | |
v1alpha3/loadbalancer | packages used for load balancer setting |
v1alpha3/route | |
v1alpha3/route/retry |
Package core imports 9 packages (graph) and is imported by 2 packages. Updated 2021-01-23. Refresh now. Tools for package owners.