v1

package
v0.0.0-...-da06cba Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 30, 2018 License: Apache-2.0 Imports: 7 Imported by: 19

Documentation

Overview

Package v1 is a generated protocol buffer package.

It is generated from these files:

config.proto
metadata.proto
status.proto
upstream.proto
virtualhost.proto

It has these top-level messages:

Config
Metadata
Status
Upstream
ServiceInfo
Function
VirtualHost
Route
RequestMatcher
EventMatcher
WeightedDestination
Destination
FunctionDestination
UpstreamDestination
SSLConfig

Index

Constants

This section is empty.

Variables

View Source
var Status_State_name = map[int32]string{
	0: "Pending",
	1: "Accepted",
	2: "Rejected",
}
View Source
var Status_State_value = map[string]int32{
	"Pending":  0,
	"Accepted": 1,
	"Rejected": 2,
}

Functions

This section is empty.

Types

type Config

type Config struct {
	Upstreams    []*Upstream    `protobuf:"bytes,1,rep,name=upstreams" json:"upstreams,omitempty"`
	VirtualHosts []*VirtualHost `protobuf:"bytes,2,rep,name=virtual_hosts,json=virtualHosts" json:"virtual_hosts,omitempty"`
}

* Config is a top-level config object. It is used internally by gloo as a container for the entire user config.

func (*Config) Descriptor

func (*Config) Descriptor() ([]byte, []int)

func (*Config) Equal

func (this *Config) Equal(that interface{}) bool

func (*Config) GetUpstreams

func (m *Config) GetUpstreams() []*Upstream

func (*Config) GetVirtualHosts

func (m *Config) GetVirtualHosts() []*VirtualHost

func (*Config) ProtoMessage

func (*Config) ProtoMessage()

func (*Config) Reset

func (m *Config) Reset()

func (*Config) String

func (m *Config) String() string

type ConfigObject

type ConfigObject interface {
	proto.Message
	GetName() string
	GetMetadata() *Metadata
}

type Destination

type Destination struct {
	// Types that are valid to be assigned to DestinationType:
	//	*Destination_Function
	//	*Destination_Upstream
	DestinationType isDestination_DestinationType `protobuf_oneof:"destination_type"`
}

Destination is a destination that requests can be routed to.

func (*Destination) Descriptor

func (*Destination) Descriptor() ([]byte, []int)

func (*Destination) Equal

func (this *Destination) Equal(that interface{}) bool

func (*Destination) GetDestinationType

func (m *Destination) GetDestinationType() isDestination_DestinationType

func (*Destination) GetFunction

func (m *Destination) GetFunction() *FunctionDestination

func (*Destination) GetUpstream

func (m *Destination) GetUpstream() *UpstreamDestination

func (*Destination) ProtoMessage

func (*Destination) ProtoMessage()

func (*Destination) Reset

func (m *Destination) Reset()

func (*Destination) String

func (m *Destination) String() string

func (*Destination) XXX_OneofFuncs

func (*Destination) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type Destination_Function

type Destination_Function struct {
	Function *FunctionDestination `protobuf:"bytes,1,opt,name=function,oneof"`
}

func (*Destination_Function) Equal

func (this *Destination_Function) Equal(that interface{}) bool

type Destination_Upstream

type Destination_Upstream struct {
	Upstream *UpstreamDestination `protobuf:"bytes,2,opt,name=upstream,oneof"`
}

func (*Destination_Upstream) Equal

func (this *Destination_Upstream) Equal(that interface{}) bool

type EventMatcher

type EventMatcher struct {
	// Event Type indicates the event type or topic to match
	EventType string `protobuf:"bytes,1,opt,name=event_type,json=eventType,proto3" json:"event_type,omitempty"`
}

Event matcher is a special kind of matcher for CloudEvents The CloudEvents API is described here: https://github.com/cloudevents/spec/blob/master/spec.md

func (*EventMatcher) Descriptor

