Documentation ¶
Index ¶
Constants ¶
View Source
const ( // EndpointType is the TypeURL for Endpoint discovery responses. EndpointType = apiTypePrefix + "envoy.config.endpoint.v3.ClusterLoadAssignment" // ClusterType is the TypeURL for Cluster discovery responses. ClusterType = apiTypePrefix + "envoy.config.cluster.v3.Cluster" // RouteType is the TypeURL for Route discovery responses. RouteType = apiTypePrefix + "envoy.config.route.v3.RouteConfiguration" // ListenerType is the TypeURL for Listener discovery responses. ListenerType = apiTypePrefix + "envoy.config.listener.v3.Listener" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type IndexedResources ¶
type IndexedResources struct { // Index is a map of typeURL => resourceName => resource Index map[string]map[string]proto.Message // ChildIndex is a map of typeURL => parentResourceName => list of // childResourceNames. This only applies if the child and parent do not // share a name. ChildIndex map[string]map[string][]string }
func EmptyIndexedResources ¶
func EmptyIndexedResources() *IndexedResources
type PluginConfiguration ¶
type PluginConfiguration struct { // ServiceConfigs is a mapping from service names to the data Envoy plugins // need to override the default Envoy configurations. ServiceConfigs map[api.CompoundServiceName]ServiceConfig // SNIToServiceName is a mapping from SNIs to service names. This allows // Envoy plugins to easily convert from an SNI Envoy resource name to the // associated service's CompoundServiceName SNIToServiceName map[string]api.CompoundServiceName // EnvoyIDToServiceName is a mapping from EnvoyIDs to service names. This allows // Envoy plugins to easily convert from an EnvoyID Envoy resource name to the // associated service's CompoundServiceName EnvoyIDToServiceName map[string]api.CompoundServiceName // Kind is mode the local Envoy proxy is running in. For now, only // terminating gateways are supported. Kind api.ServiceKind }
PluginConfiguration is passed into Envoy plugins. It should depend on the API client rather than the structs package because the API client is meant to be public.
func MakePluginConfiguration ¶
func MakePluginConfiguration(cfgSnap *proxycfg.ConfigSnapshot) PluginConfiguration
MakePluginConfiguration generates the configuration that will be sent to Envoy plugins.
type ServiceConfig ¶
type ServiceConfig struct { // Kind identifies the final proxy kind that will make the request to the // destination service. Kind api.ServiceKind Meta map[string]string }
Click to show internal directories.
Click to hide internal directories.