Documentation ¶
Index ¶
- type ClusterGeneratorPlugin
- type FilterStage
- type HttpFilterPlugin
- type InitParams
- type ListenerFilterChainPlugin
- type ListenerFilterPlugin
- type ListenerPlugin
- type Params
- type Plugin
- type RouteActionPlugin
- type RouteParams
- type RoutePlugin
- type StagedHttpFilter
- type StagedListenerFilter
- type UpstreamPlugin
- type VirtualHostParams
- type VirtualHostPlugin
- type WeightedDestinationPlugin
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClusterGeneratorPlugin ¶
type ClusterGeneratorPlugin interface { Plugin GeneratedClusters(params Params) ([]*envoyapi.Cluster, error) }
Generation plugins
type FilterStage ¶
type FilterStage int
const ( FaultFilter FilterStage = iota PreInAuth InAuth PostInAuth PreOutAuth OutAuth )
type HttpFilterPlugin ¶
type HttpFilterPlugin interface { Plugin HttpFilters(params Params, listener *v1.HttpListener) ([]StagedHttpFilter, error) }
type InitParams ¶
type ListenerFilterChainPlugin ¶ added in v0.18.0
type ListenerFilterChainPlugin interface { Plugin ProcessListenerFilterChain(params Params, in *v1.Listener) ([]envoylistener.FilterChain, error) }
Currently only supported for TCP listeners, plan to change this in the future
type ListenerFilterPlugin ¶
type ListenerPlugin ¶
type Plugin ¶
type Plugin interface {
Init(params InitParams) error
}
type RouteActionPlugin ¶
type RouteActionPlugin interface { Plugin ProcessRouteAction(params RouteParams, inAction *v1.RouteAction, out *envoyroute.RouteAction) error }
note: any route action plugin can be implemented as a route plugin suggestion: if your plugin requires configuration from a RoutePlugin field, implement the RoutePlugin interface
type RouteParams ¶ added in v0.14.0
type RouteParams struct { VirtualHostParams VirtualHost *v1.VirtualHost }
type RoutePlugin ¶
type RoutePlugin interface { Plugin ProcessRoute(params RouteParams, in *v1.Route, out *envoyroute.Route) error }
type StagedHttpFilter ¶
type StagedHttpFilter struct { HttpFilter *envoyhttp.HttpFilter Stage FilterStage }
func NewStagedFilter ¶ added in v0.11.1
func NewStagedFilter(name string, stage FilterStage) StagedHttpFilter
func NewStagedFilterWithConfig ¶ added in v0.11.1
func NewStagedFilterWithConfig(name string, config proto.Message, stage FilterStage) (StagedHttpFilter, error)
type StagedListenerFilter ¶
type StagedListenerFilter struct { ListenerFilter envoylistener.Filter Stage FilterStage }
type UpstreamPlugin ¶
type VirtualHostParams ¶ added in v0.15.0
type VirtualHostPlugin ¶
type VirtualHostPlugin interface { Plugin ProcessVirtualHost(params VirtualHostParams, in *v1.VirtualHost, out *envoyroute.VirtualHost) error }
type WeightedDestinationPlugin ¶ added in v0.18.7
type WeightedDestinationPlugin interface { Plugin ProcessWeightedDestination(params RouteParams, in *v1.WeightedDestination, out *envoyroute.WeightedCluster_ClusterWeight) error }
Click to show internal directories.
Click to hide internal directories.