func (*EventMatcher) Descriptor() ([]byte, []int)

func (*EventMatcher) Equal

func (this *EventMatcher) Equal(that interface{}) bool

func (*EventMatcher) GetEventType

func (m *EventMatcher) GetEventType() string

func (*EventMatcher) ProtoMessage

func (*EventMatcher) ProtoMessage()

func (*EventMatcher) Reset

func (m *EventMatcher) Reset()

func (*EventMatcher) String

func (m *EventMatcher) String() string

type Function

type Function struct {
	// Name of the function. Functions are referenced by name from routes and therefore must be unique within an upstream
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Spec for the function. Like [upstream specs](TODO), the content of function specs is specified by the [upstream plugin](TODO) for the upstream's type.
	Spec *google_protobuf.Struct `protobuf:"bytes,4,opt,name=spec" json:"spec,omitempty"`
}

func (*Function) Descriptor

func (*Function) Descriptor() ([]byte, []int)

func (*Function) Equal

func (this *Function) Equal(that interface{}) bool

func (*Function) GetName

func (m *Function) GetName() string

func (*Function) GetSpec

func (m *Function) GetSpec() *google_protobuf.Struct

func (*Function) ProtoMessage

func (*Function) ProtoMessage()

func (*Function) Reset

func (m *Function) Reset()

func (*Function) String

func (m *Function) String() string

type FunctionDestination

type FunctionDestination struct {
	// Upstream Name is the name of the upstream the function belongs to
	UpstreamName string `protobuf:"bytes,1,opt,name=upstream_name,json=upstreamName,proto3" json:"upstream_name,omitempty"`
	// Function Name is the name of the function as defined on the upstream
	FunctionName string `protobuf:"bytes,2,opt,name=function_name,json=functionName,proto3" json:"function_name,omitempty"`
}

FunctionDestination will route a request to a specific function defined for an upstream

func (*FunctionDestination) Descriptor

func (*FunctionDestination) Descriptor() ([]byte, []int)

func (*FunctionDestination) Equal

func (this *FunctionDestination) Equal(that interface{}) bool

func (*FunctionDestination) GetFunctionName

func (m *FunctionDestination) GetFunctionName() string

func (*FunctionDestination) GetUpstreamName

func (m *FunctionDestination) GetUpstreamName() string

func (*FunctionDestination) ProtoMessage

func (*FunctionDestination) ProtoMessage()

func (*FunctionDestination) Reset

func (m *FunctionDestination) Reset()

func (*FunctionDestination) String

func (m *FunctionDestination) String() string

type FunctionSpec

type FunctionSpec *types.Struct

type Metadata

type Metadata struct {
	// ResourceVersion keeps track of the resource version of a config resource. This mechanism is used by [gloo-storage](https://github.com/solo-io/gloo-storage) to ensure safety with concurrent writes/updates to a resource in storage.
	ResourceVersion string `protobuf:"bytes,1,opt,name=resource_version,json=resourceVersion,proto3" json:"resource_version,omitempty" testdiff:"ignore"`
	// Namespace is used for the namespacing of resources. Currently unused by gloo internally.
	Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"`
	// Annotations allow clients to tag resources for special use cases. gloo ignores annotations but preserved them on read/write from/to storage.
	Annotations map[string]string `` /* 156-byte string literal not displayed */
}

* Metadata contains general properties of config resources useful to clients and the gloo control plane for purposes of versioning, annotating, and namespacing resources.

func (*Metadata) Descriptor

func (*Metadata) Descriptor() ([]byte, []int)

func (*Metadata) Equal

func (this *Metadata) Equal(that interface{}) bool

func (*Metadata) GetAnnotations

func (m *Metadata) GetAnnotations() map[string]string

func (*Metadata) GetNamespace

func (m *Metadata) GetNamespace() string

func (*Metadata) GetResourceVersion

func (m *Metadata) GetResourceVersion() string

func (*Metadata) ProtoMessage

