Documentation
¶
Index ¶
- type RouteConfigurationBuilder
- type RouteConfigurationBuilderConfig
- type RouteConfigurationBuilderOpt
- func AddRouteConfigurationConfigurer(c v3.RouteConfigurationConfigurer) RouteConfigurationBuilderOpt
- func CommonRouteConfiguration(name string) RouteConfigurationBuilderOpt
- func ResetTagsHeader() RouteConfigurationBuilderOpt
- func TagsHeader(tags mesh_proto.MultiValueTagSet) RouteConfigurationBuilderOpt
- func VirtualHost(builder *VirtualHostBuilder) RouteConfigurationBuilderOpt
- type RouteConfigurationBuilderOptFunc
- type RouteConfigurationVirtualHostConfigurerV3
- type VirtualHostBuilder
- type VirtualHostBuilderConfig
- type VirtualHostBuilderOpt
- func AddVirtualHostConfigurer(c v3.VirtualHostConfigurer) VirtualHostBuilderOpt
- func CommonVirtualHost(name string) VirtualHostBuilderOpt
- func DomainNames(domainNames ...string) VirtualHostBuilderOpt
- func Redirect(matchPath, newPath string, allowGetOnly bool, port uint32) VirtualHostBuilderOpt
- func RequireTLS() VirtualHostBuilderOpt
- func Route(matchPath, newPath, cluster string, allowGetOnly bool) VirtualHostBuilderOpt
- func Routes(routes envoy_common.Routes) VirtualHostBuilderOpt
- func SetResponseHeader(name string, value string) VirtualHostBuilderOpt
- type VirtualHostBuilderOptFunc
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type RouteConfigurationBuilder ¶
type RouteConfigurationBuilder struct {
// contains filtered or unexported fields
}
RouteConfigurationBuilder is responsible for generating an Envoy RouteConfiguration by applying a series of RouteConfigurationConfigurers.
func NewRouteConfigurationBuilder ¶
func NewRouteConfigurationBuilder(apiVersion envoy.APIVersion) *RouteConfigurationBuilder
func (*RouteConfigurationBuilder) Build ¶
func (b *RouteConfigurationBuilder) Build() (envoy.NamedResource, error)
Build generates an Envoy RouteConfiguration by applying a series of RouteConfigurationConfigurers.
func (*RouteConfigurationBuilder) Configure ¶
func (b *RouteConfigurationBuilder) Configure(opts ...RouteConfigurationBuilderOpt) *RouteConfigurationBuilder
Configure configures RouteConfigurationBuilder by adding individual RouteConfigurationConfigurers.
type RouteConfigurationBuilderConfig ¶
type RouteConfigurationBuilderConfig struct { // A series of RouteConfigurationConfigurers to apply to Envoy RouteConfiguration. ConfigurersV3 []v3.RouteConfigurationConfigurer }
RouteConfigurationBuilderConfig holds configuration of a RouteConfigurationBuilder.
func (*RouteConfigurationBuilderConfig) AddV3 ¶
func (c *RouteConfigurationBuilderConfig) AddV3(configurer v3.RouteConfigurationConfigurer)
Add appends a given RouteConfigurationConfigurer to the end of the chain.
type RouteConfigurationBuilderOpt ¶
type RouteConfigurationBuilderOpt interface { // ApplyTo adds RouteConfigurationConfigurer(s) to the RouteConfigurationBuilder. ApplyTo(config *RouteConfigurationBuilderConfig) }
RouteConfigurationBuilderOpt is a configuration option for RouteConfigurationBuilder.
The goal of RouteConfigurationBuilderOpt is to facilitate fluent RouteConfigurationBuilder API.
func AddRouteConfigurationConfigurer ¶ added in v1.8.1
func AddRouteConfigurationConfigurer(c v3.RouteConfigurationConfigurer) RouteConfigurationBuilderOpt
AddRouteConfigurationConfigurer produces an option that adds the given configurer to the route coonfiguration builder.
func CommonRouteConfiguration ¶
func CommonRouteConfiguration(name string) RouteConfigurationBuilderOpt
func ResetTagsHeader ¶
func ResetTagsHeader() RouteConfigurationBuilderOpt
ResetTagsHeader adds x-kuma-tags header to the RequestHeadersToRemove list. x-kuma-tags header is planned to be used internally, so we don't want to expose it to the destination application.
func TagsHeader ¶
func TagsHeader(tags mesh_proto.MultiValueTagSet) RouteConfigurationBuilderOpt
func VirtualHost ¶
func VirtualHost(builder *VirtualHostBuilder) RouteConfigurationBuilderOpt
type RouteConfigurationBuilderOptFunc ¶
type RouteConfigurationBuilderOptFunc func(config *RouteConfigurationBuilderConfig)
RouteConfigurationBuilderOptFunc is a convenience type adapter.
func (RouteConfigurationBuilderOptFunc) ApplyTo ¶
func (f RouteConfigurationBuilderOptFunc) ApplyTo(config *RouteConfigurationBuilderConfig)
type RouteConfigurationVirtualHostConfigurerV3 ¶
type RouteConfigurationVirtualHostConfigurerV3 struct {
// contains filtered or unexported fields
}
func (RouteConfigurationVirtualHostConfigurerV3) Configure ¶
func (c RouteConfigurationVirtualHostConfigurerV3) Configure(routeConfiguration *envoy_route_v3.RouteConfiguration) error
type VirtualHostBuilder ¶
type VirtualHostBuilder struct {
// contains filtered or unexported fields
}
VirtualHostBuilder is responsible for generating an Envoy VirtualHost by applying a series of VirtualHostConfigurers.
func NewVirtualHostBuilder ¶
func NewVirtualHostBuilder(apiVersion envoy.APIVersion) *VirtualHostBuilder
func (*VirtualHostBuilder) Build ¶
func (b *VirtualHostBuilder) Build() (envoy.NamedResource, error)
Build generates an Envoy VirtualHost by applying a series of VirtualHostConfigurers.
func (*VirtualHostBuilder) Configure ¶
func (b *VirtualHostBuilder) Configure(opts ...VirtualHostBuilderOpt) *VirtualHostBuilder
Configure configures VirtualHostBuilder by adding individual VirtualHostConfigurers.
type VirtualHostBuilderConfig ¶
type VirtualHostBuilderConfig struct { // A series of VirtualHostConfigurers to apply to Envoy VirtualHost. ConfigurersV3 []v3.VirtualHostConfigurer }
VirtualHostBuilderConfig holds configuration of a VirtualHostBuilder.
func (*VirtualHostBuilderConfig) AddV3 ¶
func (c *VirtualHostBuilderConfig) AddV3(configurer v3.VirtualHostConfigurer)
Add appends a given VirtualHostConfigurer to the end of the chain.
type VirtualHostBuilderOpt ¶
type VirtualHostBuilderOpt interface { // ApplyTo adds VirtualHostConfigurer(s) to the VirtualHostBuilder. ApplyTo(config *VirtualHostBuilderConfig) }
VirtualHostBuilderOpt is a configuration option for VirtualHostBuilder.
The goal of VirtualHostBuilderOpt is to facilitate fluent VirtualHostBuilder API.
func AddVirtualHostConfigurer ¶ added in v1.8.1
func AddVirtualHostConfigurer(c v3.VirtualHostConfigurer) VirtualHostBuilderOpt
AddVirtualHostConfigurer production an option that adds the given configurer to the virtual host builder.
func CommonVirtualHost ¶
func CommonVirtualHost(name string) VirtualHostBuilderOpt
func DomainNames ¶ added in v1.8.1
func DomainNames(domainNames ...string) VirtualHostBuilderOpt
func Redirect ¶
func Redirect(matchPath, newPath string, allowGetOnly bool, port uint32) VirtualHostBuilderOpt
Redirect for paths that match to matchPath returns 301 status code with new port and path
func RequireTLS ¶ added in v1.8.1
func RequireTLS() VirtualHostBuilderOpt
RequireTLS specifies that this virtual host must only accept TLS connections.
func Route ¶
func Route(matchPath, newPath, cluster string, allowGetOnly bool) VirtualHostBuilderOpt
func Routes ¶
func Routes(routes envoy_common.Routes) VirtualHostBuilderOpt
func SetResponseHeader ¶ added in v1.8.1
func SetResponseHeader(name string, value string) VirtualHostBuilderOpt
SetResponseHeader unconditionally sets the named response header to the given value.
type VirtualHostBuilderOptFunc ¶
type VirtualHostBuilderOptFunc func(config *VirtualHostBuilderConfig)
VirtualHostBuilderOptFunc is a convenience type adapter.
func (VirtualHostBuilderOptFunc) ApplyTo ¶
func (f VirtualHostBuilderOptFunc) ApplyTo(config *VirtualHostBuilderConfig)