v1

package
v1.1.0-beta21 Latest Latest
Warning

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

Go to latest
Published: Jul 23, 2021 License: Apache-2.0 Imports: 35 Imported by: 1

Documentation

Overview

Package v1 contains API Schema definitions for the networking.mesh.gloo.solo.io v1 API group +k8s:deepcopy-gen=package,register +groupName=networking.mesh.gloo.solo.io

NOTE: Boilerplate only. Ignore this file. Used to register the Go types with the Kubernetes internal scheme

Definitions for the Kubernetes types

Definitions for the Kubernetes types

Index

Constants

This section is empty.

Variables

View Source
var (
	DestinationPolicySpec_Policy_MTLS_Istio_TLSmode_name = map[int32]string{
		0: "DISABLE",
		1: "SIMPLE",
		2: "ISTIO_MUTUAL",
	}
	DestinationPolicySpec_Policy_MTLS_Istio_TLSmode_value = map[string]int32{
		"DISABLE":      0,
		"SIMPLE":       1,
		"ISTIO_MUTUAL": 2,
	}
)

Enum value maps for DestinationPolicySpec_Policy_MTLS_Istio_TLSmode.

View Source
var (
	RequestLimit_Unit_name = map[int32]string{
		0: "UNKNOWN",
		1: "SECOND",
		2: "MINUTE",
		3: "HOUR",
		4: "DAY",
	}
	RequestLimit_Unit_value = map[string]int32{
		"UNKNOWN": 0,
		"SECOND":  1,
		"MINUTE":  2,
		"HOUR":    3,
		"DAY":     4,
	}
)

Enum value maps for RequestLimit_Unit.

View Source
var (
	MetaData_Source_name = map[int32]string{
		0: "DYNAMIC",
		1: "ROUTE_ENTRY",
	}
	MetaData_Source_value = map[string]int32{
		"DYNAMIC":     0,
		"ROUTE_ENTRY": 1,
	}
)

Enum value maps for MetaData_Source.

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "networking.mesh.gloo.solo.io", Version: "v1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)
View Source
var (
	StatusCodeMatcher_Comparator_name = map[int32]string{
		0: "EQ",
		1: "GE",
		2: "LE",
	}
	StatusCodeMatcher_Comparator_value = map[string]int32{
		"EQ": 0,
		"GE": 1,
		"LE": 2,
	}
)

Enum value maps for StatusCodeMatcher_Comparator.

View Source
var (
	TrafficPolicySpec_Policy_MTLS_Istio_TLSmode_name = map[int32]string{
		0: "DISABLE",
		1: "SIMPLE",
		2: "ISTIO_MUTUAL",
	}
	TrafficPolicySpec_Policy_MTLS_Istio_TLSmode_value = map[string]int32{
		"DISABLE":      0,
		"SIMPLE":       1,
		"ISTIO_MUTUAL": 2,
	}
)

Enum value maps for TrafficPolicySpec_Policy_MTLS_Istio_TLSmode.

View Source
var (
	VirtualMeshSpec_GlobalAccessPolicy_name = map[int32]string{
		0: "MESH_DEFAULT",
		1: "ENABLED",
		2: "DISABLED",
	}
	VirtualMeshSpec_GlobalAccessPolicy_value = map[string]int32{
		"MESH_DEFAULT": 0,
		"ENABLED":      1,
		"DISABLED":     2,
	}
)

Enum value maps for VirtualMeshSpec_GlobalAccessPolicy.

View Source
var AccessPolicyGVK = schema.GroupVersionKind{
	Group:   "networking.mesh.gloo.solo.io",
	Version: "v1",
	Kind:    "AccessPolicy",
}

GroupVersionKind for AccessPolicy

View Source
var File_github_com_solo_io_gloo_mesh_api_networking_v1_access_policy_proto protoreflect.FileDescriptor
View Source
var File_github_com_solo_io_gloo_mesh_api_networking_v1_applied_policies_proto protoreflect.FileDescriptor
View Source
var File_github_com_solo_io_gloo_mesh_api_networking_v1_destination_policy_proto protoreflect.FileDescriptor
View Source
var File_github_com_solo_io_gloo_mesh_api_networking_v1_rate_limit_proto protoreflect.FileDescriptor
View Source
var File_github_com_solo_io_gloo_mesh_api_networking_v1_request_matchers_proto protoreflect.FileDescriptor
View Source
var File_github_com_solo_io_gloo_mesh_api_networking_v1_status_proto protoreflect.FileDescriptor
View Source
var File_github_com_solo_io_gloo_mesh_api_networking_v1_traffic_policy_proto protoreflect.FileDescriptor
View Source
var File_github_com_solo_io_gloo_mesh_api_networking_v1_virtual_mesh_proto protoreflect.FileDescriptor
View Source
var File_github_com_solo_io_gloo_mesh_api_networking_v1_weighed_destination_proto protoreflect.FileDescriptor
View Source
var TrafficPolicyGVK = schema.GroupVersionKind{
	Group:   "networking.mesh.gloo.solo.io",
	Version: "v1",
	Kind:    "TrafficPolicy",
}

GroupVersionKind for TrafficPolicy

View Source
var VirtualMeshGVK = schema.GroupVersionKind{
	Group:   "networking.mesh.gloo.solo.io",
	Version: "v1",
	Kind:    "VirtualMesh",
}

GroupVersionKind for VirtualMesh

Functions

func AddToScheme

func AddToScheme(s *runtime.Scheme) error

func NewAccessPolicyClient

func NewAccessPolicyClient(client client.Client) *accessPolicyClient

func NewTrafficPolicyClient

func NewTrafficPolicyClient(client client.Client) *trafficPolicyClient

func NewVirtualMeshClient

func NewVirtualMeshClient(client client.Client) *virtualMeshClient

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type AccessPolicy

type AccessPolicy struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   AccessPolicySpec   `json:"spec,omitempty"`
	Status AccessPolicyStatus `json:"status,omitempty"`
}

AccessPolicy is the Schema for the accessPolicy API

func (*AccessPolicy) DeepCopy

func (in *AccessPolicy) DeepCopy() *AccessPolicy

func (*AccessPolicy) DeepCopyInto

func (in *AccessPolicy) DeepCopyInto(out *AccessPolicy)

func (*AccessPolicy) DeepCopyObject

func (in *AccessPolicy) DeepCopyObject() runtime.Object

func (AccessPolicy) GVK

GVK returns the GroupVersionKind associated with the resource type.

type AccessPolicyClient

type AccessPolicyClient interface {
	AccessPolicyReader
	AccessPolicyWriter
	AccessPolicyStatusWriter
}

Client knows how to perform CRUD operations on AccessPolicys.

type AccessPolicyList

type AccessPolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []AccessPolicy `json:"items"`
}

AccessPolicyList contains a list of AccessPolicy

func (*AccessPolicyList) DeepCopy

func (in *AccessPolicyList) DeepCopy() *AccessPolicyList

func (*AccessPolicyList) DeepCopyInto

func (in *AccessPolicyList) DeepCopyInto(out *AccessPolicyList)

func (*AccessPolicyList) DeepCopyObject

func (in *AccessPolicyList) DeepCopyObject() runtime.Object

type AccessPolicyReader

type AccessPolicyReader interface {
	// Get retrieves a AccessPolicy for the given object key
	GetAccessPolicy(ctx context.Context, key client.ObjectKey) (*AccessPolicy, error)

	// List retrieves list of AccessPolicys for a given namespace and list options.
	ListAccessPolicy(ctx context.Context, opts ...client.ListOption) (*AccessPolicyList, error)
}

Reader knows how to read and list AccessPolicys.

type AccessPolicySlice

type AccessPolicySlice []*AccessPolicy

AccessPolicySlice represents a slice of *AccessPolicy

type AccessPolicySpec

type AccessPolicySpec struct {

	// Specify the identities of Workloads (i.e. traffic sources) for which to apply this AccessPolicy.
	// Leave empty to apply the AccessPolicy to all Workloads colocated in the destination's Mesh.
	SourceSelector []*v1.IdentitySelector `protobuf:"bytes,1,rep,name=source_selector,json=sourceSelector,proto3" json:"source_selector,omitempty"`
	// Specify the Destinations for which to apply this AccessPolicy.
	// Leave empty to apply the AccessPolicy to all Destinations.
	DestinationSelector []*v1.DestinationSelector `protobuf:"bytes,2,rep,name=destination_selector,json=destinationSelector,proto3" json:"destination_selector,omitempty"`
	//
	//Optional. A list of HTTP paths or gRPC methods to allow.
	//gRPC methods must be presented as fully-qualified name in the form of
	//"/packageName.serviceName/methodName" and are case sensitive.
	//Exact match, prefix match, and suffix match are supported for paths.
	//For example, the path "/books/review" matches
	//"/books/review" (exact match), "*books/" (suffix match), or "/books*" (prefix match).
	//
	//If not specified, allow any path.
	AllowedPaths []string `protobuf:"bytes,3,rep,name=allowed_paths,json=allowedPaths,proto3" json:"allowed_paths,omitempty"`
	//
	//Optional. A list of HTTP methods to allow (e.g., "GET", "POST").
	//It is ignored in gRPC case because the value is always "POST".
	//If not specified, allows any method.
	AllowedMethods []string `protobuf:"bytes,4,rep,name=allowed_methods,json=allowedMethods,proto3" json:"allowed_methods,omitempty"`
	//
	//Optional. A list of ports which to allow.
	//If not set any port is allowed.
	AllowedPorts []uint32 `protobuf:"varint,5,rep,packed,name=allowed_ports,json=allowedPorts,proto3" json:"allowed_ports,omitempty"`
	// contains filtered or unexported fields
}

Grants communication permission between selected identities (i.e. traffic sources) and Destinations (i.e. destinations). Explicitly granted access permission is required if a [VirtualMesh's GlobalAccessPolicy]({{% versioned_link_path fromRoot="/reference/api/virtual_mesh/#networking.mesh.gloo.solo.io.VirtualMeshSpec.GlobalAccessPolicy" %}}) is set to `ENABLED`.

func (*AccessPolicySpec) DeepCopyInto

func (in *AccessPolicySpec) DeepCopyInto(out *AccessPolicySpec)

DeepCopyInto for the AccessPolicy.Spec

func (*AccessPolicySpec) Descriptor deprecated

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

Deprecated: Use AccessPolicySpec.ProtoReflect.Descriptor instead.

func (*AccessPolicySpec) Equal

func (m *AccessPolicySpec) Equal(that interface{}) bool

Equal function

func (*AccessPolicySpec) GetAllowedMethods

func (x *AccessPolicySpec) GetAllowedMethods() []string

func (*AccessPolicySpec) GetAllowedPaths

func (x *AccessPolicySpec) GetAllowedPaths() []string

func (*AccessPolicySpec) GetAllowedPorts

func (x *AccessPolicySpec) GetAllowedPorts() []uint32

func (*AccessPolicySpec) GetDestinationSelector

func (x *AccessPolicySpec) GetDestinationSelector() []*v1.DestinationSelector

func (*AccessPolicySpec) GetSourceSelector

func (x *AccessPolicySpec) GetSourceSelector() []*v1.IdentitySelector

func (*AccessPolicySpec) MarshalJSON

func (this *AccessPolicySpec) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for AccessPolicySpec

func (*AccessPolicySpec) ProtoMessage

func (*AccessPolicySpec) ProtoMessage()

func (*AccessPolicySpec) ProtoReflect

func (x *AccessPolicySpec) ProtoReflect() protoreflect.Message

func (*AccessPolicySpec) Reset

func (x *AccessPolicySpec) Reset()

func (*AccessPolicySpec) String

func (x *AccessPolicySpec) String() string

func (*AccessPolicySpec) UnmarshalJSON

func (this *AccessPolicySpec) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for AccessPolicySpec

type AccessPolicyStatus

type AccessPolicyStatus struct {

	// The most recent generation observed in the the AccessPolicy metadata.
	// If the `observedGeneration` does not match `metadata.generation`, Gloo Mesh has not processed the most
	// recent version of this resource.
	ObservedGeneration int64 `protobuf:"varint,1,opt,name=observed_generation,json=observedGeneration,proto3" json:"observed_generation,omitempty"`
	// The state of the overall resource.
	// It will only show accepted if it has been successfully applied to selected Destinations.
	State v1.ApprovalState `protobuf:"varint,2,opt,name=state,proto3,enum=common.mesh.gloo.solo.io.ApprovalState" json:"state,omitempty"`
	// The status of the AccessPolicy for each Destination to which it has been applied.
	// An AccessPolicy may be accepted for some Destinations and rejected for others.
	Destinations map[string]*ApprovalStatus `` /* 165-byte string literal not displayed */
	// The list of Workloads to which this policy has been applied.
	Workloads []string `protobuf:"bytes,4,rep,name=workloads,proto3" json:"workloads,omitempty"`
	// Any errors found while processing this generation of the resource.
	Errors []string `protobuf:"bytes,5,rep,name=errors,proto3" json:"errors,omitempty"`
	// contains filtered or unexported fields
}

func (*AccessPolicyStatus) DeepCopyInto

func (in *AccessPolicyStatus) DeepCopyInto(out *AccessPolicyStatus)

DeepCopyInto for the AccessPolicy.Status

func (*AccessPolicyStatus) Descriptor deprecated

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

Deprecated: Use AccessPolicyStatus.ProtoReflect.Descriptor instead.

func (*AccessPolicyStatus) Equal

func (m *AccessPolicyStatus) Equal(that interface{}) bool

Equal function

func (*AccessPolicyStatus) GetDestinations

func (x *AccessPolicyStatus) GetDestinations() map[string]*ApprovalStatus

func (*AccessPolicyStatus) GetErrors

func (x *AccessPolicyStatus) GetErrors() []string

func (*AccessPolicyStatus) GetObservedGeneration

func (x *AccessPolicyStatus) GetObservedGeneration() int64

func (*AccessPolicyStatus) GetState

func (x *AccessPolicyStatus) GetState() v1.ApprovalState

func (*AccessPolicyStatus) GetWorkloads

func (x *AccessPolicyStatus) GetWorkloads() []string

func (*AccessPolicyStatus) MarshalJSON

func (this *AccessPolicyStatus) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for AccessPolicyStatus

func (*AccessPolicyStatus) ProtoMessage

func (*AccessPolicyStatus) ProtoMessage()

func (*AccessPolicyStatus) ProtoReflect

func (x *AccessPolicyStatus) ProtoReflect() protoreflect.Message

func (*AccessPolicyStatus) Reset

func (x *AccessPolicyStatus) Reset()

func (*AccessPolicyStatus) String

func (x *AccessPolicyStatus) String() string

func (*AccessPolicyStatus) UnmarshalJSON

func (this *AccessPolicyStatus) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for AccessPolicyStatus

type AccessPolicyStatusWriter

type AccessPolicyStatusWriter interface {
	// Update updates the fields corresponding to the status subresource for the
	// given AccessPolicy object.
	UpdateAccessPolicyStatus(ctx context.Context, obj *AccessPolicy, opts ...client.UpdateOption) error

	// Patch patches the given AccessPolicy object's subresource.
	PatchAccessPolicyStatus(ctx context.Context, obj *AccessPolicy, patch client.Patch, opts ...client.PatchOption) error
}

StatusWriter knows how to update status subresource of a AccessPolicy object.

type AccessPolicyTransitionFunction

type AccessPolicyTransitionFunction func(existing, desired *AccessPolicy) error

AccessPolicyTransitionFunction instructs the AccessPolicyWriter how to transition between an existing AccessPolicy object and a desired on an Upsert

type AccessPolicyWriter

type AccessPolicyWriter interface {
	// Create saves the AccessPolicy object.
	CreateAccessPolicy(ctx context.Context, obj *AccessPolicy, opts ...client.CreateOption) error

	// Delete deletes the AccessPolicy object.
	DeleteAccessPolicy(ctx context.Context, key client.ObjectKey, opts ...client.DeleteOption) error

	// Update updates the given AccessPolicy object.
	UpdateAccessPolicy(ctx context.Context, obj *AccessPolicy, opts ...client.UpdateOption) error

	// Patch patches the given AccessPolicy object.
	PatchAccessPolicy(ctx context.Context, obj *AccessPolicy, patch client.Patch, opts ...client.PatchOption) error

	// DeleteAllOf deletes all AccessPolicy objects matching the given options.
	DeleteAllOfAccessPolicy(ctx context.Context, opts ...client.DeleteAllOfOption) error

	// Create or Update the AccessPolicy object.
	UpsertAccessPolicy(ctx context.Context, obj *AccessPolicy, transitionFuncs ...AccessPolicyTransitionFunction) error
}

Writer knows how to create, delete, and update AccessPolicys.

type Action added in v1.1.0

type Action struct {

	// Types that are assignable to ActionSpecifier:
	//	*Action_SourceCluster_
	//	*Action_DestinationCluster_
	//	*Action_RequestHeaders_
	//	*Action_RemoteAddress_
	//	*Action_GenericKey_
	//	*Action_HeaderValueMatch_
	//	*Action_Metadata
	ActionSpecifier isAction_ActionSpecifier `protobuf_oneof:"action_specifier"`
	// contains filtered or unexported fields
}

Copied directly from envoy https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/route/v3/route_components.proto#envoy-v3-api-msg-config-route-v3-ratelimit-action

func (*Action) Descriptor deprecated added in v1.1.0

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

Deprecated: Use Action.ProtoReflect.Descriptor instead.

func (*Action) Equal added in v1.1.0

func (m *Action) Equal(that interface{}) bool

Equal function

func (*Action) GetActionSpecifier added in v1.1.0

func (m *Action) GetActionSpecifier() isAction_ActionSpecifier

func (*Action) GetDestinationCluster added in v1.1.0

func (x *Action) GetDestinationCluster() *Action_DestinationCluster

func (*Action) GetGenericKey added in v1.1.0

func (x *Action) GetGenericKey() *Action_GenericKey

func (*Action) GetHeaderValueMatch added in v1.1.0

func (x *Action) GetHeaderValueMatch() *Action_HeaderValueMatch

func (*Action) GetMetadata added in v1.1.0

func (x *Action) GetMetadata() *MetaData

func (*Action) GetRemoteAddress added in v1.1.0

func (x *Action) GetRemoteAddress() *Action_RemoteAddress

func (*Action) GetRequestHeaders added in v1.1.0

func (x *Action) GetRequestHeaders() *Action_RequestHeaders

func (*Action) GetSourceCluster added in v1.1.0

func (x *Action) GetSourceCluster() *Action_SourceCluster

func (*Action) ProtoMessage added in v1.1.0

func (*Action) ProtoMessage()

func (*Action) ProtoReflect added in v1.1.0

func (x *Action) ProtoReflect() protoreflect.Message

func (*Action) Reset added in v1.1.0

func (x *Action) Reset()

func (*Action) String added in v1.1.0

func (x *Action) String() string

type Action_DestinationCluster added in v1.1.0

type Action_DestinationCluster struct {
	// contains filtered or unexported fields
}

The following descriptor entry is appended to the descriptor:

```

("destination_cluster", "<routed target cluster>")

```

Once a request matches against a route table rule, a routed cluster is determined by one of the following `route table configuration (envoy_api_msg_RouteConfiguration)` settings:

  • `cluster (envoy_api_field_route.RouteAction.cluster)` indicates the upstream cluster to route to.
  • `weighted_clusters (envoy_api_field_route.RouteAction.weighted_clusters)` chooses a cluster randomly from a set of clusters with attributed weight.
  • `cluster_header (envoy_api_field_route.RouteAction.cluster_header)` indicates which header in the request contains the target cluster.

func (*Action_DestinationCluster) Descriptor deprecated added in v1.1.0

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

Deprecated: Use Action_DestinationCluster.ProtoReflect.Descriptor instead.

func (*Action_DestinationCluster) Equal added in v1.1.0

func (m *Action_DestinationCluster) Equal(that interface{}) bool

Equal function

func (*Action_DestinationCluster) ProtoMessage added in v1.1.0

func (*Action_DestinationCluster) ProtoMessage()

func (*Action_DestinationCluster) ProtoReflect added in v1.1.0

func (*Action_DestinationCluster) Reset added in v1.1.0

func (x *Action_DestinationCluster) Reset()

func (*Action_DestinationCluster) String added in v1.1.0

func (x *Action_DestinationCluster) String() string

type Action_DestinationCluster_ added in v1.1.0

type Action_DestinationCluster_ struct {
	// Rate limit on destination cluster.
	DestinationCluster *Action_DestinationCluster `protobuf:"bytes,2,opt,name=destination_cluster,json=destinationCluster,proto3,oneof"`
}

type Action_GenericKey added in v1.1.0

type Action_GenericKey struct {

	// The value to use in the descriptor entry.
	DescriptorValue string `protobuf:"bytes,1,opt,name=descriptor_value,json=descriptorValue,proto3" json:"descriptor_value,omitempty"` // [(validate.rules).string.min_bytes = 1];
	// contains filtered or unexported fields
}

The following descriptor entry is appended to the descriptor:

```

("generic_key", "<descriptor_value>")

```

func (*Action_GenericKey) Descriptor deprecated added in v1.1.0

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

Deprecated: Use Action_GenericKey.ProtoReflect.Descriptor instead.

func (*Action_GenericKey) Equal added in v1.1.0

func (m *Action_GenericKey) Equal(that interface{}) bool

Equal function

func (*Action_GenericKey) GetDescriptorValue added in v1.1.0

func (x *Action_GenericKey) GetDescriptorValue() string

func (*Action_GenericKey) ProtoMessage added in v1.1.0

func (*Action_GenericKey) ProtoMessage()

func (*Action_GenericKey) ProtoReflect added in v1.1.0

func (x *Action_GenericKey) ProtoReflect() protoreflect.Message

func (*Action_GenericKey) Reset added in v1.1.0

func (x *Action_GenericKey) Reset()

func (*Action_GenericKey) String added in v1.1.0

func (x *Action_GenericKey) String() string

type Action_GenericKey_ added in v1.1.0

type Action_GenericKey_ struct {
	// Rate limit on a generic key.
	GenericKey *Action_GenericKey `protobuf:"bytes,5,opt,name=generic_key,json=genericKey,proto3,oneof"`
}

type Action_HeaderValueMatch added in v1.1.0

type Action_HeaderValueMatch struct {

	// The value to use in the descriptor entry.
	DescriptorValue string `protobuf:"bytes,1,opt,name=descriptor_value,json=descriptorValue,proto3" json:"descriptor_value,omitempty"` // [(validate.rules).string.min_bytes = 1];
	// If set to true, the action will append a descriptor entry when the
	// request matches the headers. If set to false, the action will append a
	// descriptor entry when the request does not match the headers. The
	// default value is true.
	ExpectMatch *wrappers.BoolValue `protobuf:"bytes,2,opt,name=expect_match,json=expectMatch,proto3" json:"expect_match,omitempty"`
	// Specifies a set of headers that the rate limit action should match
	// on. The action will check the request’s headers against all the
	// specified headers in the config. A match will happen if all the
	// headers in the config are present in the request with the same values
	// (or based on presence if the value field is not in the config).
	Headers []*Action_HeaderValueMatch_HeaderMatcher `protobuf:"bytes,3,rep,name=headers,proto3" json:"headers,omitempty"` // [(validate.rules).repeated .min_items = 1];
	// contains filtered or unexported fields
}

The following descriptor entry is appended to the descriptor:

```

("header_match", "<descriptor_value>")

```

func (*Action_HeaderValueMatch) Descriptor deprecated added in v1.1.0

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

Deprecated: Use Action_HeaderValueMatch.ProtoReflect.Descriptor instead.

func (*Action_HeaderValueMatch) Equal added in v1.1.0

func (m *Action_HeaderValueMatch) Equal(that interface{}) bool

Equal function

func (*Action_HeaderValueMatch) GetDescriptorValue added in v1.1.0

func (x *Action_HeaderValueMatch) GetDescriptorValue() string

func (*Action_HeaderValueMatch) GetExpectMatch added in v1.1.0

func (x *Action_HeaderValueMatch) GetExpectMatch() *wrappers.BoolValue

func (*Action_HeaderValueMatch) GetHeaders added in v1.1.0

func (*Action_HeaderValueMatch) ProtoMessage added in v1.1.0

func (*Action_HeaderValueMatch) ProtoMessage()

func (*Action_HeaderValueMatch) ProtoReflect added in v1.1.0

func (x *Action_HeaderValueMatch) ProtoReflect() protoreflect.Message

func (*Action_HeaderValueMatch) Reset added in v1.1.0

func (x *Action_HeaderValueMatch) Reset()

func (*Action_HeaderValueMatch) String added in v1.1.0

func (x *Action_HeaderValueMatch) String() string

type Action_HeaderValueMatch_ added in v1.1.0

type Action_HeaderValueMatch_ struct {
	// Rate limit on the existence of request headers.
	HeaderValueMatch *Action_HeaderValueMatch `protobuf:"bytes,6,opt,name=header_value_match,json=headerValueMatch,proto3,oneof"`
}

type Action_HeaderValueMatch_HeaderMatcher added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher struct {

	// Specifies the name of the header in the request.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // [(validate.rules).string.min_bytes = 1];
	// Specifies how the header match will be performed to route the request.
	//
	// Types that are assignable to HeaderMatchSpecifier:
	//	*Action_HeaderValueMatch_HeaderMatcher_ExactMatch
	//	*Action_HeaderValueMatch_HeaderMatcher_RegexMatch
	//	*Action_HeaderValueMatch_HeaderMatcher_RangeMatch
	//	*Action_HeaderValueMatch_HeaderMatcher_PresentMatch
	//	*Action_HeaderValueMatch_HeaderMatcher_PrefixMatch
	//	*Action_HeaderValueMatch_HeaderMatcher_SuffixMatch
	HeaderMatchSpecifier isAction_HeaderValueMatch_HeaderMatcher_HeaderMatchSpecifier `protobuf_oneof:"header_match_specifier"`
	// If specified, the match result will be inverted before checking. Defaults to false.
	//
	// Examples:
	//
	// * The regex *\d{3}* does not match the value *1234*, so it will match when inverted.
	// * The range [-10,0) will match the value -1, so it will not match when inverted.
	InvertMatch bool `protobuf:"varint,8,opt,name=invert_match,json=invertMatch,proto3" json:"invert_match,omitempty"`
	// contains filtered or unexported fields
}

func (*Action_HeaderValueMatch_HeaderMatcher) Descriptor deprecated added in v1.1.0

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

Deprecated: Use Action_HeaderValueMatch_HeaderMatcher.ProtoReflect.Descriptor instead.

func (*Action_HeaderValueMatch_HeaderMatcher) Equal added in v1.1.0

func (m *Action_HeaderValueMatch_HeaderMatcher) Equal(that interface{}) bool

Equal function

func (*Action_HeaderValueMatch_HeaderMatcher) GetExactMatch added in v1.1.0

func (x *Action_HeaderValueMatch_HeaderMatcher) GetExactMatch() string

func (*Action_HeaderValueMatch_HeaderMatcher) GetHeaderMatchSpecifier added in v1.1.0

func (m *Action_HeaderValueMatch_HeaderMatcher) GetHeaderMatchSpecifier() isAction_HeaderValueMatch_HeaderMatcher_HeaderMatchSpecifier

func (*Action_HeaderValueMatch_HeaderMatcher) GetInvertMatch added in v1.1.0

func (x *Action_HeaderValueMatch_HeaderMatcher) GetInvertMatch() bool

func (*Action_HeaderValueMatch_HeaderMatcher) GetName added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher) GetPrefixMatch added in v1.1.0