func (*Metadata) ProtoMessage()

func (*Metadata) Reset

func (m *Metadata) Reset()

func (*Metadata) String

func (m *Metadata) String() string

type RequestMatcher

type RequestMatcher struct {
	// Path specifies the :path header in HTTP2, or the request URL path in HTTP 1
	//
	// Types that are valid to be assigned to Path:
	//	*RequestMatcher_PathPrefix
	//	*RequestMatcher_PathRegex
	//	*RequestMatcher_PathExact
	Path isRequestMatcher_Path `protobuf_oneof:"path"`
	// Headers specify a list of request headers and their values the request must contain to match this route
	// If a value is not specified (empty string) for a header, all values will match so long as the header is present on the request
	Headers map[string]string `` /* 148-byte string literal not displayed */
	// Query params work the same way as headers, but for query string parameters
	QueryParams map[string]string `` /* 175-byte string literal not displayed */
	// HTTP Verb(s) to match on. If none specified, the matcher will match all verbs
	Verbs []string `protobuf:"bytes,6,rep,name=verbs" json:"verbs,omitempty"`
}

Request Matcher is a route matcher for traditional http requests Request Matchers stand in juxtoposition to Event Matchers, which match "events" rather than HTTP Requests

func (*RequestMatcher) Descriptor

func (*RequestMatcher) Descriptor() ([]byte, []int)

func (*RequestMatcher) Equal

func (this *RequestMatcher) Equal(that interface{}) bool

func (*RequestMatcher) GetHeaders

func (m *RequestMatcher) GetHeaders() map[string]string

func (*RequestMatcher) GetPath

func (m *RequestMatcher) GetPath() isRequestMatcher_Path

func (*RequestMatcher) GetPathExact

func (m *RequestMatcher) GetPathExact() string

func (*RequestMatcher) GetPathPrefix

func (m *RequestMatcher) GetPathPrefix() string

func (*RequestMatcher) GetPathRegex

func (m *RequestMatcher) GetPathRegex() string

func (*RequestMatcher) GetQueryParams

func (m *RequestMatcher) GetQueryParams() map[string]string

func (*RequestMatcher) GetVerbs

func (m *RequestMatcher) GetVerbs() []string

func (*RequestMatcher) ProtoMessage

func (*RequestMatcher) ProtoMessage()

func (*RequestMatcher) Reset

func (m *RequestMatcher) Reset()

func (*RequestMatcher) String

func (m *RequestMatcher) String() string

func (*RequestMatcher) XXX_OneofFuncs

func (*RequestMatcher) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type RequestMatcher_PathExact

type RequestMatcher_PathExact struct {
	PathExact string `protobuf:"bytes,3,opt,name=path_exact,json=pathExact,proto3,oneof"`
}

func (*RequestMatcher_PathExact) Equal

func (this *RequestMatcher_PathExact) Equal(that interface{}) bool

type RequestMatcher_PathPrefix

type RequestMatcher_PathPrefix struct {
	PathPrefix string `protobuf:"bytes,1,opt,name=path_prefix,json=pathPrefix,proto3,oneof"`
}

func (*RequestMatcher_PathPrefix) Equal

func (this *RequestMatcher_PathPrefix) Equal(that interface{}) bool

type RequestMatcher_PathRegex

type RequestMatcher_PathRegex struct {
	PathRegex string `protobuf:"bytes,2,opt,name=path_regex,json=pathRegex,proto3,oneof"`
}

func (*RequestMatcher_PathRegex) Equal

func (this *RequestMatcher_PathRegex) Equal(that interface{}) bool

type Route

