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.