func (x *Action_HeaderValueMatch_HeaderMatcher) GetPrefixMatch() string

func (*Action_HeaderValueMatch_HeaderMatcher) GetPresentMatch added in v1.1.0

func (x *Action_HeaderValueMatch_HeaderMatcher) GetPresentMatch() bool

func (*Action_HeaderValueMatch_HeaderMatcher) GetRangeMatch added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher) GetRegexMatch added in v1.1.0

func (x *Action_HeaderValueMatch_HeaderMatcher) GetRegexMatch() string

func (*Action_HeaderValueMatch_HeaderMatcher) GetSuffixMatch added in v1.1.0

func (x *Action_HeaderValueMatch_HeaderMatcher) GetSuffixMatch() string

func (*Action_HeaderValueMatch_HeaderMatcher) ProtoMessage added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher) ProtoMessage()

func (*Action_HeaderValueMatch_HeaderMatcher) ProtoReflect added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher) Reset added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher) String added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher_ExactMatch added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher_ExactMatch struct {
	// If specified, header match will be performed based on the value of the header.
	ExactMatch string `protobuf:"bytes,4,opt,name=exact_match,json=exactMatch,proto3,oneof"`
}

type Action_HeaderValueMatch_HeaderMatcher_Int64Range added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher_Int64Range struct {

	// start of the range (inclusive)
	Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"`
	// end of the range (exclusive)
	End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`
	// contains filtered or unexported fields
}

Specifies the int64 start and end of the range using half-open interval semantics [start, end).

func (*Action_HeaderValueMatch_HeaderMatcher_Int64Range) Descriptor deprecated added in v1.1.0

Deprecated: Use Action_HeaderValueMatch_HeaderMatcher_Int64Range.ProtoReflect.Descriptor instead.

func (*Action_HeaderValueMatch_HeaderMatcher_Int64Range) Equal added in v1.1.0

func (m *Action_HeaderValueMatch_HeaderMatcher_Int64Range) Equal(that interface{}) bool

Equal function

func (*Action_HeaderValueMatch_HeaderMatcher_Int64Range) GetEnd added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher_Int64Range) GetStart added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher_Int64Range) ProtoMessage added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher_Int64Range) ProtoReflect added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher_Int64Range) Reset added in v1.1.0

func (*Action_HeaderValueMatch_HeaderMatcher_Int64Range) String added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher_PrefixMatch added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher_PrefixMatch struct {
	// If specified, header match will be performed based on the prefix of the header value.
	// Note: empty prefix is not allowed, please use present_match instead.
	//
	// Examples:
	//
	// * The prefix *abcd* matches the value *abcdxyz*, but not for *abcxyz*.
	PrefixMatch string `protobuf:"bytes,9,opt,name=prefix_match,json=prefixMatch,proto3,oneof"` // [(validate.rules).string.min_bytes = 1];
}

type Action_HeaderValueMatch_HeaderMatcher_PresentMatch added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher_PresentMatch struct {
	// If specified, header match will be performed based on whether the header is in the
	// request.
	PresentMatch bool `protobuf:"varint,7,opt,name=present_match,json=presentMatch,proto3,oneof"`
}

type Action_HeaderValueMatch_HeaderMatcher_RangeMatch added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher_RangeMatch struct {
	// If specified, header match will be performed based on range.
	// The rule will match if the request header value is within this range.
	// The entire request header value must represent an integer in base 10 notation: consisting of
	// an optional plus or minus sign followed by a sequence of digits. The rule will not match if
	// the header value does not represent an integer. Match will fail for empty values, floating
	// point numbers or if only a subsequence of the header value is an integer.
	//
	// Examples:
	//
	// * For range [-10,0), route will match for header value -1, but not for 0, "somestring", 10.9,
	//   "-1somestring"
	RangeMatch *Action_HeaderValueMatch_HeaderMatcher_Int64Range `protobuf:"bytes,6,opt,name=range_match,json=rangeMatch,proto3,oneof"`
}

type Action_HeaderValueMatch_HeaderMatcher_RegexMatch added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher_RegexMatch struct {
	// If specified, this regex string is a regular expression rule which implies the entire request
	// header value must match the regex. The rule will not match if only a subsequence of the
	// request header value matches the regex. The regex grammar used in the value field is defined
	// `(here)[https://en.cppreference.com/w/cpp/regex/ecmascript]`.
	//
	// Examples:
	//
	// * The regex *\d{3}* matches the value *123*
	// * The regex *\d{3}* does not match the value *1234*
	// * The regex *\d{3}* does not match the value *123.456*
	RegexMatch string `protobuf:"bytes,5,opt,name=regex_match,json=regexMatch,proto3,oneof"` // [(validate.rules).string.max_bytes = 1024];
}

type Action_HeaderValueMatch_HeaderMatcher_SuffixMatch added in v1.1.0

type Action_HeaderValueMatch_HeaderMatcher_SuffixMatch struct {
	// If specified, header match will be performed based on the suffix of the header value.
	// Note: empty suffix is not allowed, please use present_match instead.
	//
	// Examples:
	//
	// * The suffix *abcd* matches the value *xyzabcd*, but not for *xyzbcd*.
	SuffixMatch string `protobuf:"bytes,10,opt,name=suffix_match,json=suffixMatch,proto3,oneof"` // [(validate.rules).string.min_bytes = 1];
}

type Action_Metadata added in v1.1.0

type Action_Metadata struct {
	// Rate limit on metadata.
	Metadata *MetaData `protobuf:"bytes,8,opt,name=metadata,proto3,oneof"`
}

type Action_RemoteAddress added in v1.1.0

type Action_RemoteAddress struct {
	// contains filtered or unexported fields
}

The following descriptor entry is appended to the descriptor and is populated using the trusted address from `x-forwarded-for (config_http_conn_man_headers_x-forwarded-for)`:

```

("remote_address", "<trusted address from x-forwarded-for>")

```

func (*Action_RemoteAddress) Descriptor deprecated added in v1.1.0

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

Deprecated: Use Action_RemoteAddress.ProtoReflect.Descriptor instead.

func (*Action_RemoteAddress) Equal added in v1.1.0

func (m *Action_RemoteAddress) Equal(that interface{}) bool

Equal function

func (*Action_RemoteAddress) ProtoMessage added in v1.1.0

func (*Action_RemoteAddress) ProtoMessage()

func (*Action_RemoteAddress) ProtoReflect added in v1.1.0

func (x *Action_RemoteAddress) ProtoReflect() protoreflect.Message

func (*Action_RemoteAddress) Reset added in v1.1.0

func (x *Action_RemoteAddress) Reset()

func (*Action_RemoteAddress) String added in v1.1.0

func (x *Action_RemoteAddress) String() string

type Action_RemoteAddress_ added in v1.1.0

type Action_RemoteAddress_ struct {
	// Rate limit on remote address.
	RemoteAddress *Action_RemoteAddress `protobuf:"bytes,4,opt,name=remote_address,json=remoteAddress,proto3,oneof"`
}

type Action_RequestHeaders added in v1.1.0

type Action_RequestHeaders struct {

	// The header name to be queried from the request headers. The header’s
	// value is used to populate the value of the descriptor entry for the
	// descriptor_key.
	HeaderName string `protobuf:"bytes,1,opt,name=header_name,json=headerName,proto3" json:"header_name,omitempty"` // [(validate.rules).string.min_bytes = 1];
	// The key to use in the descriptor entry.
	DescriptorKey string `protobuf:"bytes,2,opt,name=descriptor_key,json=descriptorKey,proto3" json:"descriptor_key,omitempty"` // [(validate.rules).string.min_bytes = 1];
	// contains filtered or unexported fields
}

The following descriptor entry is appended when a header contains a key that matches the *header_name*:

```

("<descriptor_key>", "<header_value_queried_from_header>")

```

func (*Action_RequestHeaders) Descriptor deprecated added in v1.1.0

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

Deprecated: Use Action_RequestHeaders.ProtoReflect.Descriptor instead.

func (*Action_RequestHeaders) Equal added in v1.1.0

func (m *Action_RequestHeaders) Equal(that interface{}) bool

Equal function

func (*Action_RequestHeaders) GetDescriptorKey added in v1.1.0

func (x *Action_RequestHeaders) GetDescriptorKey() string

func (*Action_RequestHeaders) GetHeaderName added in v1.1.0

func (x *Action_RequestHeaders) GetHeaderName() string

func (*Action_RequestHeaders) ProtoMessage added in v1.1.0

func (*Action_RequestHeaders) ProtoMessage()

func (*Action_RequestHeaders) ProtoReflect added in v1.1.0

func (x *Action_RequestHeaders) ProtoReflect() protoreflect.Message

func (*Action_RequestHeaders) Reset added in v1.1.0

func (x *Action_RequestHeaders) Reset()

func (*Action_RequestHeaders) String added in v1.1.0

func (x *Action_RequestHeaders) String() string

type Action_RequestHeaders_ added in v1.1.0

type Action_RequestHeaders_ struct {
	// Rate limit on request headers.
	RequestHeaders *Action_RequestHeaders `protobuf:"bytes,3,opt,name=request_headers,json=requestHeaders,proto3,oneof"`
}

type Action_SourceCluster added in v1.1.0

type Action_SourceCluster struct {
	// contains filtered or unexported fields
}

The following descriptor entry is appended to the descriptor:

```

("source_cluster", "<local service cluster>")

```

<local service cluster> is derived from the :option:`--service-cluster` option.

func (*Action_SourceCluster) Descriptor deprecated added in v1.1.0

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

Deprecated: Use Action_SourceCluster.ProtoReflect.Descriptor instead.

func (*Action_SourceCluster) Equal added in v1.1.0

func (m *Action_SourceCluster) Equal(that interface{}) bool

Equal function

func (*Action_SourceCluster) ProtoMessage added in v1.1.0

func (*Action_SourceCluster) ProtoMessage()

func (*Action_SourceCluster) ProtoReflect added in v1.1.0

func (x *Action_SourceCluster) ProtoReflect() protoreflect.Message

func (*Action_SourceCluster) Reset added in v1.1.0

func (x *Action_SourceCluster) Reset()

func (*Action_SourceCluster) String added in v1.1.0

func (x *Action_SourceCluster) String() string

type Action_SourceCluster_ added in v1.1.0

type Action_SourceCluster_ struct {
	// Rate limit on source cluster.
	SourceCluster *Action_SourceCluster `protobuf:"bytes,1,opt,name=source_cluster,json=sourceCluster,proto3,oneof"`
}

type AppliedTrafficPolicy added in v1.1.0

type AppliedTrafficPolicy struct {

	// Reference to the TrafficPolicy object.
	Ref *v1.ObjectRef `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"`
	// The observed generation of the accepted TrafficPolicy.
	ObservedGeneration int64 `protobuf:"varint,2,opt,name=observedGeneration,proto3" json:"observedGeneration,omitempty"`
	// The spec of the last known valid TrafficPolicy.
	Spec *TrafficPolicySpec `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"`
	// The list of routes, to which the TrafficPolicy applies, as selected by their labels,
	// represented by their configured Route Name.
	// If no route name is specified on a route, the route's URI matcher value is used instead.
	// Value is "*" if the TrafficPolicy applies to all routes.
	Routes []string `protobuf:"bytes,4,rep,name=routes,proto3" json:"routes,omitempty"`
	// contains filtered or unexported fields
}

Describes a TrafficPolicy({{< versioned_link_path fromRoot="/reference/api/github.com.solo-io.gloo-mesh.api.networking.v1.traffic_policy" >}}) that applies to the resource. If an existing TrafficPolicy becomes invalid, the last valid applied TrafficPolicy will be used.

func (*AppliedTrafficPolicy) Descriptor deprecated added in v1.1.0

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

Deprecated: Use AppliedTrafficPolicy.ProtoReflect.Descriptor instead.

func (*AppliedTrafficPolicy) Equal added in v1.1.0

func (m *AppliedTrafficPolicy) Equal(that interface{}) bool

Equal function

func (*AppliedTrafficPolicy) GetObservedGeneration added in v1.1.0

func (x *AppliedTrafficPolicy) GetObservedGeneration() int64

func (*AppliedTrafficPolicy) GetRef added in v1.1.0

func (x *AppliedTrafficPolicy) GetRef() *v1.ObjectRef

func (*AppliedTrafficPolicy) GetRoutes added in v1.1.0

func (x *AppliedTrafficPolicy) GetRoutes() []string

func (*AppliedTrafficPolicy) GetSpec added in v1.1.0

func (*AppliedTrafficPolicy) ProtoMessage added in v1.1.0

func (*AppliedTrafficPolicy) ProtoMessage()

func (*AppliedTrafficPolicy) ProtoReflect added in v1.1.0

func (x *AppliedTrafficPolicy) ProtoReflect() protoreflect.Message

func (*AppliedTrafficPolicy) Reset added in v1.1.0

func (x *AppliedTrafficPolicy) Reset()

func (*AppliedTrafficPolicy) String added in v1.1.0

func (x *AppliedTrafficPolicy) String() string

type ApprovalStatus

type ApprovalStatus struct {

	// Represents the order in which the policy
	// was accepted and applied to a discovery resource. The first accepted policy
	// will have an acceptance_order of 0, the second 1, etc.
	// When conflicts are detected in the system,
	// the Policy with the lowest acceptance_order
	// will be chosen and all other conflicting policies will be rejected.
	AcceptanceOrder uint32 `protobuf:"varint,1,opt,name=acceptance_order,json=acceptanceOrder,proto3" json:"acceptance_order,omitempty"`
	// The result of attempting to apply the policy to the discovery resource.
	State v1.ApprovalState `protobuf:"varint,2,opt,name=state,proto3,enum=common.mesh.gloo.solo.io.ApprovalState" json:"state,omitempty"`
	// Any errors observed which prevented the resource from being Accepted.
	Errors []string `protobuf:"bytes,3,rep,name=errors,proto3" json:"errors,omitempty"`
	// Any warnings observed while processing the resource.
	Warnings []string `protobuf:"bytes,4,rep,name=warnings,proto3" json:"warnings,omitempty"`
	// contains filtered or unexported fields
}

The approval status of a policy that has been applied to a discovery resource.

func (*ApprovalStatus) Descriptor deprecated

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

Deprecated: Use ApprovalStatus.ProtoReflect.Descriptor instead.

func (*ApprovalStatus) Equal

func (m *ApprovalStatus) Equal(that interface{}) bool

Equal function

func (*ApprovalStatus) GetAcceptanceOrder

func (x *ApprovalStatus) GetAcceptanceOrder() uint32

func (*ApprovalStatus) GetErrors

func (x *ApprovalStatus) GetErrors() []string

func (*ApprovalStatus) GetState

func (x *ApprovalStatus) GetState() v1.ApprovalState

func (*ApprovalStatus) GetWarnings added in v1.1.0

func (x *ApprovalStatus) GetWarnings() []string

func (*ApprovalStatus) ProtoMessage

func (*ApprovalStatus) ProtoMessage()

func (*ApprovalStatus) ProtoReflect

func (x *ApprovalStatus) ProtoReflect() protoreflect.Message

func (*ApprovalStatus) Reset

func (x *ApprovalStatus) Reset()

func (*ApprovalStatus) String

func (x *ApprovalStatus) String() string

type Clientset

type Clientset interface {
	// clienset for the networking.mesh.gloo.solo.io/v1/v1 APIs
	TrafficPolicies() TrafficPolicyClient
	// clienset for the networking.mesh.gloo.solo.io/v1/v1 APIs
	AccessPolicies() AccessPolicyClient
	// clienset for the networking.mesh.gloo.solo.io/v1/v1 APIs
	VirtualMeshes() VirtualMeshClient
}

clienset for the networking.mesh.gloo.solo.io/v1 APIs

func NewClientset

func NewClientset(client client.Client) Clientset

func NewClientsetFromConfig

func NewClientsetFromConfig(cfg *rest.Config) (Clientset, error)

type DestinationPolicySpec added in v1.1.0

type DestinationPolicySpec struct {

	// Specify the Destinations (destinations) this DestinationPolicy applies to.
	// Omit to apply to all Destinations.
	DestinationSelector []*v1.DestinationSelector `protobuf:"bytes,2,rep,name=destination_selector,json=destinationSelector,proto3" json:"destination_selector,omitempty"`
	// Specify L7 routing and post-routing configuration.
	Policy *DestinationPolicySpec_Policy `protobuf:"bytes,4,opt,name=policy,proto3" json:"policy,omitempty"`
	// contains filtered or unexported fields
}

Applies L7 routing and post-routing configuration on selected network edges.

func (*DestinationPolicySpec) Descriptor deprecated added in v1.1.0

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

Deprecated: Use DestinationPolicySpec.ProtoReflect.Descriptor instead.

func (*DestinationPolicySpec) Equal added in v1.1.0

func (m *DestinationPolicySpec) Equal(that interface{}) bool

Equal function

func (*DestinationPolicySpec) GetDestinationSelector added in v1.1.0

func (x *DestinationPolicySpec) GetDestinationSelector() []*v1.DestinationSelector

func (*DestinationPolicySpec) GetPolicy added in v1.1.0

func (*DestinationPolicySpec) ProtoMessage added in v1.1.0

func (*DestinationPolicySpec) ProtoMessage()

func (*DestinationPolicySpec) ProtoReflect added in v1.1.0

func (x *DestinationPolicySpec) ProtoReflect() protoreflect.Message

func (*DestinationPolicySpec) Reset added in v1.1.0

func (x *DestinationPolicySpec) Reset()

func (*DestinationPolicySpec) String added in v1.1.0

func (x *DestinationPolicySpec) String() string

type DestinationPolicySpec_Policy added in v1.1.0

type DestinationPolicySpec_Policy struct {

	// Configure [outlier detection](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/outlier) on the selected destinations.
	OutlierDetection *DestinationPolicySpec_Policy_OutlierDetection `protobuf:"bytes,11,opt,name=outlier_detection,json=outlierDetection,proto3" json:"outlier_detection,omitempty"`
	// Configure mTLS settings. If specified will override global default defined in Settings.
	Mtls *DestinationPolicySpec_Policy_MTLS `protobuf:"bytes,12,opt,name=mtls,proto3" json:"mtls,omitempty"`
	// contains filtered or unexported fields
}

Specify L7 routing and post-routing configuration.

func (*DestinationPolicySpec_Policy) Descriptor deprecated added in v1.1.0

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

Deprecated: Use DestinationPolicySpec_Policy.ProtoReflect.Descriptor instead.

func (*DestinationPolicySpec_Policy) Equal added in v1.1.0

func (m *DestinationPolicySpec_Policy) Equal(that interface{}) bool

Equal function

func (*DestinationPolicySpec_Policy) GetMtls added in v1.1.0

func (*DestinationPolicySpec_Policy) GetOutlierDetection added in v1.1.0

func (*DestinationPolicySpec_Policy) ProtoMessage added in v1.1.0

func (*DestinationPolicySpec_Policy) ProtoMessage()

func (*DestinationPolicySpec_Policy) ProtoReflect added in v1.1.0

func (*DestinationPolicySpec_Policy) Reset added in v1.1.0

func (x *DestinationPolicySpec_Policy) Reset()

func (*DestinationPolicySpec_Policy) String added in v1.1.0

type DestinationPolicySpec_Policy_MTLS added in v1.1.0

type DestinationPolicySpec_Policy_MTLS struct {

	// Istio TLS settings.
	Istio *DestinationPolicySpec_Policy_MTLS_Istio `protobuf:"bytes,1,opt,name=istio,proto3" json:"istio,omitempty"`
	// contains filtered or unexported fields
}

Configure mTLS settings on destinations. If specified this overrides the global default defined in Settings.

func (*DestinationPolicySpec_Policy_MTLS) Descriptor deprecated added in v1.1.0

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

Deprecated: Use DestinationPolicySpec_Policy_MTLS.ProtoReflect.Descriptor instead.

func (*DestinationPolicySpec_Policy_MTLS) Equal added in v1.1.0

func (m *DestinationPolicySpec_Policy_MTLS) Equal(that interface{}) bool

Equal function

func (*DestinationPolicySpec_Policy_MTLS) GetIstio added in v1.1.0

func (*DestinationPolicySpec_Policy_MTLS) ProtoMessage added in v1.1.0

func (*DestinationPolicySpec_Policy_MTLS) ProtoMessage()

func (*DestinationPolicySpec_Policy_MTLS) ProtoReflect added in v1.1.0

func (*DestinationPolicySpec_Policy_MTLS) Reset added in v1.1.0

func (*DestinationPolicySpec_Policy_MTLS) String added in v1.1.0

type DestinationPolicySpec_Policy_MTLS_Istio added in v1.1.0

type DestinationPolicySpec_Policy_MTLS_Istio struct {

	// TLS connection mode
	TlsMode DestinationPolicySpec_Policy_MTLS_Istio_TLSmode `` /* 165-byte string literal not displayed */
	// contains filtered or unexported fields
}

Istio TLS settings.

func (*DestinationPolicySpec_Policy_MTLS_Istio) Descriptor deprecated added in v1.1.0

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

Deprecated: Use DestinationPolicySpec_Policy_MTLS_Istio.ProtoReflect.Descriptor instead.

func (*DestinationPolicySpec_Policy_MTLS_Istio) Equal added in v1.1.0

func (m *DestinationPolicySpec_Policy_MTLS_Istio) Equal(that interface{}) bool

Equal function

func (*DestinationPolicySpec_Policy_MTLS_Istio) GetTlsMode added in v1.1.0

func (*DestinationPolicySpec_Policy_MTLS_Istio) ProtoMessage added in v1.1.0

func (*DestinationPolicySpec_Policy_MTLS_Istio) ProtoReflect added in v1.1.0

func (*DestinationPolicySpec_Policy_MTLS_Istio) Reset added in v1.1.0

func (*DestinationPolicySpec_Policy_MTLS_Istio) String added in v1.1.0

type DestinationPolicySpec_Policy_MTLS_Istio_TLSmode added in v1.1.0

type DestinationPolicySpec_Policy_MTLS_Istio_TLSmode int32

TLS connection mode. Enums correspond to those [defined here](https://github.com/istio/api/blob/00636152b9d9254b614828a65723840282a177d3/networking/v1beta1/destination_rule.proto#L886)

const (
	// Do not originate a TLS connection to the upstream endpoint.
	DestinationPolicySpec_Policy_MTLS_Istio_DISABLE DestinationPolicySpec_Policy_MTLS_Istio_TLSmode = 0
	// Originate a TLS connection to the upstream endpoint.
	DestinationPolicySpec_Policy_MTLS_Istio_SIMPLE DestinationPolicySpec_Policy_MTLS_Istio_TLSmode = 1
	// Secure connections to the upstream using mutual TLS by presenting
	// client certificates for authentication.
	// This mode uses certificates generated
	// automatically by Istio for mTLS authentication. When this mode is
	// used, all other fields in `ClientTLSSettings` should be empty.
	DestinationPolicySpec_Policy_MTLS_Istio_ISTIO_MUTUAL DestinationPolicySpec_Policy_MTLS_Istio_TLSmode = 2
)

func (DestinationPolicySpec_Policy_MTLS_Istio_TLSmode) Descriptor added in v1.1.0

func (DestinationPolicySpec_Policy_MTLS_Istio_TLSmode) Enum added in v1.1.0

func (DestinationPolicySpec_Policy_MTLS_Istio_TLSmode) EnumDescriptor deprecated added in v1.1.0

Deprecated: Use DestinationPolicySpec_Policy_MTLS_Istio_TLSmode.Descriptor instead.

func (DestinationPolicySpec_Policy_MTLS_Istio_TLSmode) Number added in v1.1.0

func (DestinationPolicySpec_Policy_MTLS_Istio_TLSmode) String added in v1.1.0

func (DestinationPolicySpec_Policy_MTLS_Istio_TLSmode) Type added in v1.1.0

type DestinationPolicySpec_Policy_OutlierDetection added in v1.1.0

type DestinationPolicySpec_Policy_OutlierDetection struct {

	// The number of errors before a host is ejected from the connection pool. A default will be used if not set.
	ConsecutiveErrors uint32 `protobuf:"varint,1,opt,name=consecutive_errors,json=consecutiveErrors,proto3" json:"consecutive_errors,omitempty"`
	// The time interval between ejection sweep analysis. Format: `1h`/`1m`/`1s`/`1ms`. Must be >= `1ms`. A default will be used if not set.
	Interval *duration.Duration `protobuf:"bytes,2,opt,name=interval,proto3" json:"interval,omitempty"`
	// The minimum ejection duration. Format: `1h`/`1m`/`1s`/`1ms`. Must be >= `1ms`. A default will be used if not set.
	BaseEjectionTime *duration.Duration `protobuf:"bytes,3,opt,name=base_ejection_time,json=baseEjectionTime,proto3" json:"base_ejection_time,omitempty"`
	// The maximum percentage of hosts that can be ejected from the load balancing pool.
	// At least one host will be ejected regardless of the value. Must be between 0 and 100. A default will be used if not set.
	MaxEjectionPercent uint32 `protobuf:"varint,4,opt,name=max_ejection_percent,json=maxEjectionPercent,proto3" json:"max_ejection_percent,omitempty"`
	// contains filtered or unexported fields
}

Configure [outlier detection](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/outlier) on the selected destinations.

func (*DestinationPolicySpec_Policy_OutlierDetection) Descriptor deprecated added in v1.1.0

Deprecated: Use DestinationPolicySpec_Policy_OutlierDetection.ProtoReflect.Descriptor instead.

func (*DestinationPolicySpec_Policy_OutlierDetection) Equal added in v1.1.0

func (m *DestinationPolicySpec_Policy_OutlierDetection) Equal(that interface{}) bool

Equal function

func (*DestinationPolicySpec_Policy_OutlierDetection) GetBaseEjectionTime added in v1.1.0

func (*DestinationPolicySpec_Policy_OutlierDetection) GetConsecutiveErrors added in v1.1.0

func (x *DestinationPolicySpec_Policy_OutlierDetection) GetConsecutiveErrors() uint32

func (*DestinationPolicySpec_Policy_OutlierDetection) GetInterval added in v1.1.0

func (*DestinationPolicySpec_Policy_OutlierDetection) GetMaxEjectionPercent added in v1.1.0

func (x *DestinationPolicySpec_Policy_OutlierDetection) GetMaxEjectionPercent() uint32

func (*DestinationPolicySpec_Policy_OutlierDetection) ProtoMessage added in v1.1.0

func (*DestinationPolicySpec_Policy_OutlierDetection) ProtoReflect added in v1.1.0

func (*DestinationPolicySpec_Policy_OutlierDetection) Reset added in v1.1.0

func (*DestinationPolicySpec_Policy_OutlierDetection) String added in v1.1.0

type DestinationPolicyStatus added in v1.1.0

type DestinationPolicyStatus struct {

	// The most recent generation observed in the the DestinationPolicy metadata.
	// If the `observedGeneration` does not match `metadata.generation`, Gloo Mesh has not processed the most
	// recent version of this resource.
	ObservedGeneration int64 `protobuf:"varint,1,opt,name=observed_generation,json=observedGeneration,proto3" json:"observed_generation,omitempty"`
	// The state of the overall resource.
	// It will only show accepted if it has been successfully applied to all selected Destinations.
	State v1.ApprovalState `protobuf:"varint,2,opt,name=state,proto3,enum=common.mesh.gloo.solo.io.ApprovalState" json:"state,omitempty"`
	// Any errors found while processing this generation of the resource.
	Errors []string `protobuf:"bytes,3,rep,name=errors,proto3" json:"errors,omitempty"`
	// contains filtered or unexported fields
}

func (*DestinationPolicyStatus) Descriptor deprecated added in v1.1.0

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

Deprecated: Use DestinationPolicyStatus.ProtoReflect.Descriptor instead.

func (*DestinationPolicyStatus) Equal added in v1.1.0

func (m *DestinationPolicyStatus) Equal(that interface{}) bool

Equal function

func (*DestinationPolicyStatus) GetErrors added in v1.1.0

func (x *DestinationPolicyStatus) GetErrors() []string

func (*DestinationPolicyStatus) GetObservedGeneration added in v1.1.0

func (x *DestinationPolicyStatus) GetObservedGeneration() int64

func (*DestinationPolicyStatus) GetState added in v1.1.0

func (*DestinationPolicyStatus) ProtoMessage added in v1.1.0

func (*DestinationPolicyStatus) ProtoMessage()

func (*DestinationPolicyStatus) ProtoReflect added in v1.1.0

func (x *DestinationPolicyStatus) ProtoReflect() protoreflect.Message

func (*DestinationPolicyStatus) Reset added in v1.1.0

func (x *DestinationPolicyStatus) Reset()

func (*DestinationPolicyStatus) String added in v1.1.0

func (x *DestinationPolicyStatus) String() string

type GatewayRoutes added in v1.1.0

type GatewayRoutes struct {

	// The list of routes selected. If no routeLabelMatcher was provided,
	// the value "*" will be used to indicate all routes were selected.
	Routes []string `protobuf:"bytes,4,rep,name=routes,proto3" json:"routes,omitempty"`
	// contains filtered or unexported fields
}

Represents a specific gateway resource and which routes on that resource have been selected

func (*GatewayRoutes) Descriptor deprecated added in v1.1.0

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

Deprecated: Use GatewayRoutes.ProtoReflect.Descriptor instead.

func (*GatewayRoutes) Equal added in v1.1.0

func (m *GatewayRoutes) Equal(that interface{}) bool

Equal function

func (*GatewayRoutes) GetRoutes added in v1.1.0

func (x *GatewayRoutes) GetRoutes() []string

func (*GatewayRoutes) ProtoMessage added in v1.1.0

func (*GatewayRoutes) ProtoMessage()

func (*GatewayRoutes) ProtoReflect added in v1.1.0

func (x *GatewayRoutes) ProtoReflect() protoreflect.Message

func (*GatewayRoutes) Reset added in v1.1.0

func (x *GatewayRoutes) Reset()

func (*GatewayRoutes) String added in v1.1.0

func (x *GatewayRoutes) String() string

type HeaderManipulation added in v1.1.0

type HeaderManipulation struct {

	// HTTP headers to remove before returning a response to the caller.
	RemoveResponseHeaders []string `` /* 126-byte string literal not displayed */
	// Additional HTTP headers to add before returning a response to the caller.
	AppendResponseHeaders map[string]string `` /* 214-byte string literal not displayed */
	// HTTP headers to remove before forwarding a request to the destination service.
	RemoveRequestHeaders []string `protobuf:"bytes,3,rep,name=remove_request_headers,json=removeRequestHeaders,proto3" json:"remove_request_headers,omitempty"`
	// Additional HTTP headers to add before forwarding a request to the destination service.
	AppendRequestHeaders map[string]string `` /* 211-byte string literal not displayed */
	// contains filtered or unexported fields
}

Specify modifications to request and response headers.

func (*HeaderManipulation) Descriptor deprecated added in v1.1.0

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

Deprecated: Use HeaderManipulation.ProtoReflect.Descriptor instead.

func (*HeaderManipulation) Equal added in v1.1.0

func (m *HeaderManipulation) Equal(that interface{}) bool

Equal function

func (*HeaderManipulation) GetAppendRequestHeaders added in v1.1.0

func (x *HeaderManipulation) GetAppendRequestHeaders() map[string]string

func (*HeaderManipulation) GetAppendResponseHeaders added in v1.1.0

func (x *HeaderManipulation) GetAppendResponseHeaders() map[string]string

func (*HeaderManipulation) GetRemoveRequestHeaders added in v1.1.0

func (x *HeaderManipulation) GetRemoveRequestHeaders() []string

func (*HeaderManipulation) GetRemoveResponseHeaders added in v1.1.0

func (x *HeaderManipulation) GetRemoveResponseHeaders() []string

func (*HeaderManipulation) ProtoMessage added in v1.1.0

func (*HeaderManipulation) ProtoMessage()

func (*HeaderManipulation) ProtoReflect added in v1.1.0

func (x *HeaderManipulation) ProtoReflect() protoreflect.Message

func (*HeaderManipulation) Reset added in v1.1.0

func (x *HeaderManipulation) Reset()

func (*HeaderManipulation) String added in v1.1.0

func (x *HeaderManipulation) String() string

type HeaderMatcher added in v1.1.0

type HeaderMatcher struct {

	// Specify the name of the header in the request.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Specify the value of the header. If the value is absent a request that
	// has the name header will match, regardless of the header’s value.
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// Specify whether the header value should be treated as regex.
	Regex bool `protobuf:"varint,3,opt,name=regex,proto3" json:"regex,omitempty"`
	//
	//If set to true, the result of the match will be inverted. Defaults to false.
	//
	//Examples:
	//
	//- name=foo, invert_match=true: matches if no header named `foo` is present
	//- name=foo, value=bar, invert_match=true: matches if no header named `foo` with value `bar` is present
	//- name=foo, value=“\d{3}“, regex=true, invert_match=true: matches if no header named `foo` with a value consisting of three integers is present.
	InvertMatch bool `protobuf:"varint,4,opt,name=invert_match,json=invertMatch,proto3" json:"invert_match,omitempty"`
	// contains filtered or unexported fields
}

Describes a matcher against HTTP request headers.

func (*HeaderMatcher) Descriptor deprecated added in v1.1.0

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

Deprecated: Use HeaderMatcher.ProtoReflect.Descriptor instead.

func (*HeaderMatcher) GetInvertMatch added in v1.1.0

func (x *HeaderMatcher) GetInvertMatch() bool

func (*HeaderMatcher) GetName added in v1.1.0

func (x *HeaderMatcher) GetName() string

func (*HeaderMatcher) GetRegex added in v1.1.0

func (x *HeaderMatcher) GetRegex() bool

func (*HeaderMatcher) GetValue added in v1.1.0

func (x *HeaderMatcher) GetValue() string

func (*HeaderMatcher) ProtoMessage added in v1.1.0

func (*HeaderMatcher) ProtoMessage()

func (*HeaderMatcher) ProtoReflect added in v1.1.0

func (x *HeaderMatcher) ProtoReflect() protoreflect.Message

func (*HeaderMatcher) Reset added in v1.1.0

func (x *HeaderMatcher) Reset()

func (*HeaderMatcher) String added in v1.1.0

func (x *HeaderMatcher) String() string

type HttpMatcher added in v1.1.0

type HttpMatcher struct {

	// The name assigned to a match. The match's name will be
	// concatenated with the parent route's name and will be logged in
	// the access logs for requests matching this route.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Specify match criteria against the targeted path.
	Uri *v1.StringMatch `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"`
	// Specify a set of headers which requests must match in entirety (all headers must match).
	Headers []*HeaderMatcher `protobuf:"bytes,5,rep,name=headers,proto3" json:"headers,omitempty"`
	// Specify a set of URL query parameters which requests must match in entirety (all query params must match).
	QueryParameters []*HttpMatcher_QueryParameterMatcher `protobuf:"bytes,6,rep,name=query_parameters,json=queryParameters,proto3" json:"query_parameters,omitempty"`
	// Specify an HTTP method to match against.
	Method string `protobuf:"bytes,7,opt,name=method,proto3" json:"method,omitempty"`
	// contains filtered or unexported fields
}

Specify HTTP request level match criteria. All specified conditions must be satisfied for a match to occur.

func (*HttpMatcher) Descriptor deprecated added in v1.1.0

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

Deprecated: Use HttpMatcher.ProtoReflect.Descriptor instead.

func (*HttpMatcher) GetHeaders added in v1.1.0

func (x *HttpMatcher) GetHeaders() []*HeaderMatcher

func (*HttpMatcher) GetMethod added in v1.1.0

func (x *HttpMatcher) GetMethod() string

func (*HttpMatcher) GetName added in v1.1.0

func (x *HttpMatcher) GetName() string

func (*HttpMatcher) GetQueryParameters added in v1.1.0

func (x *HttpMatcher) GetQueryParameters() []*HttpMatcher_QueryParameterMatcher

func (*HttpMatcher) GetUri added in v1.1.0

func (x *HttpMatcher) GetUri() *v1.StringMatch

func (*HttpMatcher) ProtoMessage added in v1.1.0

func (*HttpMatcher) ProtoMessage()

func (*HttpMatcher) ProtoReflect added in v1.1.0

func (x *HttpMatcher) ProtoReflect() protoreflect.Message

func (*HttpMatcher) Reset added in v1.1.0

func (x *HttpMatcher) Reset()

func (*HttpMatcher) String added in v1.1.0

func (x *HttpMatcher) String() string

type HttpMatcher_QueryParameterMatcher added in v1.1.0

type HttpMatcher_QueryParameterMatcher struct {

	// Specify the name of a key that must be present in the requested path's query string.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Specify the value of the query parameter keyed on `name`.
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// If true, treat `value` as a regular expression.
	Regex bool `protobuf:"varint,3,opt,name=regex,proto3" json:"regex,omitempty"`
	// contains filtered or unexported fields
}

Specify match criteria against the target URL's query parameters.

func (*HttpMatcher_QueryParameterMatcher) Descriptor deprecated added in v1.1.0

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

Deprecated: Use HttpMatcher_QueryParameterMatcher.ProtoReflect.Descriptor instead.

func (*HttpMatcher_QueryParameterMatcher) GetName added in v1.1.0

func (*HttpMatcher_QueryParameterMatcher) GetRegex added in v1.1.0

func (*HttpMatcher_QueryParameterMatcher) GetValue added in v1.1.0

func (*HttpMatcher_QueryParameterMatcher) ProtoMessage added in v1.1.0

func (*HttpMatcher_QueryParameterMatcher) ProtoMessage()

func (*HttpMatcher_QueryParameterMatcher) ProtoReflect added in v1.1.0

func (*HttpMatcher_QueryParameterMatcher) Reset added in v1.1.0

func (*HttpMatcher_QueryParameterMatcher) String added in v1.1.0

type MetaData added in v1.1.0

type MetaData struct {

	// Required. The key to use in the descriptor entry.
	DescriptorKey string `protobuf:"bytes,1,opt,name=descriptor_key,json=descriptorKey,proto3" json:"descriptor_key,omitempty"` // [(validate.rules).string = {min_len: 1}];
	// Required. Metadata struct that defines the key and path to retrieve the string value. A match will
	// only happen if the value in the metadata is of type string.
	MetadataKey *MetaData_MetadataKey `protobuf:"bytes,2,opt,name=metadata_key,json=metadataKey,proto3" json:"metadata_key,omitempty"` // [(validate.rules).message = {required: true}];
	// An optional value to use if *metadata_key* is empty. If not set and
	// no value is present under the metadata_key then no descriptor is generated.
	DefaultValue string `protobuf:"bytes,3,opt,name=default_value,json=defaultValue,proto3" json:"default_value,omitempty"`
	// Source of metadata
	Source MetaData_Source `protobuf:"varint,4,opt,name=source,proto3,enum=networking.mesh.gloo.solo.io.MetaData_Source" json:"source,omitempty"` // [(validate.rules).enum = {defined_only: true}];
	// contains filtered or unexported fields
}

The following descriptor entry is appended when the metadata contains a key value:

("<descriptor_key>", "<value_queried_from_metadata>")

func (*MetaData) Descriptor deprecated added in v1.1.0

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

Deprecated: Use MetaData.ProtoReflect.Descriptor instead.

func (*MetaData) Equal added in v1.1.0

func (m *MetaData) Equal(that interface{}) bool

Equal function

func (*MetaData) GetDefaultValue added in v1.1.0

func (x *MetaData) GetDefaultValue() string

func (*MetaData) GetDescriptorKey added in v1.1.0

func (x *MetaData) GetDescriptorKey() string

func (*MetaData) GetMetadataKey added in v1.1.0

func (x *MetaData) GetMetadataKey() *MetaData_MetadataKey

func (*MetaData) GetSource added in v1.1.0

func (x *MetaData) GetSource() MetaData_Source

func (*MetaData) ProtoMessage added in v1.1.0

func (*MetaData) ProtoMessage()

func (*MetaData) ProtoReflect added in v1.1.0

func (x *MetaData) ProtoReflect() protoreflect.Message

func (*MetaData) Reset added in v1.1.0

func (x *MetaData) Reset()

func (*MetaData) String added in v1.1.0

func (x *MetaData) String() string

type MetaData_MetadataKey added in v1.1.0

type MetaData_MetadataKey struct {

	// Required. The key name of Metadata to retrieve the Struct from the metadata.
	// Typically, it represents a builtin subsystem or custom extension.
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` // [(validate.rules).string = {min_len: 1}];
	// Must have at least one element. The path to retrieve the Value from the Struct. It can be a prefix or a full path,
	// e.g. “[prop, xyz]“ for a struct or “[prop, foo]“ for a string in the example,
	// which depends on the particular scenario.
	//
	// Note: Due to that only the key type segment is supported, the path can not specify a list
	// unless the list is the last segment.
	Path []*MetaData_MetadataKey_PathSegment `protobuf:"bytes,2,rep,name=path,proto3" json:"path,omitempty"` // [(validate.rules).repeated = {min_items: 1}];
	// contains filtered or unexported fields
}

MetadataKey provides a general interface using `key` and `path` to retrieve value from [`Metadata`](https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/core/v3/base.proto#envoy-v3-api-msg-config-core-v3-metadata).

For example, for the following Metadata:

```yaml filter_metadata:

envoy.xxx:
  prop:
    foo: bar
    xyz:
      hello: envoy

```

The following MetadataKey will retrieve a string value "bar" from the Metadata.

```yaml key: envoy.xxx path: - key: prop - key: foo ```

func (*MetaData_MetadataKey) Descriptor deprecated added in v1.1.0

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

Deprecated: Use MetaData_MetadataKey.ProtoReflect.Descriptor instead.

func (*MetaData_MetadataKey) Equal added in v1.1.0

func (m *MetaData_MetadataKey) Equal(that interface{}) bool

Equal function

func (*MetaData_MetadataKey) GetKey added in v1.1.0

func (x *MetaData_MetadataKey) GetKey() string

func (*MetaData_MetadataKey) GetPath added in v1.1.0

func (*MetaData_MetadataKey) ProtoMessage added in v1.1.0

func (*MetaData_MetadataKey) ProtoMessage()

func (*MetaData_MetadataKey) ProtoReflect added in v1.1.0

func (x *MetaData_MetadataKey) ProtoReflect() protoreflect.Message

func (*MetaData_MetadataKey) Reset added in v1.1.0

func (x *MetaData_MetadataKey) Reset()

func (*MetaData_MetadataKey) String added in v1.1.0

func (x *MetaData_MetadataKey) String() string

type MetaData_MetadataKey_PathSegment added in v1.1.0

type MetaData_MetadataKey_PathSegment struct {

	// Types that are assignable to Segment:
	//	*MetaData_MetadataKey_PathSegment_Key
	Segment isMetaData_MetadataKey_PathSegment_Segment `protobuf_oneof:"segment"`
	// contains filtered or unexported fields
}

Specifies the segment in a path to retrieve value from Metadata. Currently it is only supported to specify the key, i.e. field name, as one segment of a path.

func (*MetaData_MetadataKey_PathSegment) Descriptor deprecated added in v1.1.0

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

Deprecated: Use MetaData_MetadataKey_PathSegment.ProtoReflect.Descriptor instead.

func (*MetaData_MetadataKey_PathSegment) Equal added in v1.1.0

func (m *MetaData_MetadataKey_PathSegment) Equal(that interface{}) bool

Equal function

func (*MetaData_MetadataKey_PathSegment) GetKey added in v1.1.0

func (*MetaData_MetadataKey_PathSegment) GetSegment added in v1.1.0

func (m *MetaData_MetadataKey_PathSegment) GetSegment() isMetaData_MetadataKey_PathSegment_Segment

func (*MetaData_MetadataKey_PathSegment) ProtoMessage added in v1.1.0

func (*MetaData_MetadataKey_PathSegment) ProtoMessage()

func (*MetaData_MetadataKey_PathSegment) ProtoReflect added in v1.1.0

func (*MetaData_MetadataKey_PathSegment) Reset added in v1.1.0

func (*MetaData_MetadataKey_PathSegment) String added in v1.1.0

type MetaData_MetadataKey_PathSegment_Key added in v1.1.0

type MetaData_MetadataKey_PathSegment_Key struct {
	// Required. If specified, use the key to retrieve the value in a Struct.
	Key string `protobuf:"bytes,1,opt,name=key,proto3,oneof"` // [(validate.rules).string = {min_len: 1}];
}

type MetaData_Source added in v1.1.0

type MetaData_Source int32

func (MetaData_Source) Descriptor added in v1.1.0

func (MetaData_Source) Enum added in v1.1.0

func (x MetaData_Source) Enum() *MetaData_Source

func (MetaData_Source) EnumDescriptor deprecated added in v1.1.0

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

Deprecated: Use MetaData_Source.Descriptor instead.

func (MetaData_Source) Number added in v1.1.0

func (MetaData_Source) String added in v1.1.0

func (x MetaData_Source) String() string

func (MetaData_Source) Type added in v1.1.0

type MulticlusterAccessPolicyClient

type MulticlusterAccessPolicyClient interface {
	// Cluster returns a AccessPolicyClient for the given cluster
	Cluster(cluster string) (AccessPolicyClient, error)
}

Provides AccessPolicyClients for multiple clusters.

func NewMulticlusterAccessPolicyClient

func NewMulticlusterAccessPolicyClient(client multicluster.Client) MulticlusterAccessPolicyClient

type MulticlusterClientset

type MulticlusterClientset interface {
	// Cluster returns a Clientset for the given cluster
	Cluster(cluster string) (Clientset, error)
}

MulticlusterClientset for the networking.mesh.gloo.solo.io/v1 APIs

func NewMulticlusterClientset

func NewMulticlusterClientset(client multicluster.Client) MulticlusterClientset

type MulticlusterTrafficPolicyClient

type MulticlusterTrafficPolicyClient interface {
	// Cluster returns a TrafficPolicyClient for the given cluster
	Cluster(cluster string) (TrafficPolicyClient, error)
}

Provides TrafficPolicyClients for multiple clusters.

func NewMulticlusterTrafficPolicyClient

func NewMulticlusterTrafficPolicyClient(client multicluster.Client) MulticlusterTrafficPolicyClient

type MulticlusterVirtualMeshClient

type MulticlusterVirtualMeshClient interface {
	// Cluster returns a VirtualMeshClient for the given cluster
	Cluster(cluster string) (VirtualMeshClient, error)
}

Provides VirtualMeshClients for multiple clusters.

func NewMulticlusterVirtualMeshClient

func NewMulticlusterVirtualMeshClient(client multicluster.Client) MulticlusterVirtualMeshClient

type RateLimitActions added in v1.1.0

type RateLimitActions struct {

	// TODO: come up with descriptive names and comments for these fields
	Actions    []*Action `protobuf:"bytes,1,rep,name=actions,proto3" json:"actions,omitempty"`
	SetActions []*Action `protobuf:"bytes,2,rep,name=set_actions,json=setActions,proto3" json:"set_actions,omitempty"`
	// contains filtered or unexported fields
}

Each action and setAction in the lists maps part of the request (or its context) to a descriptor. The tuple or set of descriptors generated by the provided actions is sent to the rate limit server and matched against rate limit rules. Order matters on provided actions but not on setActions, e.g. the following actions: - actions:

  • requestHeaders: descriptorKey: account_id headerName: x-account-id
  • requestHeaders: descriptorKey: plan headerName: x-plan

define an ordered descriptor tuple like so: ('account_id', '<x-account-id value>'), ('plan', '<x-plan value>')

While the current form matches, the same tuple in reverse order would not match the following descriptor:

descriptors:

  • key: account_id descriptors:
  • key: plan value: BASIC rateLimit: requestsPerUnit: 1 unit: MINUTE
  • key: plan value: PLUS rateLimit: requestsPerUnit: 20 unit: MINUTE

Similarly, the following setActions: - setActions:

  • requestHeaders: descriptorKey: account_id headerName: x-account-id
  • requestHeaders: descriptorKey: plan headerName: x-plan

define an unordered descriptor set like so: {('account_id', '<x-account-id value>'), ('plan', '<x-plan value>')}

This set would match the following setDescriptor:

setDescriptors: - simpleDescriptors:

  • key: plan value: BASIC
  • key: account_id rateLimit: requestsPerUnit: 20 unit: MINUTE

It would also match the following setDescriptor which includes only a subset of the setActions enumerated:

setDescriptors: - simpleDescriptors:

  • key: account_id rateLimit: requestsPerUnit: 20 unit: MINUTE

It would even match the following setDescriptor. Any setActions list would match this setDescriptor which has simpleDescriptors omitted entirely:

setDescriptors:

  • rateLimit: requestsPerUnit: 20 unit: MINUTE

func (*RateLimitActions) Descriptor deprecated added in v1.1.0

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

Deprecated: Use RateLimitActions.ProtoReflect.Descriptor instead.

func (*RateLimitActions) Equal added in v1.1.0

func (m *RateLimitActions) Equal(that interface{}) bool

Equal function

func (*RateLimitActions) GetActions added in v1.1.0

func (x *RateLimitActions) GetActions() []*Action

func (*RateLimitActions) GetSetActions added in v1.1.0

func (x *RateLimitActions) GetSetActions() []*Action

func (*RateLimitActions) ProtoMessage added in v1.1.0

func (*RateLimitActions) ProtoMessage()

func (*RateLimitActions) ProtoReflect added in v1.1.0

func (x *RateLimitActions) ProtoReflect() protoreflect.Message

func (*RateLimitActions) Reset added in v1.1.0

func (x *RateLimitActions) Reset()

func (*RateLimitActions) String added in v1.1.0

func (x *RateLimitActions) String() string

type RateLimitRouteExtension added in v1.1.0

type RateLimitRouteExtension struct {

	// Whether or not to include rate limits as defined on the VirtualHost in addition to rate limits on the Route.
	IncludeVhRateLimits bool `protobuf:"varint,1,opt,name=include_vh_rate_limits,json=includeVhRateLimits,proto3" json:"include_vh_rate_limits,omitempty"`
	// Define individual rate limits here. Each rate limit will be evaluated, if any rate limit
	// would be throttled, the entire request returns a 429 (gets throttled)
	RateLimits []*RateLimitActions `protobuf:"bytes,2,rep,name=rate_limits,json=rateLimits,proto3" json:"rate_limits,omitempty"`
	// contains filtered or unexported fields
}

Use this field if you want to inline the Envoy rate limits for this Route. Note that this does not configure the rate limit server. If you are running Gloo Enterprise, you need to specify the server configuration via the appropriate field in the Gloo `Settings` resource. If you are running a custom rate limit server you need to configure it yourself.

func (*RateLimitRouteExtension) Descriptor deprecated added in v1.1.0

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

Deprecated: Use RateLimitRouteExtension.ProtoReflect.Descriptor instead.

func (*RateLimitRouteExtension) Equal added in v1.1.0

func (m *RateLimitRouteExtension) Equal(that interface{}) bool

Equal function

func (*RateLimitRouteExtension) GetIncludeVhRateLimits added in v1.1.0

func (x *RateLimitRouteExtension) GetIncludeVhRateLimits() bool

func (*RateLimitRouteExtension) GetRateLimits added in v1.1.0

func (x *RateLimitRouteExtension) GetRateLimits() []*RateLimitActions

func (*RateLimitRouteExtension) ProtoMessage added in v1.1.0

func (*RateLimitRouteExtension) ProtoMessage()

func (*RateLimitRouteExtension) ProtoReflect added in v1.1.0

func (x *RateLimitRouteExtension) ProtoReflect() protoreflect.Message

func (*RateLimitRouteExtension) Reset added in v1.1.0

func (x *RateLimitRouteExtension) Reset()

func (*RateLimitRouteExtension) String added in v1.1.0

func (x *RateLimitRouteExtension) String() string

type RequestLimit added in v1.1.0

type RequestLimit struct {
	Unit            RequestLimit_Unit `protobuf:"varint,1,opt,name=unit,proto3,enum=networking.mesh.gloo.solo.io.RequestLimit_Unit" json:"unit,omitempty"`
	RequestsPerUnit uint32            `protobuf:"varint,2,opt,name=requests_per_unit,json=requestsPerUnit,proto3" json:"requests_per_unit,omitempty"`
	// contains filtered or unexported fields
}

A `RateLimit` specifies the actual rate limit that will be used when there is a match.

func (*RequestLimit) Descriptor deprecated added in v1.1.0

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

Deprecated: Use RequestLimit.ProtoReflect.Descriptor instead.

func (*RequestLimit) Equal added in v1.1.0

func (m *RequestLimit) Equal(that interface{}) bool

Equal function

func (*RequestLimit) GetRequestsPerUnit added in v1.1.0

func (x *RequestLimit) GetRequestsPerUnit() uint32

func (*RequestLimit) GetUnit added in v1.1.0

func (x *RequestLimit) GetUnit() RequestLimit_Unit

func (*RequestLimit) ProtoMessage added in v1.1.0

func (*RequestLimit) ProtoMessage()

func (*RequestLimit) ProtoReflect added in v1.1.0

func (x *RequestLimit) ProtoReflect() protoreflect.Message

func (*RequestLimit) Reset added in v1.1.0

func (x *RequestLimit) Reset()

func (*RequestLimit) String added in v1.1.0

func (x *RequestLimit) String() string

type RequestLimit_Unit added in v1.1.0

type RequestLimit_Unit int32
const (
	RequestLimit_UNKNOWN RequestLimit_Unit = 0
	RequestLimit_SECOND  RequestLimit_Unit = 1
	RequestLimit_MINUTE  RequestLimit_Unit = 2
	RequestLimit_HOUR    RequestLimit_Unit = 3
	RequestLimit_DAY     RequestLimit_Unit = 4
)

func (RequestLimit_Unit) Descriptor added in v1.1.0

func (RequestLimit_Unit) Enum added in v1.1.0

func (RequestLimit_Unit) EnumDescriptor deprecated added in v1.1.0

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

Deprecated: Use RequestLimit_Unit.Descriptor instead.

func (RequestLimit_Unit) Number added in v1.1.0

func (RequestLimit_Unit) String added in v1.1.0

func (x RequestLimit_Unit) String() string

func (RequestLimit_Unit) Type added in v1.1.0

type RootCertificateAuthority added in v1.1.0

type RootCertificateAuthority struct {

	// Specify the source of the Root CA data which Gloo Mesh will use for the VirtualMesh.
	//
	// Types that are assignable to CaSource:
	//	*RootCertificateAuthority_Generated
	//	*RootCertificateAuthority_Secret
	CaSource isRootCertificateAuthority_CaSource `protobuf_oneof:"ca_source"`
	// contains filtered or unexported fields
}

Specify parameters for configuring the root certificate authority for a VirtualMesh.

func (*RootCertificateAuthority) Descriptor deprecated added in v1.1.0

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

Deprecated: Use RootCertificateAuthority.ProtoReflect.Descriptor instead.

func (*RootCertificateAuthority) Equal added in v1.1.0

func (m *RootCertificateAuthority) Equal(that interface{}) bool

Equal function

func (*RootCertificateAuthority) GetCaSource added in v1.1.0

func (m *RootCertificateAuthority) GetCaSource() isRootCertificateAuthority_CaSource

func (*RootCertificateAuthority) GetGenerated added in v1.1.0

func (x *RootCertificateAuthority) GetGenerated() *v11.CommonCertOptions

func (*RootCertificateAuthority) GetSecret added in v1.1.0

func (x *RootCertificateAuthority) GetSecret() *v1.ObjectRef

func (*RootCertificateAuthority) ProtoMessage added in v1.1.0

func (*RootCertificateAuthority) ProtoMessage()

func (*RootCertificateAuthority) ProtoReflect added in v1.1.0

func (x *RootCertificateAuthority) ProtoReflect() protoreflect.Message

func (*RootCertificateAuthority) Reset added in v1.1.0

func (x *RootCertificateAuthority) Reset()

func (*RootCertificateAuthority) String added in v1.1.0

func (x *RootCertificateAuthority) String() string

type RootCertificateAuthority_Generated added in v1.1.0

type RootCertificateAuthority_Generated struct {
	// Generate a self-signed root certificate with the given options.
	Generated *v11.CommonCertOptions `protobuf:"bytes,1,opt,name=generated,proto3,oneof"`
}

type RootCertificateAuthority_Secret added in v1.1.0

type RootCertificateAuthority_Secret struct {
	// Reference to a Kubernetes Secret containing the root certificate authority.
	// Provided secrets must conform to a specified format, [documented here]({{< versioned_link_path fromRoot="/guides/federate_identity/" >}}).
	Secret *v1.ObjectRef `protobuf:"bytes,2,opt,name=secret,proto3,oneof"`
}

type RouteRateLimit added in v1.1.0

type RouteRateLimit struct {

	// Types that are assignable to RateLimitConfigType:
	//	*RouteRateLimit_Basic
	//	*RouteRateLimit_Advanced
	//	*RouteRateLimit_ConfigRefs
	RateLimitConfigType isRouteRateLimit_RateLimitConfigType `protobuf_oneof:"rate_limit_config_type"`
	// contains filtered or unexported fields
}

func (*RouteRateLimit) Descriptor deprecated added in v1.1.0

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

Deprecated: Use RouteRateLimit.ProtoReflect.Descriptor instead.

func (*RouteRateLimit) Equal added in v1.1.0

func (m *RouteRateLimit) Equal(that interface{}) bool

Equal function

func (*RouteRateLimit) GetAdvanced added in v1.1.0

func (*RouteRateLimit) GetBasic added in v1.1.0

func (*RouteRateLimit) GetConfigRefs added in v1.1.0

func (x *RouteRateLimit) GetConfigRefs() *v1.ObjectRefList

func (*RouteRateLimit) GetRateLimitConfigType added in v1.1.0

func (m *RouteRateLimit) GetRateLimitConfigType() isRouteRateLimit_RateLimitConfigType

func (*RouteRateLimit) ProtoMessage added in v1.1.0

func (*RouteRateLimit) ProtoMessage()

func (*RouteRateLimit) ProtoReflect added in v1.1.0

func (x *RouteRateLimit) ProtoReflect() protoreflect.Message

func (*RouteRateLimit) Reset added in v1.1.0

func (x *RouteRateLimit) Reset()

func (*RouteRateLimit) String added in v1.1.0

func (x *RouteRateLimit) String() string

type RouteRateLimit_Advanced added in v1.1.0

type RouteRateLimit_Advanced struct {
	// Partial config for GlooE rate-limiting based on Envoy's rate-limit service;
	// supports Envoy's rate-limit service API. (reference here: https://github.com/lyft/ratelimit#configuration)
	// Configure rate-limit *actions* here, which define how request characteristics get translated into
	// descriptors used by the rate-limit service for rate-limiting. Configure rate-limit *descriptors* and
	// their associated limits on the Gloo settings.
	// Only one of `ratelimit` or `rate_limit_configs` can be set.
	Advanced *RouteRateLimit_AdvancedRateLimit `protobuf:"bytes,2,opt,name=advanced,proto3,oneof"`
}

type RouteRateLimit_AdvancedRateLimit added in v1.1.0

type RouteRateLimit_AdvancedRateLimit struct {

	// Define individual rate limits here. Each rate limit will be evaluated, if any rate limit
	// would be throttled, the entire request returns a 429 (gets throttled)
	Actions []*RateLimitActions `protobuf:"bytes,1,rep,name=actions,proto3" json:"actions,omitempty"`
	// contains filtered or unexported fields
}

Use this field if you want to inline the Envoy rate limits for this VirtualHost. Note that this does not configure the rate limit server. If you are running Gloo Enterprise, you need to specify the server configuration via the appropriate field in the Gloo `Settings` resource. If you are running a custom rate limit server you need to configure it yourself.

func (*RouteRateLimit_AdvancedRateLimit) Descriptor deprecated added in v1.1.0

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

Deprecated: Use RouteRateLimit_AdvancedRateLimit.ProtoReflect.Descriptor instead.

func (*RouteRateLimit_AdvancedRateLimit) Equal added in v1.1.0

func (m *RouteRateLimit_AdvancedRateLimit) Equal(that interface{}) bool

Equal function

func (*RouteRateLimit_AdvancedRateLimit) GetActions added in v1.1.0

func (*RouteRateLimit_AdvancedRateLimit) ProtoMessage added in v1.1.0

func (*RouteRateLimit_AdvancedRateLimit) ProtoMessage()

func (*RouteRateLimit_AdvancedRateLimit) ProtoReflect added in v1.1.0

func (*RouteRateLimit_AdvancedRateLimit) Reset added in v1.1.0

func (*RouteRateLimit_AdvancedRateLimit) String added in v1.1.0

type RouteRateLimit_Basic added in v1.1.0

type RouteRateLimit_Basic struct {
	// Config for rate-limiting using simplified (gloo-specific) API
	Basic *RouteRateLimit_BasicRateLimit `protobuf:"bytes,1,opt,name=basic,proto3,oneof"`
}

type RouteRateLimit_BasicRateLimit added in v1.1.0

type RouteRateLimit_BasicRateLimit struct {

	// limits for authorized users
	AuthorizedLimits *RequestLimit `protobuf:"bytes,1,opt,name=authorized_limits,json=authorizedLimits,proto3" json:"authorized_limits,omitempty"`
	// limits for unauthorized users
	AnonymousLimits *RequestLimit `protobuf:"bytes,2,opt,name=anonymous_limits,json=anonymousLimits,proto3" json:"anonymous_limits,omitempty"`
	// contains filtered or unexported fields
}

Basic rate-limiting API

func (*RouteRateLimit_BasicRateLimit) Descriptor deprecated added in v1.1.0

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

Deprecated: Use RouteRateLimit_BasicRateLimit.ProtoReflect.Descriptor instead.

func (*RouteRateLimit_BasicRateLimit) Equal added in v1.1.0

func (m *RouteRateLimit_BasicRateLimit) Equal(that interface{}) bool

Equal function

func (*RouteRateLimit_BasicRateLimit) GetAnonymousLimits added in v1.1.0

func (x *RouteRateLimit_BasicRateLimit) GetAnonymousLimits() *RequestLimit

func (*RouteRateLimit_BasicRateLimit) GetAuthorizedLimits added in v1.1.0

func (x *RouteRateLimit_BasicRateLimit) GetAuthorizedLimits() *RequestLimit

func (*RouteRateLimit_BasicRateLimit) ProtoMessage added in v1.1.0

func (*RouteRateLimit_BasicRateLimit) ProtoMessage()

func (*RouteRateLimit_BasicRateLimit) ProtoReflect added in v1.1.0

func (*RouteRateLimit_BasicRateLimit) Reset added in v1.1.0

func (x *RouteRateLimit_BasicRateLimit) Reset()

func (*RouteRateLimit_BasicRateLimit) String added in v1.1.0

type RouteRateLimit_ConfigRefs added in v1.1.0

type RouteRateLimit_ConfigRefs struct {
	// References to RateLimitConfig resources. This is used to configure the GlooE rate limit server.
	// Only one of `ratelimit` or `rate_limit_configs` can be set.
	ConfigRefs *v1.ObjectRefList `protobuf:"bytes,3,opt,name=config_refs,json=configRefs,proto3,oneof"`
}

type SetDescriptor added in v1.1.0

type SetDescriptor struct {

	// Simple descriptor key/value pairs.
	SimpleDescriptors []*SimpleDescriptor `protobuf:"bytes,1,rep,name=simple_descriptors,json=simpleDescriptors,proto3" json:"simple_descriptors,omitempty"`
	// Rate limit rule for the descriptor.
	RateLimit *RequestLimit `protobuf:"bytes,2,opt,name=rate_limit,json=rateLimit,proto3" json:"rate_limit,omitempty"`
	// Typically, rule priority is signalled by rule ordering, as the first rule match for
	// the descriptor tuple generated by the rate limit actions is used.
	//
	// In some cases this is too restrictive; A boolean override can be specified. Any rule with `alwaysApply` set to `true` will
	// always be considered for rate limiting, regardless of the rule's place in the ordered list of rules.
	// The first rule to match will still be considered. (This can be a rule that also has `alwaysApply` set to `true`.)
	//
	// If any of these rules trigger rate limiting then the entire request will return a 429.
	// Rules that are not considered for rate limiting are ignored in the
	// rate limit server, and their request count is not incremented in the rate limit server cache.
	//
	// Defaults to false.
	AlwaysApply bool `protobuf:"varint,3,opt,name=always_apply,json=alwaysApply,proto3" json:"always_apply,omitempty"`
	// contains filtered or unexported fields
}

A setDescriptor is a list of key/value pairs that the rate limit server uses to select the correct rate limit to use when limiting with the set style. Descriptors are case-sensitive.

Each configuration contains a simpleDescriptor list and a rateLimit. The format is:

``` set_descriptors:

  • simple_descriptors: (optional block)
  • key: <rule key: required> value: <rule value: optional>
  • ... (repetition of above) rate_limit: requests_per_unit: <see below: required> unit: <see below: required> always_apply: <bool value: optional>
  • ... (repetition of above)

```

Each SetDescriptor defines a new Rate Limit "rule". When a request comes in, rate limit actions are applied to the request to generate descriptor tuples that are sent to the rate limit server. If any rule is triggered then the entire request returns HTTP 429 Too Many Requests.

The `rate_limit` block sets up an actual rate limit rule.

func (*SetDescriptor) Descriptor deprecated added in v1.1.0

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

Deprecated: Use SetDescriptor.ProtoReflect.Descriptor instead.

func (*SetDescriptor) Equal added in v1.1.0

func (m *SetDescriptor) Equal(that interface{}) bool

Equal function

func (*SetDescriptor) GetAlwaysApply added in v1.1.0

func (x *SetDescriptor) GetAlwaysApply() bool

func (*SetDescriptor) GetRateLimit added in v1.1.0

func (x *SetDescriptor) GetRateLimit() *RequestLimit

func (*SetDescriptor) GetSimpleDescriptors added in v1.1.0

func (x *SetDescriptor) GetSimpleDescriptors() []*SimpleDescriptor

func (*SetDescriptor) ProtoMessage added in v1.1.0

func (*SetDescriptor) ProtoMessage()

func (*SetDescriptor) ProtoReflect added in v1.1.0

func (x *SetDescriptor) ProtoReflect() protoreflect.Message

func (*SetDescriptor) Reset added in v1.1.0

func (x *SetDescriptor) Reset()

func (*SetDescriptor) String added in v1.1.0

func (x *SetDescriptor) String() string

type SharedTrust added in v1.1.0

type SharedTrust struct {

	// Types that are assignable to CertificateAuthority:
	//	*SharedTrust_RootCertificateAuthority
	//	*SharedTrust_IntermediateCertificateAuthority
	CertificateAuthority isSharedTrust_CertificateAuthority `protobuf_oneof:"certificate_authority"`
	// Configuration options for generated intermediate certs.
	IntermediateCertOptions *v11.CommonCertOptions `` /* 132-byte string literal not displayed */
	// contains filtered or unexported fields
}

Shared trust is a trust model requiring a common root certificate shared between trusting Meshes, as well as shared identity between all Workloads and Destinations which wish to communicate within the VirtualMesh.

func (*SharedTrust) Descriptor deprecated added in v1.1.0

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

Deprecated: Use SharedTrust.ProtoReflect.Descriptor instead.

func (*SharedTrust) Equal added in v1.1.0

func (m *SharedTrust) Equal(that interface{}) bool

Equal function

func (*SharedTrust) GetCertificateAuthority added in v1.1.0

func (m *SharedTrust) GetCertificateAuthority() isSharedTrust_CertificateAuthority

func (*SharedTrust) GetIntermediateCertOptions added in v1.1.0

func (x *SharedTrust) GetIntermediateCertOptions() *v11.CommonCertOptions

func (*SharedTrust) GetIntermediateCertificateAuthority added in v1.1.0

func (x *SharedTrust) GetIntermediateCertificateAuthority() *v11.IntermediateCertificateAuthority

func (*SharedTrust) GetRootCertificateAuthority added in v1.1.0

func (x *SharedTrust) GetRootCertificateAuthority() *RootCertificateAuthority

func (*SharedTrust) ProtoMessage added in v1.1.0

func (*SharedTrust) ProtoMessage()

func (*SharedTrust) ProtoReflect added in v1.1.0

func (x *SharedTrust) ProtoReflect() protoreflect.Message

func (*SharedTrust) Reset added in v1.1.0

func (x *SharedTrust) Reset()

func (*SharedTrust) String added in v1.1.0

func (x *SharedTrust) String() string

type SharedTrust_IntermediateCertificateAuthority added in v1.1.0

type SharedTrust_IntermediateCertificateAuthority struct {
	// Configures an Intermediate Certificiate Authority which remote clusters will use to generate intermediate
	// certificates. In order for this to properly mesh all of the traffic across the different meshes, the CA
	// being used must be configured to generate the intermediate certificates.
	IntermediateCertificateAuthority *v11.IntermediateCertificateAuthority `protobuf:"bytes,2,opt,name=intermediate_certificate_authority,json=intermediateCertificateAuthority,proto3,oneof"`
}

type SharedTrust_RootCertificateAuthority added in v1.1.0

type SharedTrust_RootCertificateAuthority struct {
	// Configure a Root Certificate Authority which will be shared by all Meshes associated with this VirtualMesh.
	// If this is not provided, a self-signed certificate will be generated by Gloo Mesh.
	RootCertificateAuthority *RootCertificateAuthority `protobuf:"bytes,1,opt,name=root_certificate_authority,json=rootCertificateAuthority,proto3,oneof"`
}

type SimpleDescriptor added in v1.1.0

type SimpleDescriptor struct {

	// The key of the descriptor. This field is required.
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// Optional value for the descriptor. If omitted, the server will create a rate limit for
	// each value that is provided for this descriptor in rate limit requests.
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

A simpleDescriptor is a list of key/value pairs that the rate limit server uses to select the correct rate limit to use when limiting with the set style. Descriptors are case-sensitive.

The format is:

```

simple_descriptors:
  - key: <rule key: required>
    value: <rule value: optional>
  - ... (repetition of above)

```

Each simpleDescriptor in a simpleDescriptor list must have a key. It can also optionally have a value to enable a more specific match.

func (*SimpleDescriptor) Descriptor deprecated added in v1.1.0

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

Deprecated: Use SimpleDescriptor.ProtoReflect.Descriptor instead.

func (*SimpleDescriptor) Equal added in v1.1.0

func (m *SimpleDescriptor) Equal(that interface{}) bool

Equal function

func (*SimpleDescriptor) GetKey added in v1.1.0

func (x *SimpleDescriptor) GetKey() string

func (*SimpleDescriptor) GetValue added in v1.1.0

func (x *SimpleDescriptor) GetValue() string

func (*SimpleDescriptor) ProtoMessage added in v1.1.0

func (*SimpleDescriptor) ProtoMessage()

func (*SimpleDescriptor) ProtoReflect added in v1.1.0

func (x *SimpleDescriptor) ProtoReflect() protoreflect.Message

func (*SimpleDescriptor) Reset added in v1.1.0

func (x *SimpleDescriptor) Reset()

func (*SimpleDescriptor) String added in v1.1.0

func (x *SimpleDescriptor) String() string

type StatusCodeMatcher added in v1.1.0

type StatusCodeMatcher struct {

	// The status code value to match against.
	Value uint32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
	// The comparison type used for matching.
	Comparator StatusCodeMatcher_Comparator `` /* 137-byte string literal not displayed */
	// contains filtered or unexported fields
}

Describes a matcher against HTTP response status codes.

func (*StatusCodeMatcher) Descriptor deprecated added in v1.1.0

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

Deprecated: Use StatusCodeMatcher.ProtoReflect.Descriptor instead.

func (*StatusCodeMatcher) GetComparator added in v1.1.0

func (*StatusCodeMatcher) GetValue added in v1.1.0

func (x *StatusCodeMatcher) GetValue() uint32

func (*StatusCodeMatcher) ProtoMessage added in v1.1.0

func (*StatusCodeMatcher) ProtoMessage()

func (*StatusCodeMatcher) ProtoReflect added in v1.1.0

func (x *StatusCodeMatcher) ProtoReflect() protoreflect.Message

func (*StatusCodeMatcher) Reset added in v1.1.0

func (x *StatusCodeMatcher) Reset()

func (*StatusCodeMatcher) String added in v1.1.0

func (x *StatusCodeMatcher) String() string

type StatusCodeMatcher_Comparator added in v1.1.0

type StatusCodeMatcher_Comparator int32
const (
	// Strict equality.
	StatusCodeMatcher_EQ StatusCodeMatcher_Comparator = 0
	// Greater than or equal to.
	StatusCodeMatcher_GE StatusCodeMatcher_Comparator = 1
	// Less than or equal to.
	StatusCodeMatcher_LE StatusCodeMatcher_Comparator = 2
)

func (StatusCodeMatcher_Comparator) Descriptor added in v1.1.0

func (StatusCodeMatcher_Comparator) Enum added in v1.1.0

func (StatusCodeMatcher_Comparator) EnumDescriptor deprecated added in v1.1.0

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

Deprecated: Use StatusCodeMatcher_Comparator.Descriptor instead.

func (StatusCodeMatcher_Comparator) Number added in v1.1.0

func (StatusCodeMatcher_Comparator) String added in v1.1.0

func (StatusCodeMatcher_Comparator) Type added in v1.1.0

type TrafficPolicy

type TrafficPolicy struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TrafficPolicySpec   `json:"spec,omitempty"`
	Status TrafficPolicyStatus `json:"status,omitempty"`
}

TrafficPolicy is the Schema for the trafficPolicy API

func (*TrafficPolicy) DeepCopy

func (in *TrafficPolicy) DeepCopy() *TrafficPolicy

func (*TrafficPolicy) DeepCopyInto

func (in *TrafficPolicy) DeepCopyInto(out *TrafficPolicy)

func (*TrafficPolicy) DeepCopyObject

func (in *TrafficPolicy) DeepCopyObject() runtime.Object

func (TrafficPolicy) GVK

GVK returns the GroupVersionKind associated with the resource type.

type TrafficPolicyClient

type TrafficPolicyClient interface {
	TrafficPolicyReader
	TrafficPolicyWriter
	TrafficPolicyStatusWriter
}

Client knows how to perform CRUD operations on TrafficPolicys.

type TrafficPolicyList

type TrafficPolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []TrafficPolicy `json:"items"`
}

TrafficPolicyList contains a list of TrafficPolicy

func (*TrafficPolicyList) DeepCopy

func (in *TrafficPolicyList) DeepCopy() *TrafficPolicyList

func (*TrafficPolicyList) DeepCopyInto

func (in *TrafficPolicyList) DeepCopyInto(out *TrafficPolicyList)

func (*TrafficPolicyList) DeepCopyObject

func (in *TrafficPolicyList) DeepCopyObject() runtime.Object

type TrafficPolicyReader

type TrafficPolicyReader interface {
	// Get retrieves a TrafficPolicy for the given object key
	GetTrafficPolicy(ctx context.Context, key client.ObjectKey) (*TrafficPolicy, error)

	// List retrieves list of TrafficPolicys for a given namespace and list options.
	ListTrafficPolicy(ctx context.Context, opts ...client.ListOption) (*TrafficPolicyList, error)
}

Reader knows how to read and list TrafficPolicys.

type TrafficPolicySlice

type TrafficPolicySlice []*TrafficPolicy

TrafficPolicySlice represents a slice of *TrafficPolicy

type TrafficPolicySpec

type TrafficPolicySpec struct {

	// Specify the Workloads (sources for east-west traffic) this TrafficPolicy applies to.
	// Omit to apply to all Workloads.
	SourceSelector []*v1.WorkloadSelector `protobuf:"bytes,1,rep,name=source_selector,json=sourceSelector,proto3" json:"source_selector,omitempty"`
	// Specify the Destinations (destinations) this TrafficPolicy applies to.
	// Omit to apply to all Destinations.
	DestinationSelector []*v1.DestinationSelector `protobuf:"bytes,2,rep,name=destination_selector,json=destinationSelector,proto3" json:"destination_selector,omitempty"`
	// Specify which ingress gateway traffic this trafficPolicy should
	// apply to. Multiple policies from different sources defining
	// different policies (eg retries, timeouts) will be merged.
	// If a conflicting policy value is defined in both a TrafficPolicy
	// resource (or multiple TrafficPolicy resources) and in-line on a VirtualHost,
	// or Route - then the in-line values will take precedence. If multiple
	// TrafficPolicies select the same VirtualHost, RouteTable, or Route, then the older
	// TrafficPolicy (by CreationTime) takes precedence over any newer Traffic policy.
	// Omit to apply to all VirtualHosts and all of their routes.
	RouteSelector []*TrafficPolicySpec_RouteSelector `protobuf:"bytes,5,rep,name=route_selector,json=routeSelector,proto3" json:"route_selector,omitempty"`
	// Specify criteria that HTTP requests must satisfy for the TrafficPolicy to apply.
	// Conditions defined within a single matcher are conjunctive, i.e. all conditions must be satisfied for a match to occur.
	// Conditions defined between different matchers are disjunctive, i.e. at least one matcher must be satisfied for the TrafficPolicy to apply.
	// Omit to apply to any HTTP request.
	HttpRequestMatchers []*HttpMatcher `protobuf:"bytes,3,rep,name=http_request_matchers,json=httpRequestMatchers,proto3" json:"http_request_matchers,omitempty"`
	// Specify L7 routing and post-routing configuration.
	Policy *TrafficPolicySpec_Policy `protobuf:"bytes,4,opt,name=policy,proto3" json:"policy,omitempty"`
	// contains filtered or unexported fields
}

Applies L7 routing and post-routing configuration on selected network edges.

func (*TrafficPolicySpec) DeepCopyInto

func (in *TrafficPolicySpec) DeepCopyInto(out *TrafficPolicySpec)

DeepCopyInto for the TrafficPolicy.Spec

func (*TrafficPolicySpec) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec) Equal

func (m *TrafficPolicySpec) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec) GetDestinationSelector

func (x *TrafficPolicySpec) GetDestinationSelector() []*v1.DestinationSelector

func (*TrafficPolicySpec) GetHttpRequestMatchers

func (x *TrafficPolicySpec) GetHttpRequestMatchers() []*HttpMatcher

func (*TrafficPolicySpec) GetPolicy

func (*TrafficPolicySpec) GetRouteSelector added in v1.1.0

func (x *TrafficPolicySpec) GetRouteSelector() []*TrafficPolicySpec_RouteSelector

func (*TrafficPolicySpec) GetSourceSelector

func (x *TrafficPolicySpec) GetSourceSelector() []*v1.WorkloadSelector

func (*TrafficPolicySpec) MarshalJSON

func (this *TrafficPolicySpec) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for TrafficPolicySpec

func (*TrafficPolicySpec) ProtoMessage

func (*TrafficPolicySpec) ProtoMessage()

func (*TrafficPolicySpec) ProtoReflect

func (x *TrafficPolicySpec) ProtoReflect() protoreflect.Message

func (*TrafficPolicySpec) Reset

func (x *TrafficPolicySpec) Reset()

func (*TrafficPolicySpec) String

func (x *TrafficPolicySpec) String() string

func (*TrafficPolicySpec) UnmarshalJSON

func (this *TrafficPolicySpec) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for TrafficPolicySpec

type TrafficPolicySpec_Policy

type TrafficPolicySpec_Policy struct {

	// Shift traffic to a different destination.
	TrafficShift *TrafficPolicySpec_Policy_MultiDestination `protobuf:"bytes,4,opt,name=traffic_shift,json=trafficShift,proto3" json:"traffic_shift,omitempty"`
	// Inject faulty responses.
	FaultInjection *TrafficPolicySpec_Policy_FaultInjection `protobuf:"bytes,5,opt,name=fault_injection,json=faultInjection,proto3" json:"fault_injection,omitempty"`
	// Set a timeout on requests.
	RequestTimeout *duration.Duration `protobuf:"bytes,6,opt,name=request_timeout,json=requestTimeout,proto3" json:"request_timeout,omitempty"`
	// Set a retry policy on requests.
	Retries *TrafficPolicySpec_Policy_RetryPolicy `protobuf:"bytes,7,opt,name=retries,proto3" json:"retries,omitempty"`
	// Set a Cross-Origin Resource Sharing policy (CORS) for requests. Refer to [this link](https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS)
	// for further details about cross origin resource sharing.
	CorsPolicy *TrafficPolicySpec_Policy_CorsPolicy `protobuf:"bytes,8,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"`
	// Mirror traffic to a another destination (traffic will be sent to its original destination in addition to the mirrored destinations).
	Mirror *TrafficPolicySpec_Policy_Mirror `protobuf:"bytes,9,opt,name=mirror,proto3" json:"mirror,omitempty"`
	// Manipulate request and response headers.
	HeaderManipulation *HeaderManipulation `protobuf:"bytes,10,opt,name=header_manipulation,json=headerManipulation,proto3" json:"header_manipulation,omitempty"`
	// Configure [outlier detection](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/outlier) on the selected destinations.
	// Specifying this field requires an empty `source_selector` because it must apply to all traffic.
	OutlierDetection *TrafficPolicySpec_Policy_OutlierDetection `protobuf:"bytes,11,opt,name=outlier_detection,json=outlierDetection,proto3" json:"outlier_detection,omitempty"`
	// Configure mTLS settings. If specified will override global default defined in Settings.
	Mtls *TrafficPolicySpec_Policy_MTLS `protobuf:"bytes,12,opt,name=mtls,proto3" json:"mtls,omitempty"`
	// Configure the Envoy based CSRF filter
	Csrf *csrf.CsrfPolicy `protobuf:"bytes,13,opt,name=csrf,proto3" json:"csrf,omitempty"`
	// Config the Envoy based Ratelimit filter
	RateLimit *ratelimit.RouteRateLimit `protobuf:"bytes,14,opt,name=rate_limit,json=rateLimit,proto3" json:"rate_limit,omitempty"`
	// contains filtered or unexported fields
}

Specify L7 routing and post-routing configuration.

func (*TrafficPolicySpec_Policy) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy) Equal

func (m *TrafficPolicySpec_Policy) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy) GetCorsPolicy

func (*TrafficPolicySpec_Policy) GetCsrf added in v1.1.0

func (*TrafficPolicySpec_Policy) GetFaultInjection

func (*TrafficPolicySpec_Policy) GetHeaderManipulation

func (x *TrafficPolicySpec_Policy) GetHeaderManipulation() *HeaderManipulation

func (*TrafficPolicySpec_Policy) GetMirror

func (*TrafficPolicySpec_Policy) GetMtls

func (*TrafficPolicySpec_Policy) GetOutlierDetection

func (*TrafficPolicySpec_Policy) GetRateLimit added in v1.1.0

func (*TrafficPolicySpec_Policy) GetRequestTimeout

func (x *TrafficPolicySpec_Policy) GetRequestTimeout() *duration.Duration

func (*TrafficPolicySpec_Policy) GetRetries

func (*TrafficPolicySpec_Policy) GetTrafficShift

func (*TrafficPolicySpec_Policy) ProtoMessage

func (*TrafficPolicySpec_Policy) ProtoMessage()

func (*TrafficPolicySpec_Policy) ProtoReflect

func (x *TrafficPolicySpec_Policy) ProtoReflect() protoreflect.Message

func (*TrafficPolicySpec_Policy) Reset

func (x *TrafficPolicySpec_Policy) Reset()

func (*TrafficPolicySpec_Policy) String

func (x *TrafficPolicySpec_Policy) String() string

type TrafficPolicySpec_Policy_CorsPolicy

type TrafficPolicySpec_Policy_CorsPolicy struct {

	// String patterns that match allowed origins. An origin is allowed if any of the string matchers match.
	AllowOrigins []*v1.StringMatch `protobuf:"bytes,7,rep,name=allow_origins,json=allowOrigins,proto3" json:"allow_origins,omitempty"`
	// List of HTTP methods allowed to access the resource. The content will
	// be serialized to the `Access-Control-Allow-Methods` header.
	AllowMethods []string `protobuf:"bytes,2,rep,name=allow_methods,json=allowMethods,proto3" json:"allow_methods,omitempty"`
	// List of HTTP headers that can be used when requesting the
	// resource. Serialized to the `Access-Control-Allow-Headers` header.
	AllowHeaders []string `protobuf:"bytes,3,rep,name=allow_headers,json=allowHeaders,proto3" json:"allow_headers,omitempty"`
	// A list of HTTP headers that browsers are allowed to
	// access. Serialized to the `Access-Control-Expose-Headers` header.
	ExposeHeaders []string `protobuf:"bytes,4,rep,name=expose_headers,json=exposeHeaders,proto3" json:"expose_headers,omitempty"`
	// Specify how long the results of a preflight request can be
	// cached. Serialized to the `Access-Control-Max-Age` header.
	MaxAge *duration.Duration `protobuf:"bytes,5,opt,name=max_age,json=maxAge,proto3" json:"max_age,omitempty"`
	// Indicates whether the caller is allowed to send the actual request
	// (not the preflight) using credentials. Translates to the
	// `Access-Control-Allow-Credentials` header.
	AllowCredentials *wrappers.BoolValue `protobuf:"bytes,6,opt,name=allow_credentials,json=allowCredentials,proto3" json:"allow_credentials,omitempty"`
	// contains filtered or unexported fields
}

Specify Cross-Origin Resource Sharing policy (CORS) for requests. Refer to [this link](https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS) for further details about cross origin resource sharing.

func (*TrafficPolicySpec_Policy_CorsPolicy) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy_CorsPolicy.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_CorsPolicy) Equal

func (m *TrafficPolicySpec_Policy_CorsPolicy) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_CorsPolicy) GetAllowCredentials

func (x *TrafficPolicySpec_Policy_CorsPolicy) GetAllowCredentials() *wrappers.BoolValue

func (*TrafficPolicySpec_Policy_CorsPolicy) GetAllowHeaders

func (x *TrafficPolicySpec_Policy_CorsPolicy) GetAllowHeaders() []string

func (*TrafficPolicySpec_Policy_CorsPolicy) GetAllowMethods

func (x *TrafficPolicySpec_Policy_CorsPolicy) GetAllowMethods() []string

func (*TrafficPolicySpec_Policy_CorsPolicy) GetAllowOrigins

func (x *TrafficPolicySpec_Policy_CorsPolicy) GetAllowOrigins() []*v1.StringMatch

func (*TrafficPolicySpec_Policy_CorsPolicy) GetExposeHeaders

func (x *TrafficPolicySpec_Policy_CorsPolicy) GetExposeHeaders() []string

func (*TrafficPolicySpec_Policy_CorsPolicy) GetMaxAge

func (*TrafficPolicySpec_Policy_CorsPolicy) ProtoMessage

func (*TrafficPolicySpec_Policy_CorsPolicy) ProtoMessage()

func (*TrafficPolicySpec_Policy_CorsPolicy) ProtoReflect

func (*TrafficPolicySpec_Policy_CorsPolicy) Reset

func (*TrafficPolicySpec_Policy_CorsPolicy) String

type TrafficPolicySpec_Policy_DLPPolicy added in v1.1.0

type TrafficPolicySpec_Policy_DLPPolicy struct {

	// TODO: implement
	Todo string `protobuf:"bytes,1,opt,name=todo,proto3" json:"todo,omitempty"`
	// contains filtered or unexported fields
}

DLP filter config.

func (*TrafficPolicySpec_Policy_DLPPolicy) Descriptor deprecated added in v1.1.0

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

Deprecated: Use TrafficPolicySpec_Policy_DLPPolicy.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_DLPPolicy) Equal added in v1.1.0

func (m *TrafficPolicySpec_Policy_DLPPolicy) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_DLPPolicy) GetTodo added in v1.1.0

func (*TrafficPolicySpec_Policy_DLPPolicy) ProtoMessage added in v1.1.0

func (*TrafficPolicySpec_Policy_DLPPolicy) ProtoMessage()

func (*TrafficPolicySpec_Policy_DLPPolicy) ProtoReflect added in v1.1.0

func (*TrafficPolicySpec_Policy_DLPPolicy) Reset added in v1.1.0

func (*TrafficPolicySpec_Policy_DLPPolicy) String added in v1.1.0

type TrafficPolicySpec_Policy_ExtAuth added in v1.1.0

type TrafficPolicySpec_Policy_ExtAuth struct {

	// TODO: implement
	Todo string `protobuf:"bytes,1,opt,name=todo,proto3" json:"todo,omitempty"`
	// contains filtered or unexported fields
}

ExtAuth filter config.

func (*TrafficPolicySpec_Policy_ExtAuth) Descriptor deprecated added in v1.1.0

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

Deprecated: Use TrafficPolicySpec_Policy_ExtAuth.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_ExtAuth) Equal added in v1.1.0

func (m *TrafficPolicySpec_Policy_ExtAuth) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_ExtAuth) GetTodo added in v1.1.0

func (*TrafficPolicySpec_Policy_ExtAuth) ProtoMessage added in v1.1.0

func (*TrafficPolicySpec_Policy_ExtAuth) ProtoMessage()

func (*TrafficPolicySpec_Policy_ExtAuth) ProtoReflect added in v1.1.0

func (*TrafficPolicySpec_Policy_ExtAuth) Reset added in v1.1.0

func (*TrafficPolicySpec_Policy_ExtAuth) String added in v1.1.0

type TrafficPolicySpec_Policy_FaultInjection

type TrafficPolicySpec_Policy_FaultInjection struct {

	// Specify the type of fault to inject.
	//
	// Types that are assignable to FaultInjectionType:
	//	*TrafficPolicySpec_Policy_FaultInjection_FixedDelay
	//	*TrafficPolicySpec_Policy_FaultInjection_Abort_
	FaultInjectionType isTrafficPolicySpec_Policy_FaultInjection_FaultInjectionType `protobuf_oneof:"fault_injection_type"`
	// Percentage of requests to be faulted. Values range between 0 and 100. If omitted all requests will be faulted.
	Percentage float64 `protobuf:"fixed64,4,opt,name=percentage,proto3" json:"percentage,omitempty"`
	// contains filtered or unexported fields
}

Specify one or more faults to inject for the selected network edge.

func (*TrafficPolicySpec_Policy_FaultInjection) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy_FaultInjection.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_FaultInjection) Equal

func (m *TrafficPolicySpec_Policy_FaultInjection) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_FaultInjection) GetAbort

func (*TrafficPolicySpec_Policy_FaultInjection) GetFaultInjectionType

func (m *TrafficPolicySpec_Policy_FaultInjection) GetFaultInjectionType() isTrafficPolicySpec_Policy_FaultInjection_FaultInjectionType

func (*TrafficPolicySpec_Policy_FaultInjection) GetFixedDelay

func (*TrafficPolicySpec_Policy_FaultInjection) GetPercentage

func (*TrafficPolicySpec_Policy_FaultInjection) ProtoMessage

func (*TrafficPolicySpec_Policy_FaultInjection) ProtoReflect

func (*TrafficPolicySpec_Policy_FaultInjection) Reset

func (*TrafficPolicySpec_Policy_FaultInjection) String

type TrafficPolicySpec_Policy_FaultInjection_Abort

type TrafficPolicySpec_Policy_FaultInjection_Abort struct {

	// Required. HTTP status code to use to abort the request.
	HttpStatus int32 `protobuf:"varint,1,opt,name=http_status,json=httpStatus,proto3" json:"http_status,omitempty"`
	// contains filtered or unexported fields
}

Abort the request and return the specified error code back to traffic source.

func (*TrafficPolicySpec_Policy_FaultInjection_Abort) Descriptor deprecated

Deprecated: Use TrafficPolicySpec_Policy_FaultInjection_Abort.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_FaultInjection_Abort) Equal

func (m *TrafficPolicySpec_Policy_FaultInjection_Abort) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_FaultInjection_Abort) GetHttpStatus

func (*TrafficPolicySpec_Policy_FaultInjection_Abort) ProtoMessage

func (*TrafficPolicySpec_Policy_FaultInjection_Abort) ProtoReflect

func (*TrafficPolicySpec_Policy_FaultInjection_Abort) Reset

func (*TrafficPolicySpec_Policy_FaultInjection_Abort) String

type TrafficPolicySpec_Policy_FaultInjection_Abort_

type TrafficPolicySpec_Policy_FaultInjection_Abort_ struct {
	// Abort the request and return the specified error code back to traffic source.
	Abort *TrafficPolicySpec_Policy_FaultInjection_Abort `protobuf:"bytes,2,opt,name=abort,proto3,oneof"`
}

type TrafficPolicySpec_Policy_FaultInjection_FixedDelay

type TrafficPolicySpec_Policy_FaultInjection_FixedDelay struct {
	// Add a delay of a fixed duration before sending the request. Format: `1h`/`1m`/`1s`/`1ms`. MUST be >=1ms.
	FixedDelay *duration.Duration `protobuf:"bytes,1,opt,name=fixed_delay,json=fixedDelay,proto3,oneof"`
}

type TrafficPolicySpec_Policy_MTLS

type TrafficPolicySpec_Policy_MTLS struct {

	// Istio TLS settings.
	Istio *TrafficPolicySpec_Policy_MTLS_Istio `protobuf:"bytes,1,opt,name=istio,proto3" json:"istio,omitempty"`
	// contains filtered or unexported fields
}

Configure mTLS settings on destinations. If specified this overrides the global default defined in Settings.

func (*TrafficPolicySpec_Policy_MTLS) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy_MTLS.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_MTLS) Equal

func (m *TrafficPolicySpec_Policy_MTLS) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_MTLS) GetIstio

func (*TrafficPolicySpec_Policy_MTLS) ProtoMessage

func (*TrafficPolicySpec_Policy_MTLS) ProtoMessage()

func (*TrafficPolicySpec_Policy_MTLS) ProtoReflect

func (*TrafficPolicySpec_Policy_MTLS) Reset

func (x *TrafficPolicySpec_Policy_MTLS) Reset()

func (*TrafficPolicySpec_Policy_MTLS) String

type TrafficPolicySpec_Policy_MTLS_Istio

type TrafficPolicySpec_Policy_MTLS_Istio struct {

	// TLS connection mode
	TlsMode TrafficPolicySpec_Policy_MTLS_Istio_TLSmode `` /* 161-byte string literal not displayed */
	// contains filtered or unexported fields
}

Istio TLS settings.

func (*TrafficPolicySpec_Policy_MTLS_Istio) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy_MTLS_Istio.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_MTLS_Istio) Equal

func (m *TrafficPolicySpec_Policy_MTLS_Istio) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_MTLS_Istio) GetTlsMode

func (*TrafficPolicySpec_Policy_MTLS_Istio) ProtoMessage

func (*TrafficPolicySpec_Policy_MTLS_Istio) ProtoMessage()

func (*TrafficPolicySpec_Policy_MTLS_Istio) ProtoReflect

func (*TrafficPolicySpec_Policy_MTLS_Istio) Reset

func (*TrafficPolicySpec_Policy_MTLS_Istio) String

type TrafficPolicySpec_Policy_MTLS_Istio_TLSmode

type TrafficPolicySpec_Policy_MTLS_Istio_TLSmode int32

TLS connection mode. Enums correspond to those [defined here](https://github.com/istio/api/blob/00636152b9d9254b614828a65723840282a177d3/networking/v1beta1/destination_rule.proto#L886)

const (
	// Do not originate a TLS connection to the upstream endpoint.
	TrafficPolicySpec_Policy_MTLS_Istio_DISABLE TrafficPolicySpec_Policy_MTLS_Istio_TLSmode = 0
	// Originate a TLS connection to the upstream endpoint.
	TrafficPolicySpec_Policy_MTLS_Istio_SIMPLE TrafficPolicySpec_Policy_MTLS_Istio_TLSmode = 1
	// Secure connections to the upstream using mutual TLS by presenting
	// client certificates for authentication.
	// This mode uses certificates generated
	// automatically by Istio for mTLS authentication. When this mode is
	// used, all other fields in `ClientTLSSettings` should be empty.
	TrafficPolicySpec_Policy_MTLS_Istio_ISTIO_MUTUAL TrafficPolicySpec_Policy_MTLS_Istio_TLSmode = 2
)

func (TrafficPolicySpec_Policy_MTLS_Istio_TLSmode) Descriptor

func (TrafficPolicySpec_Policy_MTLS_Istio_TLSmode) Enum

func (TrafficPolicySpec_Policy_MTLS_Istio_TLSmode) EnumDescriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy_MTLS_Istio_TLSmode.Descriptor instead.

func (TrafficPolicySpec_Policy_MTLS_Istio_TLSmode) Number

func (TrafficPolicySpec_Policy_MTLS_Istio_TLSmode) String

func (TrafficPolicySpec_Policy_MTLS_Istio_TLSmode) Type

type TrafficPolicySpec_Policy_Mirror

type TrafficPolicySpec_Policy_Mirror struct {

	// Platform specific mirror destinations.
	//
	// Types that are assignable to DestinationType:
	//	*TrafficPolicySpec_Policy_Mirror_KubeService
	DestinationType isTrafficPolicySpec_Policy_Mirror_DestinationType `protobuf_oneof:"destination_type"`
	// Percentage of traffic to mirror. If omitted all traffic will be mirrored. Values must be between 0 and 100.
	Percentage float64 `protobuf:"fixed64,2,opt,name=percentage,proto3" json:"percentage,omitempty"`
	// Port on the destination to receive traffic. Required if the destination exposes multiple ports.
	Port uint32 `protobuf:"varint,3,opt,name=port,proto3" json:"port,omitempty"`
	// contains filtered or unexported fields
}

Mirror traffic to a another destination (traffic will be sent to its original destination in addition to the mirrored destinations).

func (*TrafficPolicySpec_Policy_Mirror) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy_Mirror.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_Mirror) Equal

func (m *TrafficPolicySpec_Policy_Mirror) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_Mirror) GetDestinationType

func (m *TrafficPolicySpec_Policy_Mirror) GetDestinationType() isTrafficPolicySpec_Policy_Mirror_DestinationType

func (*TrafficPolicySpec_Policy_Mirror) GetKubeService

func (*TrafficPolicySpec_Policy_Mirror) GetPercentage

func (x *TrafficPolicySpec_Policy_Mirror) GetPercentage() float64

func (*TrafficPolicySpec_Policy_Mirror) GetPort

func (*TrafficPolicySpec_Policy_Mirror) ProtoMessage

func (*TrafficPolicySpec_Policy_Mirror) ProtoMessage()

func (*TrafficPolicySpec_Policy_Mirror) ProtoReflect

func (*TrafficPolicySpec_Policy_Mirror) Reset

func (*TrafficPolicySpec_Policy_Mirror) String

type TrafficPolicySpec_Policy_Mirror_KubeService

type TrafficPolicySpec_Policy_Mirror_KubeService struct {
	// Reference (name, namespace, Gloo Mesh cluster) to a Kubernetes service.
	KubeService *v11.ClusterObjectRef `protobuf:"bytes,1,opt,name=kube_service,json=kubeService,proto3,oneof"`
}

type TrafficPolicySpec_Policy_MultiDestination

type TrafficPolicySpec_Policy_MultiDestination struct {

	// Specify weighted traffic shift destinations.
	Destinations []*WeightedDestination `protobuf:"bytes,1,rep,name=destinations,proto3" json:"destinations,omitempty"`
	// contains filtered or unexported fields
}

Specify a traffic shift destination.

func (*TrafficPolicySpec_Policy_MultiDestination) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy_MultiDestination.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_MultiDestination) Equal

func (m *TrafficPolicySpec_Policy_MultiDestination) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_MultiDestination) GetDestinations

func (*TrafficPolicySpec_Policy_MultiDestination) ProtoMessage

func (*TrafficPolicySpec_Policy_MultiDestination) ProtoReflect

func (*TrafficPolicySpec_Policy_MultiDestination) Reset

func (*TrafficPolicySpec_Policy_MultiDestination) String

type TrafficPolicySpec_Policy_OutlierDetection

type TrafficPolicySpec_Policy_OutlierDetection struct {

	// The number of errors before a host is ejected from the connection pool. A default will be used if not set.
	ConsecutiveErrors uint32 `protobuf:"varint,1,opt,name=consecutive_errors,json=consecutiveErrors,proto3" json:"consecutive_errors,omitempty"`
	// The time interval between ejection sweep analysis. Format: `1h`/`1m`/`1s`/`1ms`. Must be >= `1ms`. A default will be used if not set.
	Interval *duration.Duration `protobuf:"bytes,2,opt,name=interval,proto3" json:"interval,omitempty"`
	// The minimum ejection duration. Format: `1h`/`1m`/`1s`/`1ms`. Must be >= `1ms`. A default will be used if not set.
	BaseEjectionTime *duration.Duration `protobuf:"bytes,3,opt,name=base_ejection_time,json=baseEjectionTime,proto3" json:"base_ejection_time,omitempty"`
	// The maximum percentage of hosts that can be ejected from the load balancing pool.
	// At least one host will be ejected regardless of the value. Must be between 0 and 100. A default will be used if not set.
	MaxEjectionPercent uint32 `protobuf:"varint,4,opt,name=max_ejection_percent,json=maxEjectionPercent,proto3" json:"max_ejection_percent,omitempty"`
	// contains filtered or unexported fields
}

Configure [outlier detection](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/outlier) on the selected destinations. Specifying this field requires an empty `source_selector` because it must apply to all traffic.

func (*TrafficPolicySpec_Policy_OutlierDetection) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy_OutlierDetection.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_OutlierDetection) Equal

func (m *TrafficPolicySpec_Policy_OutlierDetection) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_OutlierDetection) GetBaseEjectionTime

func (*TrafficPolicySpec_Policy_OutlierDetection) GetConsecutiveErrors

func (x *TrafficPolicySpec_Policy_OutlierDetection) GetConsecutiveErrors() uint32

func (*TrafficPolicySpec_Policy_OutlierDetection) GetInterval

func (*TrafficPolicySpec_Policy_OutlierDetection) GetMaxEjectionPercent

func (x *TrafficPolicySpec_Policy_OutlierDetection) GetMaxEjectionPercent() uint32

func (*TrafficPolicySpec_Policy_OutlierDetection) ProtoMessage

func (*TrafficPolicySpec_Policy_OutlierDetection) ProtoReflect

func (*TrafficPolicySpec_Policy_OutlierDetection) Reset

func (*TrafficPolicySpec_Policy_OutlierDetection) String

type TrafficPolicySpec_Policy_RetryPolicy

type TrafficPolicySpec_Policy_RetryPolicy struct {

	// Number of retries for a given request
	Attempts int32 `protobuf:"varint,1,opt,name=attempts,proto3" json:"attempts,omitempty"`
	// Timeout per retry attempt for a given request. Format: `1h`/`1m`/`1s`/`1ms`. *Must be >= 1ms*.
	PerTryTimeout *duration.Duration `protobuf:"bytes,2,opt,name=per_try_timeout,json=perTryTimeout,proto3" json:"per_try_timeout,omitempty"`
	// contains filtered or unexported fields
}

Specify retries for failed requests.

func (*TrafficPolicySpec_Policy_RetryPolicy) Descriptor deprecated

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

Deprecated: Use TrafficPolicySpec_Policy_RetryPolicy.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_RetryPolicy) Equal

func (m *TrafficPolicySpec_Policy_RetryPolicy) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_RetryPolicy) GetAttempts

func (*TrafficPolicySpec_Policy_RetryPolicy) GetPerTryTimeout

func (*TrafficPolicySpec_Policy_RetryPolicy) ProtoMessage

func (*TrafficPolicySpec_Policy_RetryPolicy) ProtoMessage()

func (*TrafficPolicySpec_Policy_RetryPolicy) ProtoReflect

func (*TrafficPolicySpec_Policy_RetryPolicy) Reset

func (*TrafficPolicySpec_Policy_RetryPolicy) String

type TrafficPolicySpec_Policy_Transform added in v1.1.0

type TrafficPolicySpec_Policy_Transform struct {

	// TODO: implement
	Todo string `protobuf:"bytes,1,opt,name=todo,proto3" json:"todo,omitempty"`
	// contains filtered or unexported fields
}

Transform filter config.

func (*TrafficPolicySpec_Policy_Transform) Descriptor deprecated added in v1.1.0

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

Deprecated: Use TrafficPolicySpec_Policy_Transform.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_Policy_Transform) Equal added in v1.1.0

func (m *TrafficPolicySpec_Policy_Transform) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_Policy_Transform) GetTodo added in v1.1.0

func (*TrafficPolicySpec_Policy_Transform) ProtoMessage added in v1.1.0

func (*TrafficPolicySpec_Policy_Transform) ProtoMessage()

func (*TrafficPolicySpec_Policy_Transform) ProtoReflect added in v1.1.0

func (*TrafficPolicySpec_Policy_Transform) Reset added in v1.1.0

func (*TrafficPolicySpec_Policy_Transform) String added in v1.1.0

type TrafficPolicySpec_RouteSelector added in v1.1.0

type TrafficPolicySpec_RouteSelector struct {

	// Select VirtualHosts by reference.
	VirtualHostRefs []*v11.ObjectRef `protobuf:"bytes,1,rep,name=virtual_host_refs,json=virtualHostRefs,proto3" json:"virtual_host_refs,omitempty"`
	// Select VirtualHosts by label and/or namespace.
	VirtualHostSelector *v11.ObjectSelector `protobuf:"bytes,2,opt,name=virtual_host_selector,json=virtualHostSelector,proto3" json:"virtual_host_selector,omitempty"`
	// Select RouteTables by reference.
	RouteTableRefs []*v11.ObjectRef `protobuf:"bytes,3,rep,name=route_table_refs,json=routeTableRefs,proto3" json:"route_table_refs,omitempty"`
	// Select RouteTables by label and/or namespace.
	RouteTableSelector *v11.ObjectSelector `protobuf:"bytes,4,opt,name=route_table_selector,json=routeTableSelector,proto3" json:"route_table_selector,omitempty"`
	// Specify a set of labels for selecting Routes. All labels listed here must be
	// present on a route for that route to be considered matched.
	// If omitted, all routes on the selected VirtualHosts are selected.
	RouteLabelMatcher map[string]string `` /* 202-byte string literal not displayed */
	// contains filtered or unexported fields
}

Specify selected gateway traffic by specifying which gateway resources (virtualHosts or routeTables) to select. You can optionally further filter by using route labels to only select a subset of routes within those resources. If no virtualHost or routeTable selectors (or references) are explicitly set, all virtualHosts and routeTables will be selected by default. If no route label matcher is specified, all routes on the selected resources are matched.

func (*TrafficPolicySpec_RouteSelector) Descriptor deprecated added in v1.1.0

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

Deprecated: Use TrafficPolicySpec_RouteSelector.ProtoReflect.Descriptor instead.

func (*TrafficPolicySpec_RouteSelector) Equal added in v1.1.0

func (m *TrafficPolicySpec_RouteSelector) Equal(that interface{}) bool

Equal function

func (*TrafficPolicySpec_RouteSelector) GetRouteLabelMatcher added in v1.1.0

func (x *TrafficPolicySpec_RouteSelector) GetRouteLabelMatcher() map[string]string

func (*TrafficPolicySpec_RouteSelector) GetRouteTableRefs added in v1.1.0

func (x *TrafficPolicySpec_RouteSelector) GetRouteTableRefs() []*v11.ObjectRef

func (*TrafficPolicySpec_RouteSelector) GetRouteTableSelector added in v1.1.0

func (x *TrafficPolicySpec_RouteSelector) GetRouteTableSelector() *v11.ObjectSelector

func (*TrafficPolicySpec_RouteSelector) GetVirtualHostRefs added in v1.1.0

func (x *TrafficPolicySpec_RouteSelector) GetVirtualHostRefs() []*v11.ObjectRef

func (*TrafficPolicySpec_RouteSelector) GetVirtualHostSelector added in v1.1.0

func (x *TrafficPolicySpec_RouteSelector) GetVirtualHostSelector() *v11.ObjectSelector

func (*TrafficPolicySpec_RouteSelector) ProtoMessage added in v1.1.0

func (*TrafficPolicySpec_RouteSelector) ProtoMessage()

func (*TrafficPolicySpec_RouteSelector) ProtoReflect added in v1.1.0

func (*TrafficPolicySpec_RouteSelector) Reset added in v1.1.0

func (*TrafficPolicySpec_RouteSelector) String added in v1.1.0

type TrafficPolicyStatus

type TrafficPolicyStatus struct {

	// The most recent generation observed in the the TrafficPolicy metadata.
	// If the `observedGeneration` does not match `metadata.generation`, Gloo Mesh has not processed the most
	// recent version of this resource.
	ObservedGeneration int64 `protobuf:"varint,1,opt,name=observed_generation,json=observedGeneration,proto3" json:"observed_generation,omitempty"`
	// The state of the overall resource.
	// It will only show accepted if it has been successfully applied to all selected Destinations.
	State v1.ApprovalState `protobuf:"varint,2,opt,name=state,proto3,enum=common.mesh.gloo.solo.io.ApprovalState" json:"state,omitempty"`
	// The status of the TrafficPolicy for each selected Destination.
	// A TrafficPolicy may be Accepted for some Destinations and rejected for others.
	Destinations map[string]*ApprovalStatus `` /* 165-byte string literal not displayed */
	// The list of selected Workloads for which this policy has been applied.
	Workloads []string `protobuf:"bytes,4,rep,name=workloads,proto3" json:"workloads,omitempty"`
	// Any errors found while processing this generation of the resource.
	Errors []string `protobuf:"bytes,5,rep,name=errors,proto3" json:"errors,omitempty"`
	// The Gateway resoures to which this traffic policy has been applied.
	// The resource names are in the format `name.namespace (resourceType)`,
	// which act as the keys in this map.
	GatewayRoutes map[string]*GatewayRoutes `` /* 188-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*TrafficPolicyStatus) DeepCopyInto

func (in *TrafficPolicyStatus) DeepCopyInto(out *TrafficPolicyStatus)

DeepCopyInto for the TrafficPolicy.Status

func (*TrafficPolicyStatus) Descriptor deprecated

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

Deprecated: Use TrafficPolicyStatus.ProtoReflect.Descriptor instead.

func (*TrafficPolicyStatus) Equal

func (m *TrafficPolicyStatus) Equal(that interface{}) bool

Equal function

func (*TrafficPolicyStatus) GetDestinations

func (x *TrafficPolicyStatus) GetDestinations() map[string]*ApprovalStatus

func (*TrafficPolicyStatus) GetErrors

func (x *TrafficPolicyStatus) GetErrors() []string

func (*TrafficPolicyStatus) GetGatewayRoutes added in v1.1.0

func (x *TrafficPolicyStatus) GetGatewayRoutes() map[string]*GatewayRoutes

func (*TrafficPolicyStatus) GetObservedGeneration

func (x *TrafficPolicyStatus) GetObservedGeneration() int64

func (*TrafficPolicyStatus) GetState

func (x *TrafficPolicyStatus) GetState() v1.ApprovalState

func (*TrafficPolicyStatus) GetWorkloads

func (x *TrafficPolicyStatus) GetWorkloads() []string

func (*TrafficPolicyStatus) MarshalJSON

func (this *TrafficPolicyStatus) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for TrafficPolicyStatus

func (*TrafficPolicyStatus) ProtoMessage

func (*TrafficPolicyStatus) ProtoMessage()

func (*TrafficPolicyStatus) ProtoReflect

func (x *TrafficPolicyStatus) ProtoReflect() protoreflect.Message

func (*TrafficPolicyStatus) Reset

func (x *TrafficPolicyStatus) Reset()

func (*TrafficPolicyStatus) String

func (x *TrafficPolicyStatus) String() string

func (*TrafficPolicyStatus) UnmarshalJSON

func (this *TrafficPolicyStatus) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for TrafficPolicyStatus

type TrafficPolicyStatusWriter

type TrafficPolicyStatusWriter interface {
	// Update updates the fields corresponding to the status subresource for the
	// given TrafficPolicy object.
	UpdateTrafficPolicyStatus(ctx context.Context, obj *TrafficPolicy, opts ...client.UpdateOption) error

	// Patch patches the given TrafficPolicy object's subresource.
	PatchTrafficPolicyStatus(ctx context.Context, obj *TrafficPolicy, patch client.Patch, opts ...client.PatchOption) error
}

StatusWriter knows how to update status subresource of a TrafficPolicy object.

type TrafficPolicyTransitionFunction

type TrafficPolicyTransitionFunction func(existing, desired *TrafficPolicy) error

TrafficPolicyTransitionFunction instructs the TrafficPolicyWriter how to transition between an existing TrafficPolicy object and a desired on an Upsert

type TrafficPolicyWriter

type TrafficPolicyWriter interface {
	// Create saves the TrafficPolicy object.
	CreateTrafficPolicy(ctx context.Context, obj *TrafficPolicy, opts ...client.CreateOption) error

	// Delete deletes the TrafficPolicy object.
	DeleteTrafficPolicy(ctx context.Context, key client.ObjectKey, opts ...client.DeleteOption) error

	// Update updates the given TrafficPolicy object.
	UpdateTrafficPolicy(ctx context.Context, obj *TrafficPolicy, opts ...client.UpdateOption) error

	// Patch patches the given TrafficPolicy object.
	PatchTrafficPolicy(ctx context.Context, obj *TrafficPolicy, patch client.Patch, opts ...client.PatchOption) error

	// DeleteAllOf deletes all TrafficPolicy objects matching the given options.
	DeleteAllOfTrafficPolicy(ctx context.Context, opts ...client.DeleteAllOfOption) error

	// Create or Update the TrafficPolicy object.
	UpsertTrafficPolicy(ctx context.Context, obj *TrafficPolicy, transitionFuncs ...TrafficPolicyTransitionFunction) error
}

Writer knows how to create, delete, and update TrafficPolicys.

type VirtualMesh

type VirtualMesh struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   VirtualMeshSpec   `json:"spec,omitempty"`
	Status VirtualMeshStatus `json:"status,omitempty"`
}

VirtualMesh is the Schema for the virtualMesh API

func (*VirtualMesh) DeepCopy

func (in *VirtualMesh) DeepCopy() *VirtualMesh

func (*VirtualMesh) DeepCopyInto

func (in *VirtualMesh) DeepCopyInto(out *VirtualMesh)

func (*VirtualMesh) DeepCopyObject

func (in *VirtualMesh) DeepCopyObject() runtime.Object

func (VirtualMesh) GVK

GVK returns the GroupVersionKind associated with the resource type.

type VirtualMeshClient

type VirtualMeshClient interface {
	VirtualMeshReader
	VirtualMeshWriter
	VirtualMeshStatusWriter
}

Client knows how to perform CRUD operations on VirtualMeshs.

type VirtualMeshList

type VirtualMeshList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []VirtualMesh `json:"items"`
}

VirtualMeshList contains a list of VirtualMesh

func (*VirtualMeshList) DeepCopy

func (in *VirtualMeshList) DeepCopy() *VirtualMeshList

func (*VirtualMeshList) DeepCopyInto

func (in *VirtualMeshList) DeepCopyInto(out *VirtualMeshList)

func (*VirtualMeshList) DeepCopyObject

func (in *VirtualMeshList) DeepCopyObject() runtime.Object

type VirtualMeshReader

type VirtualMeshReader interface {
	// Get retrieves a VirtualMesh for the given object key
	GetVirtualMesh(ctx context.Context, key client.ObjectKey) (*VirtualMesh, error)

	// List retrieves list of VirtualMeshs for a given namespace and list options.
	ListVirtualMesh(ctx context.Context, opts ...client.ListOption) (*VirtualMeshList, error)
}

Reader knows how to read and list VirtualMeshs.

type VirtualMeshSlice

type VirtualMeshSlice []*VirtualMesh

VirtualMeshSlice represents a slice of *VirtualMesh

type VirtualMeshSpec

type VirtualMeshSpec struct {

	// Specify the Meshes configured by this VirtualMesh.
	Meshes []*v1.ObjectRef `protobuf:"bytes,1,rep,name=meshes,proto3" json:"meshes,omitempty"`
	// Specify mTLS options.
	MtlsConfig *VirtualMeshSpec_MTLSConfig `protobuf:"bytes,2,opt,name=mtls_config,json=mtlsConfig,proto3" json:"mtls_config,omitempty"`
	// Specify how to federate Destinations across service mesh boundaries.
	Federation *VirtualMeshSpec_Federation `protobuf:"bytes,3,opt,name=federation,proto3" json:"federation,omitempty"`
	// Specify a global access policy for all Workloads and Destinations associated with this VirtualMesh.
	GlobalAccessPolicy VirtualMeshSpec_GlobalAccessPolicy `` /* 187-byte string literal not displayed */
	// contains filtered or unexported fields
}

Represents a logical grouping of Meshes for shared configuration and cross-mesh interoperability.

func (*VirtualMeshSpec) DeepCopyInto

func (in *VirtualMeshSpec) DeepCopyInto(out *VirtualMeshSpec)

DeepCopyInto for the VirtualMesh.Spec

func (*VirtualMeshSpec) Descriptor deprecated

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

Deprecated: Use VirtualMeshSpec.ProtoReflect.Descriptor instead.

func (*VirtualMeshSpec) Equal

func (m *VirtualMeshSpec) Equal(that interface{}) bool

Equal function

func (*VirtualMeshSpec) GetFederation

func (x *VirtualMeshSpec) GetFederation() *VirtualMeshSpec_Federation

func (*VirtualMeshSpec) GetGlobalAccessPolicy

func (x *VirtualMeshSpec) GetGlobalAccessPolicy() VirtualMeshSpec_GlobalAccessPolicy

func (*VirtualMeshSpec) GetMeshes

func (x *VirtualMeshSpec) GetMeshes() []*v1.ObjectRef

func (*VirtualMeshSpec) GetMtlsConfig

func (x *VirtualMeshSpec) GetMtlsConfig() *VirtualMeshSpec_MTLSConfig

func (*VirtualMeshSpec) MarshalJSON

func (this *VirtualMeshSpec) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for VirtualMeshSpec

func (*VirtualMeshSpec) ProtoMessage

func (*VirtualMeshSpec) ProtoMessage()

func (*VirtualMeshSpec) ProtoReflect

func (x *VirtualMeshSpec) ProtoReflect() protoreflect.Message

func (*VirtualMeshSpec) Reset

func (x *VirtualMeshSpec) Reset()

func (*VirtualMeshSpec) String

func (x *VirtualMeshSpec) String() string

func (*VirtualMeshSpec) UnmarshalJSON

func (this *VirtualMeshSpec) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for VirtualMeshSpec

type VirtualMeshSpec_Federation

type VirtualMeshSpec_Federation struct {

	// Selects the Destination(s) acting as ingress gateways for cross cluster traffic.
	// The supplied IngressGatewaySelectors will be used to select ingress gateways for all Meshes in this VirtualMesh.
	EastWestIngressGatewaySelectors []*v12.IngressGatewaySelector `` /* 160-byte string literal not displayed */
	// Selectively federate Destinations to specific external meshes.
	// If omitted, no Destinations will be federated.
	Selectors []*VirtualMeshSpec_Federation_FederationSelector `protobuf:"bytes,4,rep,name=selectors,proto3" json:"selectors,omitempty"`
	// DEPRECATED: Use `selectors` instead. Omission of the `selectors` field has permissive semantics.
	// The "mode" in which to federate Destinations within this VirtualMesh.
	//
	// Types that are assignable to Mode:
	//	*VirtualMeshSpec_Federation_Permissive
	Mode isVirtualMeshSpec_Federation_Mode `protobuf_oneof:"mode"`
	// If true, all multicluster traffic will be routed directly to the Kubernetes service endpoints of the Destinations,
	// rather than through an ingress gateway. This mode requires a flat network environment.
	// This feature is exclusive to Gloo Mesh Enterprise.
	FlatNetwork bool `protobuf:"varint,2,opt,name=flat_network,json=flatNetwork,proto3" json:"flat_network,omitempty"`
	// Configure the suffix for hostnames of Destinations federated within this VirtualMesh.
	// Currently this is only supported for Istio with [smart DNS proxying enabled](https://istio.io/latest/blog/2020/dns-proxy/),
	// otherwise setting this field results in an error.
	// If omitted, the hostname suffix defaults to "global".
	HostnameSuffix string `protobuf:"bytes,3,opt,name=hostname_suffix,json=hostnameSuffix,proto3" json:"hostname_suffix,omitempty"`
	// Specify a keepalive rule for all requests made within the VirtualMesh which cross clusters within that VirtualMesh,
	// as well as any requests to externalService type destinations.
	TcpKeepalive *v12.TCPKeepalive `protobuf:"bytes,5,opt,name=tcp_keepalive,json=tcpKeepalive,proto3" json:"tcp_keepalive,omitempty"`
	// contains filtered or unexported fields
}

"Federation" refers to the ability to expose Destinations across service mesh boundaries, i.e. to traffic originating from Workloads external to the Destination's Mesh.

func (*VirtualMeshSpec_Federation) Descriptor deprecated

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

Deprecated: Use VirtualMeshSpec_Federation.ProtoReflect.Descriptor instead.

func (*VirtualMeshSpec_Federation) Equal

func (m *VirtualMeshSpec_Federation) Equal(that interface{}) bool

Equal function

func (*VirtualMeshSpec_Federation) GetEastWestIngressGatewaySelectors

func (x *VirtualMeshSpec_Federation) GetEastWestIngressGatewaySelectors() []*v12.IngressGatewaySelector

func (*VirtualMeshSpec_Federation) GetFlatNetwork

func (x *VirtualMeshSpec_Federation) GetFlatNetwork() bool

func (*VirtualMeshSpec_Federation) GetHostnameSuffix

func (x *VirtualMeshSpec_Federation) GetHostnameSuffix() string

func (*VirtualMeshSpec_Federation) GetMode

func (m *VirtualMeshSpec_Federation) GetMode() isVirtualMeshSpec_Federation_Mode

func (*VirtualMeshSpec_Federation) GetPermissive

func (x *VirtualMeshSpec_Federation) GetPermissive() *empty.Empty

func (*VirtualMeshSpec_Federation) GetSelectors added in v1.1.0

func (*VirtualMeshSpec_Federation) GetTcpKeepalive added in v1.1.0

func (x *VirtualMeshSpec_Federation) GetTcpKeepalive() *v12.TCPKeepalive

func (*VirtualMeshSpec_Federation) ProtoMessage

func (*VirtualMeshSpec_Federation) ProtoMessage()

func (*VirtualMeshSpec_Federation) ProtoReflect

func (*VirtualMeshSpec_Federation) Reset

func (x *VirtualMeshSpec_Federation) Reset()

func (*VirtualMeshSpec_Federation) String

func (x *VirtualMeshSpec_Federation) String() string

type VirtualMeshSpec_Federation_FederationSelector added in v1.1.0

type VirtualMeshSpec_Federation_FederationSelector struct {

	// The set of Destinations that will be federated to external Meshes.
	// If omitted, all Destinations will be selected.
	DestinationSelectors []*v12.DestinationSelector `protobuf:"bytes,1,rep,name=destination_selectors,json=destinationSelectors,proto3" json:"destination_selectors,omitempty"`
	// The Meshes to which the selected Destinations will be federated. All referenced Meshes must exist in this VirtualMesh.
	// If omitted, the selected Destinations will be federated to all Meshes in the VirtualMesh.
	Meshes []*v1.ObjectRef `protobuf:"bytes,2,rep,name=meshes,proto3" json:"meshes,omitempty"`
	// contains filtered or unexported fields
}

Selects a set of Destinations to federate to the referenced Meshes.

func (*VirtualMeshSpec_Federation_FederationSelector) Descriptor deprecated added in v1.1.0

Deprecated: Use VirtualMeshSpec_Federation_FederationSelector.ProtoReflect.Descriptor instead.

func (*VirtualMeshSpec_Federation_FederationSelector) Equal added in v1.1.0

func (m *VirtualMeshSpec_Federation_FederationSelector) Equal(that interface{}) bool

Equal function

func (*VirtualMeshSpec_Federation_FederationSelector) GetDestinationSelectors added in v1.1.0

func (*VirtualMeshSpec_Federation_FederationSelector) GetMeshes added in v1.1.0

func (*VirtualMeshSpec_Federation_FederationSelector) ProtoMessage added in v1.1.0

func (*VirtualMeshSpec_Federation_FederationSelector) ProtoReflect added in v1.1.0

func (*VirtualMeshSpec_Federation_FederationSelector) Reset added in v1.1.0

func (*VirtualMeshSpec_Federation_FederationSelector) String added in v1.1.0

type VirtualMeshSpec_Federation_Permissive

type VirtualMeshSpec_Federation_Permissive struct {
	// DEPRECATED: Use `selectors` with an empty selector (i.e. `{}`) for permissive semantics.
	// Expose all Destinations to all Workloads in this VirtualMesh.
	Permissive *empty.Empty `protobuf:"bytes,1,opt,name=permissive,proto3,oneof"`
}

type VirtualMeshSpec_GlobalAccessPolicy

type VirtualMeshSpec_GlobalAccessPolicy int32

Specify a global access policy for all Workloads and Destinations associated with this VirtualMesh.

const (
	// Assume the default for the service mesh type. Istio defaults to `false`, App Mesh defaults to `true`.
	VirtualMeshSpec_MESH_DEFAULT VirtualMeshSpec_GlobalAccessPolicy = 0
	// Disallow traffic to all Destinations in the VirtualMesh unless explicitly allowed through [AccessPolicies]({{< versioned_link_path fromRoot="/reference/api/github.com.solo-io.gloo-mesh.api.networking.v1.access_policy/" >}}).
	VirtualMeshSpec_ENABLED VirtualMeshSpec_GlobalAccessPolicy = 1
	// Allow traffic to all Destinations in the VirtualMesh unless explicitly disallowed through [AccessPolicies]({{< versioned_link_path fromRoot="/reference/api/github.com.solo-io.gloo-mesh.api.networking.v1.access_policy/" >}}).
	VirtualMeshSpec_DISABLED VirtualMeshSpec_GlobalAccessPolicy = 2
)

func (VirtualMeshSpec_GlobalAccessPolicy) Descriptor

func (VirtualMeshSpec_GlobalAccessPolicy) Enum

func (VirtualMeshSpec_GlobalAccessPolicy) EnumDescriptor deprecated

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

Deprecated: Use VirtualMeshSpec_GlobalAccessPolicy.Descriptor instead.

func (VirtualMeshSpec_GlobalAccessPolicy) Number

func (VirtualMeshSpec_GlobalAccessPolicy) String

func (VirtualMeshSpec_GlobalAccessPolicy) Type

type VirtualMeshSpec_MTLSConfig

type VirtualMeshSpec_MTLSConfig struct {

	// Specify the model for establishing mTLS trust between Meshes.
	//
	// Types that are assignable to TrustModel:
	//	*VirtualMeshSpec_MTLSConfig_Shared
	//	*VirtualMeshSpec_MTLSConfig_Limited
	TrustModel isVirtualMeshSpec_MTLSConfig_TrustModel `protobuf_oneof:"trust_model"`
	// Specify whether to allow Gloo Mesh to restart Kubernetes Pods when certificates are rotated when establishing shared trust.
	// If this option is not explicitly enabled,
	// users must restart Pods manually for the new certificates to be picked up.
	// `meshctl` provides the command `meshctl mesh restart` to simplify this process, see [here]({{< versioned_link_path fromRoot="reference/cli/meshctl_mesh_restart/" >}}) for more info.
	AutoRestartPods bool `protobuf:"varint,3,opt,name=auto_restart_pods,json=autoRestartPods,proto3" json:"auto_restart_pods,omitempty"`
	// contains filtered or unexported fields
}

Specify mTLS options. This includes options for configuring Mutual TLS within an individual Mesh, as well as enabling mTLS across Meshes by establishing cross-mesh trust.

func (*VirtualMeshSpec_MTLSConfig) Descriptor deprecated

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

Deprecated: Use VirtualMeshSpec_MTLSConfig.ProtoReflect.Descriptor instead.

func (*VirtualMeshSpec_MTLSConfig) Equal

func (m *VirtualMeshSpec_MTLSConfig) Equal(that interface{}) bool

Equal function

func (*VirtualMeshSpec_MTLSConfig) GetAutoRestartPods

func (x *VirtualMeshSpec_MTLSConfig) GetAutoRestartPods() bool

func (*VirtualMeshSpec_MTLSConfig) GetLimited

func (*VirtualMeshSpec_MTLSConfig) GetShared

func (x *VirtualMeshSpec_MTLSConfig) GetShared() *SharedTrust

func (*VirtualMeshSpec_MTLSConfig) GetTrustModel

func (m *VirtualMeshSpec_MTLSConfig) GetTrustModel() isVirtualMeshSpec_MTLSConfig_TrustModel

func (*VirtualMeshSpec_MTLSConfig) ProtoMessage

func (*VirtualMeshSpec_MTLSConfig) ProtoMessage()

func (*VirtualMeshSpec_MTLSConfig) ProtoReflect

func (*VirtualMeshSpec_MTLSConfig) Reset

func (x *VirtualMeshSpec_MTLSConfig) Reset()

func (*VirtualMeshSpec_MTLSConfig) String

func (x *VirtualMeshSpec_MTLSConfig) String() string

type VirtualMeshSpec_MTLSConfig_Limited

type VirtualMeshSpec_MTLSConfig_Limited struct {
	// Limited trust (selectively allow communication between Workloads and Destinations in the grouped Meshes). *Currently not available.*
	Limited *VirtualMeshSpec_MTLSConfig_LimitedTrust `protobuf:"bytes,2,opt,name=limited,proto3,oneof"`
}

type VirtualMeshSpec_MTLSConfig_LimitedTrust

type VirtualMeshSpec_MTLSConfig_LimitedTrust struct {
	// contains filtered or unexported fields
}

Limited trust is a trust model which does not require trusting Meshes to share the same root certificate or identity. Instead, trust is established between different Meshes by connecting their ingress/egress gateways with a common certificate/identity. In this model all requests between different have the following request path when communicating between clusters ```

cluster 1 MTLS               shared MTLS                  cluster 2 MTLS

client/workload <-----------> egress gateway <----------> ingress gateway <--------------> server ``` This approach has the downside of not maintaining identity from client to server, but allows for ad-hoc addition of additional Meshes into a VirtualMesh.

func (*VirtualMeshSpec_MTLSConfig_LimitedTrust) Descriptor deprecated

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

Deprecated: Use VirtualMeshSpec_MTLSConfig_LimitedTrust.ProtoReflect.Descriptor instead.

func (*VirtualMeshSpec_MTLSConfig_LimitedTrust) Equal

func (m *VirtualMeshSpec_MTLSConfig_LimitedTrust) Equal(that interface{}) bool

Equal function

func (*VirtualMeshSpec_MTLSConfig_LimitedTrust) ProtoMessage

func (*VirtualMeshSpec_MTLSConfig_LimitedTrust) ProtoReflect

func (*VirtualMeshSpec_MTLSConfig_LimitedTrust) Reset

func (*VirtualMeshSpec_MTLSConfig_LimitedTrust) String

type VirtualMeshSpec_MTLSConfig_Shared

type VirtualMeshSpec_MTLSConfig_Shared struct {
	// Shared trust (allow communication between any pair of Workloads and Destinations in the grouped Meshes).
	Shared *SharedTrust `protobuf:"bytes,1,opt,name=shared,proto3,oneof"`
}

type VirtualMeshStatus

type VirtualMeshStatus struct {

	// The most recent generation observed in the the VirtualMesh metadata.
	// If the `observedGeneration` does not match `metadata.generation`, Gloo Mesh has not processed the most
	// recent version of this resource.
	ObservedGeneration int64 `protobuf:"varint,1,opt,name=observed_generation,json=observedGeneration,proto3" json:"observed_generation,omitempty"`
	// The state of the overall resource. It will only show accepted if it has been successfully
	// applied to all selected Meshes.
	State v12.ApprovalState `protobuf:"varint,2,opt,name=state,proto3,enum=common.mesh.gloo.solo.io.ApprovalState" json:"state,omitempty"`
	// Any errors found while processing this generation of the resource.
	Errors []string `protobuf:"bytes,3,rep,name=errors,proto3" json:"errors,omitempty"`
	// The status of the VirtualMesh for each Mesh to which it has been applied.
	// A VirtualMesh may be Accepted for some Meshes and rejected for others.
	Meshes map[string]*ApprovalStatus `` /* 153-byte string literal not displayed */
	// The status of the VirtualMesh for each Destination to which it has been applied.
	// A VirtualMesh may be Accepted for some Destinations and rejected for others.
	Destinations map[string]*ApprovalStatus `` /* 165-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*VirtualMeshStatus) DeepCopyInto

func (in *VirtualMeshStatus) DeepCopyInto(out *VirtualMeshStatus)

DeepCopyInto for the VirtualMesh.Status

func (*VirtualMeshStatus) Descriptor deprecated

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

Deprecated: Use VirtualMeshStatus.ProtoReflect.Descriptor instead.

func (*VirtualMeshStatus) Equal

func (m *VirtualMeshStatus) Equal(that interface{}) bool

Equal function

func (*VirtualMeshStatus) GetDestinations added in v1.0.4

func (x *VirtualMeshStatus) GetDestinations() map[string]*ApprovalStatus

func (*VirtualMeshStatus) GetErrors

func (x *VirtualMeshStatus) GetErrors() []string

func (*VirtualMeshStatus) GetMeshes

func (x *VirtualMeshStatus) GetMeshes() map[string]*ApprovalStatus

func (*VirtualMeshStatus) GetObservedGeneration

func (x *VirtualMeshStatus) GetObservedGeneration() int64

func (*VirtualMeshStatus) GetState

func (x *VirtualMeshStatus) GetState() v12.ApprovalState

func (*VirtualMeshStatus) MarshalJSON

func (this *VirtualMeshStatus) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for VirtualMeshStatus

func (*VirtualMeshStatus) ProtoMessage

func (*VirtualMeshStatus) ProtoMessage()

func (*VirtualMeshStatus) ProtoReflect

func (x *VirtualMeshStatus) ProtoReflect() protoreflect.Message

func (*VirtualMeshStatus) Reset

func (x *VirtualMeshStatus) Reset()

func (*VirtualMeshStatus) String

func (x *VirtualMeshStatus) String() string

func (*VirtualMeshStatus) UnmarshalJSON

func (this *VirtualMeshStatus) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for VirtualMeshStatus

type VirtualMeshStatusWriter

type VirtualMeshStatusWriter interface {
	// Update updates the fields corresponding to the status subresource for the
	// given VirtualMesh object.
	UpdateVirtualMeshStatus(ctx context.Context, obj *VirtualMesh, opts ...client.UpdateOption) error

	// Patch patches the given VirtualMesh object's subresource.
	PatchVirtualMeshStatus(ctx context.Context, obj *VirtualMesh, patch client.Patch, opts ...client.PatchOption) error
}

StatusWriter knows how to update status subresource of a VirtualMesh object.

type VirtualMeshTransitionFunction

type VirtualMeshTransitionFunction func(existing, desired *VirtualMesh) error

VirtualMeshTransitionFunction instructs the VirtualMeshWriter how to transition between an existing VirtualMesh object and a desired on an Upsert

type VirtualMeshWriter

type VirtualMeshWriter interface {
	// Create saves the VirtualMesh object.
	CreateVirtualMesh(ctx context.Context, obj *VirtualMesh, opts ...client.CreateOption) error

	// Delete deletes the VirtualMesh object.
	DeleteVirtualMesh(ctx context.Context, key client.ObjectKey, opts ...client.DeleteOption) error

	// Update updates the given VirtualMesh object.
	UpdateVirtualMesh(ctx context.Context, obj *VirtualMesh, opts ...client.UpdateOption) error

	// Patch patches the given VirtualMesh object.
	PatchVirtualMesh(ctx context.Context, obj *VirtualMesh, patch client.Patch, opts ...client.PatchOption) error

	// DeleteAllOf deletes all VirtualMesh objects matching the given options.
	DeleteAllOfVirtualMesh(ctx context.Context, opts ...client.DeleteAllOfOption) error

	// Create or Update the VirtualMesh object.
	UpsertVirtualMesh(ctx context.Context, obj *VirtualMesh, transitionFuncs ...VirtualMeshTransitionFunction) error
}

Writer knows how to create, delete, and update VirtualMeshs.

type WeightedDestination added in v1.1.0

type WeightedDestination struct {

	// Specify the proportion of traffic to be forwarded to this destination.
	// Weights across all of the `destinations` must sum to 100.
	Weight uint32 `protobuf:"varint,1,opt,name=weight,proto3" json:"weight,omitempty"`
	// Platform specific destinations.
	//
	// Types that are assignable to DestinationType:
	//	*WeightedDestination_KubeService
	//	*WeightedDestination_VirtualDestination_
	//	*WeightedDestination_StaticDestination
	//	*WeightedDestination_ClusterHeader
	DestinationType isWeightedDestination_DestinationType `protobuf_oneof:"destination_type"`
	// additional options / config for a route which will be applied
	// when this destination is selected.
	Options *WeightedDestination_DestinationOptions `protobuf:"bytes,6,opt,name=options,proto3" json:"options,omitempty"`
	// contains filtered or unexported fields
}

Specify a traffic shift or routing destination along with a weight. Weight is only relevant when supplying multiple destinations.

func (*WeightedDestination) Descriptor deprecated added in v1.1.0

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

Deprecated: Use WeightedDestination.ProtoReflect.Descriptor instead.

func (*WeightedDestination) Equal added in v1.1.0

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

Equal function

func (*WeightedDestination) GetClusterHeader added in v1.1.0

func (x *WeightedDestination) GetClusterHeader() string

func (*WeightedDestination) GetDestinationType added in v1.1.0

func (m *WeightedDestination) GetDestinationType() isWeightedDestination_DestinationType

func (*WeightedDestination) GetKubeService added in v1.1.0

func (*WeightedDestination) GetOptions added in v1.1.0

func (*WeightedDestination) GetStaticDestination added in v1.1.0

func (x *WeightedDestination) GetStaticDestination() *v1.ObjectRef

func (*WeightedDestination) GetVirtualDestination added in v1.1.0

func (x *WeightedDestination) GetVirtualDestination() *WeightedDestination_VirtualDestination

func (*WeightedDestination) GetWeight added in v1.1.0

func (x *WeightedDestination) GetWeight() uint32

func (*WeightedDestination) ProtoMessage added in v1.1.0

func (*WeightedDestination) ProtoMessage()

func (*WeightedDestination) ProtoReflect added in v1.1.0

func (x *WeightedDestination) ProtoReflect() protoreflect.Message

func (*WeightedDestination) Reset added in v1.1.0

func (x *WeightedDestination) Reset()

func (*WeightedDestination) String added in v1.1.0

func (x *WeightedDestination) String() string

type WeightedDestination_ClusterHeader added in v1.1.0

type WeightedDestination_ClusterHeader struct {
	// Envoy will determine the cluster to route to by reading the value of the HTTP header named by cluster_header from the request headers.
	// If the header is not found or the referenced cluster does not exist, Envoy will return a 404 response.
	// Avoid using this whenever possible, it does not allow for custom filter configuration based on Virtual Host.
	// {{/* NOTE: unimplemented */}}
	ClusterHeader string `protobuf:"bytes,5,opt,name=cluster_header,json=clusterHeader,proto3,oneof"`
}

type WeightedDestination_DestinationOptions added in v1.1.0

type WeightedDestination_DestinationOptions struct {

	// manipualte headers on traffic sent to this destination
	HeaderManipulation *HeaderManipulation `protobuf:"bytes,1,opt,name=header_manipulation,json=headerManipulation,proto3" json:"header_manipulation,omitempty"`
	// contains filtered or unexported fields
}

Specify functionality which will be applied to traffic when this particular destination is selected for routing.

func (*WeightedDestination_DestinationOptions) Descriptor deprecated added in v1.1.0

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

Deprecated: Use WeightedDestination_DestinationOptions.ProtoReflect.Descriptor instead.

func (*WeightedDestination_DestinationOptions) Equal added in v1.1.0

func (m *WeightedDestination_DestinationOptions) Equal(that interface{}) bool

Equal function

func (*WeightedDestination_DestinationOptions) GetHeaderManipulation added in v1.1.0

func (x *WeightedDestination_DestinationOptions) GetHeaderManipulation() *HeaderManipulation

func (*WeightedDestination_DestinationOptions) ProtoMessage added in v1.1.0

func (*WeightedDestination_DestinationOptions) ProtoReflect added in v1.1.0

func (*WeightedDestination_DestinationOptions) Reset added in v1.1.0

func (*WeightedDestination_DestinationOptions) String added in v1.1.0

type WeightedDestination_KubeDestination added in v1.1.0

type WeightedDestination_KubeDestination struct {

	// The name of the service.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The namespace of the service.
	Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"`
	// The Gloo Mesh cluster name (registration name) of the service.
	ClusterName string `protobuf:"bytes,3,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
	// Specify, by labels, a subset of service instances to route to.
	Subset map[string]string `` /* 153-byte string literal not displayed */
	// Port on the service to receive traffic. Required if the service exposes more than one port.
	Port uint32 `protobuf:"varint,5,opt,name=port,proto3" json:"port,omitempty"`
	// contains filtered or unexported fields
}

A Kubernetes destination.

func (*WeightedDestination_KubeDestination) Descriptor deprecated added in v1.1.0

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

Deprecated: Use WeightedDestination_KubeDestination.ProtoReflect.Descriptor instead.

func (*WeightedDestination_KubeDestination) Equal added in v1.1.0

func (m *WeightedDestination_KubeDestination) Equal(that interface{}) bool

Equal function

func (*WeightedDestination_KubeDestination) GetClusterName added in v1.1.0

func (x *WeightedDestination_KubeDestination) GetClusterName() string

func (*WeightedDestination_KubeDestination) GetName added in v1.1.0

func (*WeightedDestination_KubeDestination) GetNamespace added in v1.1.0

func (x *WeightedDestination_KubeDestination) GetNamespace() string

func (*WeightedDestination_KubeDestination) GetPort added in v1.1.0

func (*WeightedDestination_KubeDestination) GetSubset added in v1.1.0

func (*WeightedDestination_KubeDestination) ProtoMessage added in v1.1.0

func (*WeightedDestination_KubeDestination) ProtoMessage()

func (*WeightedDestination_KubeDestination) ProtoReflect added in v1.1.0

func (*WeightedDestination_KubeDestination) Reset added in v1.1.0

func (*WeightedDestination_KubeDestination) String added in v1.1.0

type WeightedDestination_KubeService added in v1.1.0

type WeightedDestination_KubeService struct {
	// Specify a Kubernetes Service.
	KubeService *WeightedDestination_KubeDestination `protobuf:"bytes,2,opt,name=kube_service,json=kubeService,proto3,oneof"`
}

type WeightedDestination_StaticDestination added in v1.1.0

type WeightedDestination_StaticDestination struct {
	// Reference to a gloo mesh Static Destination
	StaticDestination *v1.ObjectRef `protobuf:"bytes,4,opt,name=static_destination,json=staticDestination,proto3,oneof"`
}

type WeightedDestination_VirtualDestination added in v1.1.0

type WeightedDestination_VirtualDestination struct {

	// The name of the VirtualDestination object.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The namespace of the VirtualDestination object.
	Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"`
	// Specify, by labels, a subset of service instances backing the VirtualDestination to route to.
	Subset map[string]string `` /* 153-byte string literal not displayed */
	// contains filtered or unexported fields
}

Specify a VirtualDestination traffic shift destination.

func (*WeightedDestination_VirtualDestination) Descriptor deprecated added in v1.1.0

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

Deprecated: Use WeightedDestination_VirtualDestination.ProtoReflect.Descriptor instead.

func (*WeightedDestination_VirtualDestination) Equal added in v1.1.0

func (m *WeightedDestination_VirtualDestination) Equal(that interface{}) bool

Equal function

func (*WeightedDestination_VirtualDestination) GetName added in v1.1.0

func (*WeightedDestination_VirtualDestination) GetNamespace added in v1.1.0

func (*WeightedDestination_VirtualDestination) GetSubset added in v1.1.0

func (*WeightedDestination_VirtualDestination) ProtoMessage added in v1.1.0

func (*WeightedDestination_VirtualDestination) ProtoReflect added in v1.1.0

func (*WeightedDestination_VirtualDestination) Reset added in v1.1.0

func (*WeightedDestination_VirtualDestination) String added in v1.1.0

type WeightedDestination_VirtualDestination_ added in v1.1.0

type WeightedDestination_VirtualDestination_ struct {
	// Specify a VirtualDestination.
	VirtualDestination *WeightedDestination_VirtualDestination `protobuf:"bytes,3,opt,name=virtual_destination,json=virtualDestination,proto3,oneof"`
}

Directories

Path Synopsis
Definitions for the Kubernetes Controllers Definitions for the multicluster Kubernetes Controllers Definitions for the Kubernetes Controllers
Definitions for the Kubernetes Controllers Definitions for the multicluster Kubernetes Controllers Definitions for the Kubernetes Controllers
mocks
Package mock_controller is a generated GoMock package.
Package mock_controller is a generated GoMock package.
Package mock_v1 is a generated GoMock package.
Package mock_v1 is a generated GoMock package.
mocks
Package mock_v1sets is a generated GoMock package.
Package mock_v1sets is a generated GoMock package.

Jump to

Keyboard shortcuts

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