type Route struct {
	// Matcher defines what properties of a request to match on.
	// Routes will route all requests they match.
	// If a request matches more than one route, the first route on the virtual host's route list will be selected.
	//
	// Types that are valid to be assigned to Matcher:
	//	*Route_RequestMatcher
	//	*Route_EventMatcher
	Matcher isRoute_Matcher `protobuf_oneof:"matcher"`
	// A route is only allowed to specify one of multiple_destinations or single_destination. Setting both will result in an error
	// Multiple Destinations is used when a user wants a route to balance requests between multiple destinations
	// Balancing is done by probability, where weights are specified for each destination
	MultipleDestinations []*WeightedDestination `protobuf:"bytes,3,rep,name=multiple_destinations,json=multipleDestinations" json:"multiple_destinations,omitempty"`
	// A single destination is specified when a route only routes to a single destination.
	SingleDestination *Destination `protobuf:"bytes,4,opt,name=single_destination,json=singleDestination" json:"single_destination,omitempty"`
	// PrefixRewrite can be specified to rewrite the matched path of the request path to a new prefix
	PrefixRewrite string `protobuf:"bytes,5,opt,name=prefix_rewrite,json=prefixRewrite,proto3" json:"prefix_rewrite,omitempty"`
	// Extensions provides a way to extend the behavior of a route. In addition to the core route extensions<!--(TODO)-->,
	// gloo provides the means for route plugins<!--(TODO)--> to be added to gloo which add new types of route extensions.
	// <!--See the route extensions section for a more detailed explanation-->
	Extensions *google_protobuf.Struct `protobuf:"bytes,6,opt,name=extensions" json:"extensions,omitempty"`
}

* Routes declare the entrypoints on virtual hosts and the upstreams or functions they route requests to

func (*Route) Descriptor

func (*Route) Descriptor() ([]byte, []int)

func (*Route) Equal

func (this *Route) Equal(that interface{}) bool

func (*Route) GetEventMatcher

func (m *Route) GetEventMatcher() *EventMatcher

func (*Route) GetExtensions

func (m *Route) GetExtensions() *google_protobuf.Struct

func (*Route) GetMatcher

func (m *Route) GetMatcher() isRoute_Matcher

func (*Route) GetMultipleDestinations

func (m *Route) GetMultipleDestinations() []*WeightedDestination

func (*Route) GetPrefixRewrite

func (m *Route) GetPrefixRewrite() string

func (*Route) GetRequestMatcher

func (m *Route) GetRequestMatcher() *RequestMatcher

func (*Route) GetSingleDestination

func (m *Route) GetSingleDestination() *Destination

func (*Route) ProtoMessage

func (*Route) ProtoMessage()

func (*Route) Reset

func (m *Route) Reset()

func (*Route) String

func (m *Route) String() string

func (*Route) XXX_OneofFuncs

func (*Route) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type Route_EventMatcher

type Route_EventMatcher struct {
	EventMatcher *EventMatcher `protobuf:"bytes,2,opt,name=event_matcher,json=eventMatcher,oneof"`
}

func (*Route_EventMatcher) Equal

func (this *Route_EventMatcher) Equal(that interface{}) bool

type Route_RequestMatcher

type Route_RequestMatcher struct {
	RequestMatcher *RequestMatcher `protobuf:"bytes,1,opt,name=request_matcher,json=requestMatcher,oneof"`
}

func (*Route_RequestMatcher) Equal

func (this *Route_RequestMatcher) Equal(that interface{}) bool

type SSLConfig

type SSLConfig struct {
	// * SecretRef contains the secret ref<!--(TODO)--> to a gloo secret<!--(TODO)--> containing the following structure:
	// {
	// "ca_chain": <ca chain data...>,
	// "private key": <private key data...>
	// }
	SecretRef string `protobuf:"bytes,1,opt,name=secret_ref,json=secretRef,proto3" json:"secret_ref,omitempty"`
}

SSLConfig contains the options necessary to configure a virtualhost to use TLS

func (*SSLConfig) Descriptor

func (*SSLConfig) Descriptor() ([]byte, []int)

func (*SSLConfig) Equal

func (this *SSLConfig) Equal(that interface{}) bool

func (*SSLConfig) GetSecretRef

func (m *SSLConfig) GetSecretRef() string

func (*SSLConfig) ProtoMessage

func (*SSLConfig) ProtoMessage()

func (*SSLConfig) Reset

func (m *SSLConfig) Reset()

func (*SSLConfig) String

func (m *SSLConfig) String() string

type ServiceInfo

type ServiceInfo struct {
	// Type indicates the type of service running on the upstream.
	// Current options include `REST`, `gRPC`, and `NATS`
	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	// Properties contains properties that describe the service. The spec may be required
	// by the Upstream Plugin that handles the given Service Type
	// Most often the service properties will be a map<string, string>
	Properties *google_protobuf.Struct `protobuf:"bytes,2,opt,name=properties" json:"properties,omitempty"`
}

func (*ServiceInfo) Descriptor

func (*ServiceInfo) Descriptor() ([]byte, []int)

func (*ServiceInfo) Equal

func (this *ServiceInfo) Equal(that interface{}) bool

func (*ServiceInfo) GetProperties

func (m *ServiceInfo) GetProperties() *google_protobuf.Struct

func (*ServiceInfo) GetType

func (m *ServiceInfo) GetType() string

func (*ServiceInfo) ProtoMessage

func (*ServiceInfo) ProtoMessage()

func (*ServiceInfo) Reset

func (m *ServiceInfo) Reset()

func (*ServiceInfo) String

func (m *ServiceInfo) String() string

type Status

type Status struct {
	// State is the enum indicating the state of the resource
	State Status_State `protobuf:"varint,1,opt,name=state,proto3,enum=v1.Status_State" json:"state,omitempty"`
	// Reason is a description of the error for Rejected resources. If the resource is pending or accepted, this field will be empty
	Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
}

* Status indicates whether a config resource (currently only [virtualhosts](../introduction/concepts.md) and [upstreams](../introduction/concepts.md)) has been (in)validated by gloo

func (*Status) Descriptor

func (*Status) Descriptor() ([]byte, []int)

func (*Status) Equal

func (this *Status) Equal(that interface{}) bool

func (*Status) GetReason

func (m *Status) GetReason() string

func (*Status) GetState

func (m *Status) GetState() Status_State

func (*Status) ProtoMessage

func (*Status) ProtoMessage()

func (*Status) Reset

func (m *Status) Reset()

func (*Status) String

func (m *Status) String() string

type Status_State

type Status_State int32
const (
	// Pending status indicates the resource has not yet been validated
	Status_Pending Status_State = 0
	// Accepted indicates the resource has been validated
	Status_Accepted Status_State = 1
	// Rejected indicates an invalid configuration by the user
	// Rejected resources may be propagated to the xDS server depending on their severity
	Status_Rejected Status_State = 2
)

func (Status_State) EnumDescriptor

func (Status_State) EnumDescriptor() ([]byte, []int)

func (Status_State) String

func (x Status_State) String() string

type Upstream

type Upstream struct {
	// Name of the upstream. Names must be unique and follow the following syntax rules:
	// One or more lowercase rfc1035/rfc1123 labels separated by '.' with a maximum length of 253 characters.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Type indicates the type of the upstream. Examples include service<!--(TODO)-->, kubernetes<!--(TODO)-->, and [aws](../plugins/aws.md)
	// Types are defined by the plugin<!--(TODO)--> associated with them.
	Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
	// Connection Timeout tells gloo to set a timeout for unresponsive connections created to this upstream.
	// If not provided by the user, it will set to a default value
	ConnectionTimeout time.Duration `protobuf:"bytes,3,opt,name=connection_timeout,json=connectionTimeout,stdduration" json:"connection_timeout"`
	// Spec contains properties that are specific to the upstream type. The spec is always required, but
	// the expected content is specified by the [upstream plugin] for the given upstream type.
	// Most often the upstream spec will be a map<string, string>
	Spec *google_protobuf.Struct `protobuf:"bytes,4,opt,name=spec" json:"spec,omitempty"`
	// Certain upstream types support (and may require) [functions](../introduction/concepts.md#Functions).
	// Functions allow function-level routing to be done. For example, the [AWS lambda](../plugins/aws.md) upstream type
	// Permits routing to AWS lambda function].
	// [routes](virtualhost.md#Route) on virtualhosts can specify function destinations to route to specific functions.
	Functions []*Function `protobuf:"bytes,5,rep,name=functions" json:"functions,omitempty"`
	// Status indicates the validation status of the upstream resource. Status is read-only by clients, and set by gloo during validation
	Status *Status `protobuf:"bytes,6,opt,name=status" json:"status,omitempty" testdiff:"ignore"`
	// Metadata contains the resource metadata for the upstream
	Metadata *Metadata `protobuf:"bytes,7,opt,name=metadata" json:"metadata,omitempty"`
	// Service Info contains information about the service running on the upstream
	// Service Info is optional, but is used by certain plugins (such as the gRPC plugin)
	// as well as discovery services to provide sophistocated routing features for well-known
	// types of services
	ServiceInfo *ServiceInfo `protobuf:"bytes,8,opt,name=service_info,json=serviceInfo" json:"service_info,omitempty"`
}

* Upstream represents a destination for routing. Upstreams can be compared to [clusters](https://www.envoyproxy.io/docs/envoy/latest/api-v1/cluster_manager/cluster.html?highlight=cluster) in Envoy terminology. Upstreams can take a variety of types<!--(TODO)--> in gloo. Language extensions known as plugins<!--(TODO)--> allow the addition of new types of upstreams. <!--See [upstream types](TODO) for a detailed description of available upstream types.-->

func (*Upstream) Descriptor

func (*Upstream) Descriptor() ([]byte, []int)

func (*Upstream) Equal

func (this *Upstream) Equal(that interface{}) bool

func (*Upstream) GetConnectionTimeout

func (m *Upstream) GetConnectionTimeout() time.Duration

func (*Upstream) GetFunctions

func (m *Upstream) GetFunctions() []*Function

func (*Upstream) GetMetadata

func (m *Upstream) GetMetadata() *Metadata

func (*Upstream) GetName

func (m *Upstream) GetName() string

func (*Upstream) GetServiceInfo

func (m *Upstream) GetServiceInfo() *ServiceInfo

func (*Upstream) GetSpec

func (m *Upstream) GetSpec() *google_protobuf.Struct

func (*Upstream) GetStatus

func (m *Upstream) GetStatus() *Status

func (*Upstream) GetType

func (m *Upstream) GetType() string

func (*Upstream) ProtoMessage

func (*Upstream) ProtoMessage()

func (*Upstream) Reset

func (m *Upstream) Reset()

func (*Upstream) String

func (m *Upstream) String() string

type UpstreamDestination

type UpstreamDestination struct {
	// Name of the upstream
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}

Upstream Destination routes a request to an upstream

func (*UpstreamDestination) Descriptor

func (*UpstreamDestination) Descriptor() ([]byte, []int)

func (*UpstreamDestination) Equal

func (this *UpstreamDestination) Equal(that interface{}) bool

func (*UpstreamDestination) GetName

func (m *UpstreamDestination) GetName() string

func (*UpstreamDestination) ProtoMessage

func (*UpstreamDestination) ProtoMessage()

func (*UpstreamDestination) Reset

func (m *UpstreamDestination) Reset()

func (*UpstreamDestination) String

func (m *UpstreamDestination) String() string

type UpstreamSpec

type UpstreamSpec *types.Struct

type VirtualHost

type VirtualHost struct {
	// Name of the virtual host. Names must be unique and follow the following syntax rules:
	// One or more lowercase rfc1035/rfc1123 labels separated by '.' with a maximum length of 253 characters.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Domains represent the list of domains (host/authority header) that will match for all routes on this virtual host.
	// As in Envoy: wildcard hosts are supported in the form of “*.foo.com” or “*-bar.foo.com”.
	// If domains is empty, gloo will set the domain to "*", making that virtual host the "default" virtualhost.
	// The default virtualhost will be the fallback virtual host for all requests that do not match a domain on an existing virtual host.
	// Only one default virtual host can be defined (either with an empty domain list, or a domain list that includes "*")
	Domains []string `protobuf:"bytes,2,rep,name=domains" json:"domains,omitempty"`
	// Routes define the list of [routes](../) that live on this virtual host.
	Routes []*Route `protobuf:"bytes,3,rep,name=routes" json:"routes,omitempty"`
	// SSL Config is optional for the virtual host. If provided, the virtual host will listen on the envoy HTTPS listener port (default :8443)
	// If left empty, the virtual host will listen on the HTTP listener port (default :8080)
	SslConfig *SSLConfig `protobuf:"bytes,4,opt,name=ssl_config,json=sslConfig" json:"ssl_config,omitempty"`
	// Status indicates the validation status of the virtual host resource. Status is read-only by clients, and set by gloo during validation
	Status *Status `protobuf:"bytes,5,opt,name=status" json:"status,omitempty" testdiff:"ignore"`
	// Metadata contains the resource metadata for the virtual host
	Metadata *Metadata `protobuf:"bytes,6,opt,name=metadata" json:"metadata,omitempty"`
}

* Virtual Hosts represent a collection of routes for a set of domains. Gloo's Virtual Hosts can be compared to [virtual hosts](https://www.envoyproxy.io/docs/envoy/latest/api-v1/route_config/vhost.html?highlight=virtual%20host) in Envoy terminology. A virtual host can be used to define "apps"; a collection of APIs that belong to a particular domain. The Virtual Host concept allows configuration of per-virtualhost SSL certificates

func (*VirtualHost) Descriptor

func (*VirtualHost) Descriptor() ([]byte, []int)

func (*VirtualHost) Equal

func (this *VirtualHost) Equal(that interface{}) bool

func (*VirtualHost) GetDomains

func (m *VirtualHost) GetDomains() []string

func (*VirtualHost) GetMetadata

func (m *VirtualHost) GetMetadata() *Metadata

func (*VirtualHost) GetName

func (m *VirtualHost) GetName() string

func (*VirtualHost) GetRoutes

func (m *VirtualHost) GetRoutes() []*Route

func (*VirtualHost) GetSslConfig

func (m *VirtualHost) GetSslConfig() *SSLConfig

func (*VirtualHost) GetStatus

func (m *VirtualHost) GetStatus() *Status

func (*VirtualHost) ProtoMessage

func (*VirtualHost) ProtoMessage()

func (*VirtualHost) Reset

func (m *VirtualHost) Reset()

func (*VirtualHost) String

func (m *VirtualHost) String() string

type WeightedDestination

type WeightedDestination struct {
	*Destination `protobuf:"bytes,1,opt,name=destination,embedded=destination" json:"destination,omitempty"`
	// Weight must be greater than zero
	// Routing to each destination will be balanced by the ratio of the destination's weight to the total weight on a route
	Weight uint32 `protobuf:"varint,2,opt,name=weight,proto3" json:"weight,omitempty"`
}

WeightedDestination attaches a weight to a destination For use in routes with multiple destinations

func (*WeightedDestination) Descriptor

func (*WeightedDestination) Descriptor() ([]byte, []int)

func (*WeightedDestination) Equal

func (this *WeightedDestination) Equal(that interface{}) bool

func (*WeightedDestination) GetWeight

func (m *WeightedDestination) GetWeight() uint32

func (*WeightedDestination) ProtoMessage

func (*WeightedDestination) ProtoMessage()

func (*WeightedDestination) Reset

func (m *WeightedDestination) Reset()

func (*WeightedDestination) String

func (m *WeightedDestination) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL