v1

package
v0.0.10 Latest Latest
Warning

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

Go to latest
Published: Jul 3, 2023 License: GPL-3.0 Imports: 35 Imported by: 3

Documentation

Overview

Package v1 contains API Schema definitions for the gate.xdmybl.io v1 API group +k8s:deepcopy-gen=package,register +groupName=gate.xdmybl.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 (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "gate.xdmybl.io", Version: "v1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)
View Source
var (
	UpstreamSpec_LbPolicy_name = map[int32]string{
		0: "ROUND_ROBIN",
		1: "LEAST_REQUEST",
		2: "RING_HASH",
		3: "RANDOM",
		5: "MAGLEV",
	}
	UpstreamSpec_LbPolicy_value = map[string]int32{
		"ROUND_ROBIN":   0,
		"LEAST_REQUEST": 1,
		"RING_HASH":     2,
		"RANDOM":        3,
		"MAGLEV":        5,
	}
)

Enum value maps for UpstreamSpec_LbPolicy.

View Source
var (
	HealthCheckSpecifier_Type_name = map[int32]string{
		0: "UNKNOWN",
		1: "TCP",
		2: "HTTP",
	}
	HealthCheckSpecifier_Type_value = map[string]int32{
		"UNKNOWN": 0,
		"TCP":     1,
		"HTTP":    2,
	}
)

Enum value maps for HealthCheckSpecifier_Type.

View Source
var CaCertificateGVK = schema.GroupVersionKind{
	Group:   "gate.xdmybl.io",
	Version: "v1",
	Kind:    "CaCertificate",
}

GroupVersionKind for CaCertificate

View Source
var CertificateGVK = schema.GroupVersionKind{
	Group:   "gate.xdmybl.io",
	Version: "v1",
	Kind:    "Certificate",
}

GroupVersionKind for Certificate

View Source
var File_github_com_xdmybl_gate_type_proto_gate_v1_ca_certificate_proto protoreflect.FileDescriptor
View Source
var File_github_com_xdmybl_gate_type_proto_gate_v1_certificate_proto protoreflect.FileDescriptor
View Source
var File_github_com_xdmybl_gate_type_proto_gate_v1_filter_proto protoreflect.FileDescriptor
View Source
var File_github_com_xdmybl_gate_type_proto_gate_v1_gateway_proto protoreflect.FileDescriptor
View Source
var File_github_com_xdmybl_gate_type_proto_gate_v1_ssl_certificate_proto protoreflect.FileDescriptor
View Source
var File_github_com_xdmybl_gate_type_proto_gate_v1_upstream_proto protoreflect.FileDescriptor
View Source
var FilterGVK = schema.GroupVersionKind{
	Group:   "gate.xdmybl.io",
	Version: "v1",
	Kind:    "Filter",
}

GroupVersionKind for Filter

View Source
var GatewayGVK = schema.GroupVersionKind{
	Group:   "gate.xdmybl.io",
	Version: "v1",
	Kind:    "Gateway",
}

GroupVersionKind for Gateway

View Source
var UpstreamGVK = schema.GroupVersionKind{
	Group:   "gate.xdmybl.io",
	Version: "v1",
	Kind:    "Upstream",
}

GroupVersionKind for Upstream

Functions

func AddToScheme

func AddToScheme(s *runtime.Scheme) error

func NewCaCertificateClient

func NewCaCertificateClient(client client.Client) *caCertificateClient

func NewCertificateClient added in v0.0.4

func NewCertificateClient(client client.Client) *certificateClient

func NewFilterClient

func NewFilterClient(client client.Client) *filterClient

func NewGatewayClient

func NewGatewayClient(client client.Client) *gatewayClient

func NewUpstreamClient

func NewUpstreamClient(client client.Client) *upstreamClient

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type CaCertificate

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

	Spec CaCertificateSpec `json:"spec,omitempty"`
}

CaCertificate is the Schema for the caCertificate API

func (*CaCertificate) DeepCopy

func (in *CaCertificate) DeepCopy() *CaCertificate

func (*CaCertificate) DeepCopyInto

func (in *CaCertificate) DeepCopyInto(out *CaCertificate)

func (*CaCertificate) DeepCopyObject

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

func (CaCertificate) GVK

GVK returns the GroupVersionKind associated with the resource type.

type CaCertificateClient

type CaCertificateClient interface {
	CaCertificateReader
	CaCertificateWriter
	CaCertificateStatusWriter
}

Client knows how to perform CRUD operations on CaCertificates.

type CaCertificateList

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

CaCertificateList contains a list of CaCertificate

func (*CaCertificateList) DeepCopy

func (in *CaCertificateList) DeepCopy() *CaCertificateList

func (*CaCertificateList) DeepCopyInto

func (in *CaCertificateList) DeepCopyInto(out *CaCertificateList)

func (*CaCertificateList) DeepCopyObject

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

type CaCertificateReader

type CaCertificateReader interface {
	// Get retrieves a CaCertificate for the given object key
	GetCaCertificate(ctx context.Context, key client.ObjectKey) (*CaCertificate, error)

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

Reader knows how to read and list CaCertificates.

type CaCertificateSlice

type CaCertificateSlice []*CaCertificate

CaCertificateSlice represents a slice of *CaCertificate

type CaCertificateSpec

type CaCertificateSpec struct {
	CommonInfo              *v1.CommonInfo     `protobuf:"bytes,1,opt,name=commonInfo,proto3" json:"commonInfo,omitempty"`
	CertificateInfo         *v11.Certificate   `protobuf:"bytes,2,opt,name=certificateInfo,proto3" json:"certificateInfo,omitempty"`
	Ca                      string             `protobuf:"bytes,3,opt,name=ca,proto3" json:"ca,omitempty"`
	Crl                     string             `protobuf:"bytes,4,opt,name=crl,proto3" json:"crl,omitempty"`
	AllowExpiredCertificate bool               `protobuf:"varint,5,opt,name=allowExpiredCertificate,proto3" json:"allowExpiredCertificate,omitempty"`
	TlsParameters           *v11.TlsParameters `protobuf:"bytes,6,opt,name=tlsParameters,proto3" json:"tlsParameters,omitempty"`
	// Set Application Level Protocol Negotiation
	// If empty, defaults to ["h2", "http/1.1"].
	AlpnProtocols []string `protobuf:"bytes,7,rep,name=alpnProtocols,proto3" json:"alpnProtocols,omitempty"`
	// contains filtered or unexported fields
}

func (*CaCertificateSpec) Clone

func (m *CaCertificateSpec) Clone() proto.Message

Clone function

func (*CaCertificateSpec) DeepCopyInto

func (in *CaCertificateSpec) DeepCopyInto(out *CaCertificateSpec)

DeepCopyInto for the CaCertificate.Spec

func (*CaCertificateSpec) Descriptor deprecated

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

Deprecated: Use CaCertificateSpec.ProtoReflect.Descriptor instead.

func (*CaCertificateSpec) Equal

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

Equal function

func (*CaCertificateSpec) GetAllowExpiredCertificate

func (x *CaCertificateSpec) GetAllowExpiredCertificate() bool

func (*CaCertificateSpec) GetAlpnProtocols

func (x *CaCertificateSpec) GetAlpnProtocols() []string

func (*CaCertificateSpec) GetCa

func (x *CaCertificateSpec) GetCa() string

func (*CaCertificateSpec) GetCertificateInfo

func (x *CaCertificateSpec) GetCertificateInfo() *v11.Certificate

func (*CaCertificateSpec) GetCommonInfo

func (x *CaCertificateSpec) GetCommonInfo() *v1.CommonInfo

func (*CaCertificateSpec) GetCrl

func (x *CaCertificateSpec) GetCrl() string

func (*CaCertificateSpec) GetTlsParameters

func (x *CaCertificateSpec) GetTlsParameters() *v11.TlsParameters

func (*CaCertificateSpec) Hash

func (m *CaCertificateSpec) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*CaCertificateSpec) MarshalJSON

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

MarshalJSON is a custom marshaler for CaCertificateSpec

func (*CaCertificateSpec) ProtoMessage

func (*CaCertificateSpec) ProtoMessage()

func (*CaCertificateSpec) ProtoReflect

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

func (*CaCertificateSpec) Reset

func (x *CaCertificateSpec) Reset()

func (*CaCertificateSpec) String

func (x *CaCertificateSpec) String() string

func (*CaCertificateSpec) UnmarshalJSON

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

UnmarshalJSON is a custom unmarshaler for CaCertificateSpec

type CaCertificateStatusWriter

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

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

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

type CaCertificateTransitionFunction

type CaCertificateTransitionFunction func(existing, desired *CaCertificate) error

CaCertificateTransitionFunction instructs the CaCertificateWriter how to transition between an existing CaCertificate object and a desired on an Upsert

type CaCertificateWriter

type CaCertificateWriter interface {
	// Create saves the CaCertificate object.
	CreateCaCertificate(ctx context.Context, obj *CaCertificate, opts ...client.CreateOption) error

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

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

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

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

	// Create or Update the CaCertificate object.
	UpsertCaCertificate(ctx context.Context, obj *CaCertificate, transitionFuncs ...CaCertificateTransitionFunction) error
}

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

type Certificate added in v0.0.4

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

	Spec CertificateSpec `json:"spec,omitempty"`
}

Certificate is the Schema for the certificate API

func (*Certificate) DeepCopy added in v0.0.4

func (in *Certificate) DeepCopy() *Certificate

func (*Certificate) DeepCopyInto added in v0.0.4

func (in *Certificate) DeepCopyInto(out *Certificate)

func (*Certificate) DeepCopyObject added in v0.0.4

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

func (Certificate) GVK added in v0.0.4

GVK returns the GroupVersionKind associated with the resource type.

type CertificateClient added in v0.0.4

type CertificateClient interface {
	CertificateReader
	CertificateWriter
	CertificateStatusWriter
}

Client knows how to perform CRUD operations on Certificates.

type CertificateList added in v0.0.4

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

CertificateList contains a list of Certificate

func (*CertificateList) DeepCopy added in v0.0.4

func (in *CertificateList) DeepCopy() *CertificateList

func (*CertificateList) DeepCopyInto added in v0.0.4

func (in *CertificateList) DeepCopyInto(out *CertificateList)

func (*CertificateList) DeepCopyObject added in v0.0.4

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

type CertificateReader added in v0.0.4

type CertificateReader interface {
	// Get retrieves a Certificate for the given object key
	GetCertificate(ctx context.Context, key client.ObjectKey) (*Certificate, error)

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

Reader knows how to read and list Certificates.

type CertificateSlice added in v0.0.4

type CertificateSlice []*Certificate

CertificateSlice represents a slice of *Certificate

type CertificateSpec added in v0.0.4

type CertificateSpec struct {
	CommonInfo       *v1.CommonInfo   `protobuf:"bytes,1,opt,name=commonInfo,proto3" json:"commonInfo,omitempty"`
	CertificateInfo  *v11.Certificate `protobuf:"bytes,2,opt,name=certificateInfo,proto3" json:"certificateInfo,omitempty"`
	CertificateChain string           `protobuf:"bytes,3,opt,name=certificateChain,proto3" json:"certificateChain,omitempty"`
	PrivateKey       string           `protobuf:"bytes,4,opt,name=privateKey,proto3" json:"privateKey,omitempty"`
	// The password to decrypt the TLS private key. If this field is not set, it is assumed that the TLS private key is not password encrypted.
	Password      string             `protobuf:"bytes,5,opt,name=password,proto3" json:"password,omitempty"`
	TlsParameters *v11.TlsParameters `protobuf:"bytes,6,opt,name=tlsParameters,proto3" json:"tlsParameters,omitempty"`
	// Set Application Level Protocol Negotiation
	// If empty, defaults to ["h2", "http/1.1"].
	AlpnProtocols []string `protobuf:"bytes,7,rep,name=alpnProtocols,proto3" json:"alpnProtocols,omitempty"`
	// contains filtered or unexported fields
}

func (*CertificateSpec) Clone added in v0.0.4

func (m *CertificateSpec) Clone() proto.Message

Clone function

func (*CertificateSpec) DeepCopyInto added in v0.0.4

func (in *CertificateSpec) DeepCopyInto(out *CertificateSpec)

DeepCopyInto for the Certificate.Spec

func (*CertificateSpec) Descriptor deprecated added in v0.0.4

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

Deprecated: Use CertificateSpec.ProtoReflect.Descriptor instead.

func (*CertificateSpec) Equal added in v0.0.4

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

Equal function

func (*CertificateSpec) GetAlpnProtocols added in v0.0.4

func (x *CertificateSpec) GetAlpnProtocols() []string

func (*CertificateSpec) GetCertificateChain added in v0.0.4

func (x *CertificateSpec) GetCertificateChain() string

func (*CertificateSpec) GetCertificateInfo added in v0.0.4

func (x *CertificateSpec) GetCertificateInfo() *v11.Certificate

func (*CertificateSpec) GetCommonInfo added in v0.0.4

func (x *CertificateSpec) GetCommonInfo() *v1.CommonInfo

func (*CertificateSpec) GetPassword added in v0.0.4

func (x *CertificateSpec) GetPassword() string

func (*CertificateSpec) GetPrivateKey added in v0.0.4

func (x *CertificateSpec) GetPrivateKey() string

func (*CertificateSpec) GetTlsParameters added in v0.0.4

func (x *CertificateSpec) GetTlsParameters() *v11.TlsParameters

func (*CertificateSpec) Hash added in v0.0.4

func (m *CertificateSpec) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*CertificateSpec) MarshalJSON added in v0.0.4

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

MarshalJSON is a custom marshaler for CertificateSpec

func (*CertificateSpec) ProtoMessage added in v0.0.4

func (*CertificateSpec) ProtoMessage()

func (*CertificateSpec) ProtoReflect added in v0.0.4

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

func (*CertificateSpec) Reset added in v0.0.4

func (x *CertificateSpec) Reset()

func (*CertificateSpec) String added in v0.0.4

func (x *CertificateSpec) String() string

func (*CertificateSpec) UnmarshalJSON added in v0.0.4

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

UnmarshalJSON is a custom unmarshaler for CertificateSpec

type CertificateStatusWriter added in v0.0.4

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

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

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

type CertificateTransitionFunction added in v0.0.4

type CertificateTransitionFunction func(existing, desired *Certificate) error

CertificateTransitionFunction instructs the CertificateWriter how to transition between an existing Certificate object and a desired on an Upsert

type CertificateWriter added in v0.0.4

type CertificateWriter interface {
	// Create saves the Certificate object.
	CreateCertificate(ctx context.Context, obj *Certificate, opts ...client.CreateOption) error

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

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

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

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

	// Create or Update the Certificate object.
	UpsertCertificate(ctx context.Context, obj *Certificate, transitionFuncs ...CertificateTransitionFunction) error
}

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

type Clientset

type Clientset interface {
	// clienset for the gate.xdmybl.io/v1/v1 APIs
	CaCertificates() CaCertificateClient
	// clienset for the gate.xdmybl.io/v1/v1 APIs
	Certificates() CertificateClient
	// clienset for the gate.xdmybl.io/v1/v1 APIs
	Upstreams() UpstreamClient
	// clienset for the gate.xdmybl.io/v1/v1 APIs
	Gateways() GatewayClient
	// clienset for the gate.xdmybl.io/v1/v1 APIs
	Filters() FilterClient
}

clienset for the gate.xdmybl.io/v1 APIs

func NewClientset

func NewClientset(client client.Client) Clientset

func NewClientsetFromConfig

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

type ConnPoll

type ConnPoll struct {
	MaxRequestsPerConnection uint32 `protobuf:"varint,1,opt,name=maxRequestsPerConnection,proto3" json:"maxRequestsPerConnection,omitempty"`
	// 访问该集群的最大发连接数,默认值-1 (2^32-1 = 4294967295)。
	MaxConnections int64 `protobuf:"varint,2,opt,name=maxConnections,proto3" json:"maxConnections,omitempty"`
	MaxRequests    int64 `protobuf:"varint,3,opt,name=maxRequests,proto3" json:"maxRequests,omitempty"`
	// 最大阻塞的请求数,默认值-1(2^32-1)。
	MaxPendingRequests    int64  `protobuf:"varint,4,opt,name=maxPendingRequests,proto3" json:"maxPendingRequests,omitempty"`
	OutboundSourceAddress string `protobuf:"bytes,5,opt,name=outboundSourceAddress,proto3" json:"outboundSourceAddress,omitempty"`
	// contains filtered or unexported fields
}

func (*ConnPoll) Clone

func (m *ConnPoll) Clone() proto.Message

Clone function

func (*ConnPoll) Descriptor deprecated

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

Deprecated: Use ConnPoll.ProtoReflect.Descriptor instead.

func (*ConnPoll) Equal

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

Equal function

func (*ConnPoll) GetMaxConnections

func (x *ConnPoll) GetMaxConnections() int64

func (*ConnPoll) GetMaxPendingRequests

func (x *ConnPoll) GetMaxPendingRequests() int64

func (*ConnPoll) GetMaxRequests

func (x *ConnPoll) GetMaxRequests() int64

func (*ConnPoll) GetMaxRequestsPerConnection

func (x *ConnPoll) GetMaxRequestsPerConnection() uint32

func (*ConnPoll) GetOutboundSourceAddress

func (x *ConnPoll) GetOutboundSourceAddress() string

func (*ConnPoll) Hash

func (m *ConnPoll) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*ConnPoll) ProtoMessage

func (*ConnPoll) ProtoMessage()

func (*ConnPoll) ProtoReflect

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

func (*ConnPoll) Reset

func (x *ConnPoll) Reset()

func (*ConnPoll) String

func (x *ConnPoll) String() string

type DirectionAction added in v0.0.7

type DirectionAction struct {
	StatusCode uint32 `protobuf:"varint,1,opt,name=status_code,json=statusCode,proto3" json:"status_code,omitempty"`
	Body       string `protobuf:"bytes,2,opt,name=body,proto3" json:"body,omitempty"`
	// contains filtered or unexported fields
}

func (*DirectionAction) Clone added in v0.0.7

func (m *DirectionAction) Clone() proto.Message

Clone function

func (*DirectionAction) Descriptor deprecated added in v0.0.7

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

Deprecated: Use DirectionAction.ProtoReflect.Descriptor instead.

func (*DirectionAction) Equal added in v0.0.7

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

Equal function

func (*DirectionAction) GetBody added in v0.0.7

func (x *DirectionAction) GetBody() string

func (*DirectionAction) GetStatusCode added in v0.0.7

func (x *DirectionAction) GetStatusCode() uint32

func (*DirectionAction) Hash added in v0.0.7

func (m *DirectionAction) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*DirectionAction) ProtoMessage added in v0.0.7

func (*DirectionAction) ProtoMessage()

func (*DirectionAction) ProtoReflect added in v0.0.7

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

func (*DirectionAction) Reset added in v0.0.7

func (x *DirectionAction) Reset()

func (*DirectionAction) String added in v0.0.7

func (x *DirectionAction) String() string

type Filter

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

	Spec FilterSpec `json:"spec,omitempty"`
}

Filter is the Schema for the filter API

func (*Filter) DeepCopy

func (in *Filter) DeepCopy() *Filter

func (*Filter) DeepCopyInto

func (in *Filter) DeepCopyInto(out *Filter)

func (*Filter) DeepCopyObject

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

func (Filter) GVK

GVK returns the GroupVersionKind associated with the resource type.

type FilterClient

type FilterClient interface {
	FilterReader
	FilterWriter
	FilterStatusWriter
}

Client knows how to perform CRUD operations on Filters.

type FilterList

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

FilterList contains a list of Filter

func (*FilterList) DeepCopy

func (in *FilterList) DeepCopy() *FilterList

func (*FilterList) DeepCopyInto

func (in *FilterList) DeepCopyInto(out *FilterList)

func (*FilterList) DeepCopyObject

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

type FilterReader

type FilterReader interface {
	// Get retrieves a Filter for the given object key
	GetFilter(ctx context.Context, key client.ObjectKey) (*Filter, error)

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

Reader knows how to read and list Filters.

type FilterSlice

type FilterSlice []*Filter

FilterSlice represents a slice of *Filter

type FilterSpec

type FilterSpec struct {

	// common fields
	CommonInfo *v1.CommonInfo `protobuf:"bytes,1,opt,name=commonInfo,proto3" json:"commonInfo,omitempty"`
	// 必为其中一种类型, 目前计划先支持两种, Tcp Http 协议的处理
	//
	// Types that are assignable to FilterType:
	//
	//	*FilterSpec_Hcm
	//	*FilterSpec_TcpProxy
	FilterType isFilterSpec_FilterType `protobuf_oneof:"filter_type"`
	// contains filtered or unexported fields
}

directly map to the Envoy v3 filter object 只好先用着 envoy 的名称, 其实 filter 是一个基于功能的取名 并不是基于概念的取名, 这里后期必然要换一个名

func (*FilterSpec) Clone

func (m *FilterSpec) Clone() proto.Message

Clone function

func (*FilterSpec) DeepCopyInto

func (in *FilterSpec) DeepCopyInto(out *FilterSpec)

DeepCopyInto for the Filter.Spec

func (*FilterSpec) Descriptor deprecated

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

Deprecated: Use FilterSpec.ProtoReflect.Descriptor instead.

func (*FilterSpec) Equal

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

Equal function

func (*FilterSpec) GetCommonInfo

func (x *FilterSpec) GetCommonInfo() *v1.CommonInfo

func (*FilterSpec) GetFilterType

func (m *FilterSpec) GetFilterType() isFilterSpec_FilterType

func (*FilterSpec) GetHcm

func (x *FilterSpec) GetHcm() *HttpConnectionManager

func (*FilterSpec) GetTcpProxy

func (x *FilterSpec) GetTcpProxy() *TcpProxy

func (*FilterSpec) Hash

func (m *FilterSpec) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*FilterSpec) MarshalJSON

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

MarshalJSON is a custom marshaler for FilterSpec

func (*FilterSpec) ProtoMessage

func (*FilterSpec) ProtoMessage()

func (*FilterSpec) ProtoReflect

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

func (*FilterSpec) Reset

func (x *FilterSpec) Reset()

func (*FilterSpec) String

func (x *FilterSpec) String() string

func (*FilterSpec) UnmarshalJSON

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

UnmarshalJSON is a custom unmarshaler for FilterSpec

type FilterSpec_Hcm

type FilterSpec_Hcm struct {
	Hcm *HttpConnectionManager `protobuf:"bytes,2,opt,name=hcm,proto3,oneof"`
}

type FilterSpec_TcpProxy

type FilterSpec_TcpProxy struct {
	TcpProxy *TcpProxy `protobuf:"bytes,3,opt,name=tcp_proxy,json=tcpProxy,proto3,oneof"`
}

type FilterStatusWriter

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

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

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

type FilterTransitionFunction

type FilterTransitionFunction func(existing, desired *Filter) error

FilterTransitionFunction instructs the FilterWriter how to transition between an existing Filter object and a desired on an Upsert

type FilterWriter

type FilterWriter interface {
	// Create saves the Filter object.
	CreateFilter(ctx context.Context, obj *Filter, opts ...client.CreateOption) error

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

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

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

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

	// Create or Update the Filter object.
	UpsertFilter(ctx context.Context, obj *Filter, transitionFuncs ...FilterTransitionFunction) error
}

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

type ForwardAction added in v0.0.7

type ForwardAction struct {
	WeightClusterLs []*WeightCluster `protobuf:"bytes,1,rep,name=weight_cluster_ls,json=weightClusterLs,proto3" json:"weight_cluster_ls,omitempty"`
	Timeout         uint32           `protobuf:"varint,2,opt,name=timeout,proto3" json:"timeout,omitempty"`
	// contains filtered or unexported fields
}

func (*ForwardAction) Clone added in v0.0.7

func (m *ForwardAction) Clone() proto.Message

Clone function

func (*ForwardAction) Descriptor deprecated added in v0.0.7

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

Deprecated: Use ForwardAction.ProtoReflect.Descriptor instead.

func (*ForwardAction) Equal added in v0.0.7

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

Equal function

func (*ForwardAction) GetTimeout added in v0.0.7

func (x *ForwardAction) GetTimeout() uint32

func (*ForwardAction) GetWeightClusterLs added in v0.0.7

func (x *ForwardAction) GetWeightClusterLs() []*WeightCluster

func (*ForwardAction) Hash added in v0.0.7

func (m *ForwardAction) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*ForwardAction) ProtoMessage added in v0.0.7

func (*ForwardAction) ProtoMessage()

func (*ForwardAction) ProtoReflect added in v0.0.7

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

func (*ForwardAction) Reset added in v0.0.7

func (x *ForwardAction) Reset()

func (*ForwardAction) String added in v0.0.7

func (x *ForwardAction) String() string

type Gateway

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

	Spec GatewaySpec `json:"spec,omitempty"`
}

Gateway is the Schema for the gateway API

func (*Gateway) DeepCopy

func (in *Gateway) DeepCopy() *Gateway

func (*Gateway) DeepCopyInto

func (in *Gateway) DeepCopyInto(out *Gateway)

func (*Gateway) DeepCopyObject

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

func (Gateway) GVK

GVK returns the GroupVersionKind associated with the resource type.

type GatewayClient

type GatewayClient interface {
	GatewayReader
	GatewayWriter
	GatewayStatusWriter
}

Client knows how to perform CRUD operations on Gateways.

type GatewayList

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

GatewayList contains a list of Gateway

func (*GatewayList) DeepCopy

func (in *GatewayList) DeepCopy() *GatewayList

func (*GatewayList) DeepCopyInto

func (in *GatewayList) DeepCopyInto(out *GatewayList)

func (*GatewayList) DeepCopyObject

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

type GatewayListener

type GatewayListener struct {

	// validate: ipv4 or ipv6, default 0.0.0.0
	BindAddress string `protobuf:"bytes,1,opt,name=bind_address,json=bindAddress,proto3" json:"bind_address,omitempty"`
	// validate: port value
	BindPort uint32 `protobuf:"varint,2,opt,name=bind_port,json=bindPort,proto3" json:"bind_port,omitempty"`
	// is bind to os port , default false
	BindToPort bool     `protobuf:"varint,3,opt,name=bind_to_port,json=bindToPort,proto3" json:"bind_to_port,omitempty"`
	FilterName []string `protobuf:"bytes,4,rep,name=filter_name,json=filterName,proto3" json:"filter_name,omitempty"`
	// listener option
	Options  *ListenerOptions `protobuf:"bytes,5,opt,name=options,proto3" json:"options,omitempty"`
	Metadata *v1.GateMetadata `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"`
	// contains filtered or unexported fields
}

func (*GatewayListener) Clone

func (m *GatewayListener) Clone() proto.Message

Clone function

func (*GatewayListener) Descriptor deprecated

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

Deprecated: Use GatewayListener.ProtoReflect.Descriptor instead.

func (*GatewayListener) Equal

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

Equal function

func (*GatewayListener) GetBindAddress

func (x *GatewayListener) GetBindAddress() string

func (*GatewayListener) GetBindPort

func (x *GatewayListener) GetBindPort() uint32

func (*GatewayListener) GetBindToPort

func (x *GatewayListener) GetBindToPort() bool

func (*GatewayListener) GetFilterName

func (x *GatewayListener) GetFilterName() []string

func (*GatewayListener) GetMetadata

func (x *GatewayListener) GetMetadata() *v1.GateMetadata

func (*GatewayListener) GetOptions

func (x *GatewayListener) GetOptions() *ListenerOptions

func (*GatewayListener) Hash

func (m *GatewayListener) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*GatewayListener) ProtoMessage

func (*GatewayListener) ProtoMessage()

func (*GatewayListener) ProtoReflect

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

func (*GatewayListener) Reset

func (x *GatewayListener) Reset()

func (*GatewayListener) String

func (x *GatewayListener) String() string

type GatewayReader

type GatewayReader interface {
	// Get retrieves a Gateway for the given object key
	GetGateway(ctx context.Context, key client.ObjectKey) (*Gateway, error)

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

Reader knows how to read and list Gateways.

type GatewaySlice

type GatewaySlice []*Gateway

GatewaySlice represents a slice of *Gateway

type GatewaySpec

type GatewaySpec struct {
	CommonInfo *v1.CommonInfo `protobuf:"bytes,1,opt,name=commonInfo,proto3" json:"commonInfo,omitempty"`
	// validate: max and min item.
	Listeners []*GatewayListener `protobuf:"bytes,2,rep,name=listeners,proto3" json:"listeners,omitempty"`
	// contains filtered or unexported fields
}

func (*GatewaySpec) Clone

func (m *GatewaySpec) Clone() proto.Message

Clone function

func (*GatewaySpec) DeepCopyInto

func (in *GatewaySpec) DeepCopyInto(out *GatewaySpec)

DeepCopyInto for the Gateway.Spec

func (*GatewaySpec) Descriptor deprecated

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

Deprecated: Use GatewaySpec.ProtoReflect.Descriptor instead.

func (*GatewaySpec) Equal

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

Equal function

func (*GatewaySpec) GetCommonInfo

func (x *GatewaySpec) GetCommonInfo() *v1.CommonInfo

func (*GatewaySpec) GetListeners

func (x *GatewaySpec) GetListeners() []*GatewayListener

func (*GatewaySpec) Hash

func (m *GatewaySpec) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*GatewaySpec) MarshalJSON

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

MarshalJSON is a custom marshaler for GatewaySpec

func (*GatewaySpec) ProtoMessage

func (*GatewaySpec) ProtoMessage()

func (*GatewaySpec) ProtoReflect

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

func (*GatewaySpec) Reset

func (x *GatewaySpec) Reset()

func (*GatewaySpec) String

func (x *GatewaySpec) String() string

func (*GatewaySpec) UnmarshalJSON

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

UnmarshalJSON is a custom unmarshaler for GatewaySpec

type GatewayStatusWriter

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

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

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

type GatewayTransitionFunction

type GatewayTransitionFunction func(existing, desired *Gateway) error

GatewayTransitionFunction instructs the GatewayWriter how to transition between an existing Gateway object and a desired on an Upsert

type GatewayWriter

type GatewayWriter interface {
	// Create saves the Gateway object.
	CreateGateway(ctx context.Context, obj *Gateway, opts ...client.CreateOption) error

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

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

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

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

	// Create or Update the Gateway object.
	UpsertGateway(ctx context.Context, obj *Gateway, transitionFuncs ...GatewayTransitionFunction) error
}

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

type HeaderMatch added in v0.0.7

type HeaderMatch struct {
	Exact    string `protobuf:"bytes,1,opt,name=exact,proto3" json:"exact,omitempty"`
	Prefix   string `protobuf:"bytes,2,opt,name=prefix,proto3" json:"prefix,omitempty"`
	Regex    string `protobuf:"bytes,3,opt,name=regex,proto3" json:"regex,omitempty"`
	Contains string `protobuf:"bytes,4,opt,name=contains,proto3" json:"contains,omitempty"`
	Invert   bool   `protobuf:"varint,5,opt,name=invert,proto3" json:"invert,omitempty"`
	// contains filtered or unexported fields
}

func (*HeaderMatch) Clone added in v0.0.7

func (m *HeaderMatch) Clone() proto.Message

Clone function

func (*HeaderMatch) Descriptor deprecated added in v0.0.7

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

Deprecated: Use HeaderMatch.ProtoReflect.Descriptor instead.

func (*HeaderMatch) Equal added in v0.0.7

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

Equal function

func (*HeaderMatch) GetContains added in v0.0.7

func (x *HeaderMatch) GetContains() string

func (*HeaderMatch) GetExact added in v0.0.7

func (x *HeaderMatch) GetExact() string

func (*HeaderMatch) GetInvert added in v0.0.7

func (x *HeaderMatch) GetInvert() bool

func (*HeaderMatch) GetPrefix added in v0.0.7

func (x *HeaderMatch) GetPrefix() string

func (*HeaderMatch) GetRegex added in v0.0.7

func (x *HeaderMatch) GetRegex() string

func (*HeaderMatch) Hash added in v0.0.7

func (m *HeaderMatch) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*HeaderMatch) ProtoMessage added in v0.0.7

func (*HeaderMatch) ProtoMessage()

func (*HeaderMatch) ProtoReflect added in v0.0.7

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

func (*HeaderMatch) Reset added in v0.0.7

func (x *HeaderMatch) Reset()

func (*HeaderMatch) String added in v0.0.7

func (x *HeaderMatch) String() string

type HealthCheckSpecifier added in v0.0.5

type HealthCheckSpecifier struct {
	Type            HealthCheckSpecifier_Type `protobuf:"varint,1,opt,name=type,proto3,enum=gate.xdmybl.io.HealthCheckSpecifier_Type" json:"type,omitempty"`
	TcpHealthCheck  *TcpHealthCheck           `protobuf:"bytes,2,opt,name=tcpHealthCheck,proto3" json:"tcpHealthCheck,omitempty"`
	HttpHealthCheck *HttpHealthCheck          `protobuf:"bytes,3,opt,name=httpHealthCheck,proto3" json:"httpHealthCheck,omitempty"`
	// contains filtered or unexported fields
}

https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/core/v3/health_check.proto#config-core-v3-healthcheck

func (*HealthCheckSpecifier) Clone added in v0.0.5

func (m *HealthCheckSpecifier) Clone() proto.Message

Clone function

func (*HealthCheckSpecifier) Descriptor deprecated added in v0.0.5

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

Deprecated: Use HealthCheckSpecifier.ProtoReflect.Descriptor instead.

func (*HealthCheckSpecifier) Equal added in v0.0.5

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

Equal function

func (*HealthCheckSpecifier) GetHttpHealthCheck added in v0.0.5

func (x *HealthCheckSpecifier) GetHttpHealthCheck() *HttpHealthCheck

func (*HealthCheckSpecifier) GetTcpHealthCheck added in v0.0.5

func (x *HealthCheckSpecifier) GetTcpHealthCheck() *TcpHealthCheck

func (*HealthCheckSpecifier) GetType added in v0.0.5

func (*HealthCheckSpecifier) Hash added in v0.0.5

func (m *HealthCheckSpecifier) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*HealthCheckSpecifier) ProtoMessage added in v0.0.5

func (*HealthCheckSpecifier) ProtoMessage()

func (*HealthCheckSpecifier) ProtoReflect added in v0.0.5

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

func (*HealthCheckSpecifier) Reset added in v0.0.5

func (x *HealthCheckSpecifier) Reset()

func (*HealthCheckSpecifier) String added in v0.0.5

func (x *HealthCheckSpecifier) String() string

type HealthCheckSpecifier_Type added in v0.0.5

type HealthCheckSpecifier_Type int32
const (
	HealthCheckSpecifier_UNKNOWN HealthCheckSpecifier_Type = 0
	HealthCheckSpecifier_TCP     HealthCheckSpecifier_Type = 1
	HealthCheckSpecifier_HTTP    HealthCheckSpecifier_Type = 2
)

func (HealthCheckSpecifier_Type) Descriptor added in v0.0.5

func (HealthCheckSpecifier_Type) Enum added in v0.0.5

func (HealthCheckSpecifier_Type) EnumDescriptor deprecated added in v0.0.5

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

Deprecated: Use HealthCheckSpecifier_Type.Descriptor instead.

func (HealthCheckSpecifier_Type) Number added in v0.0.5

func (HealthCheckSpecifier_Type) String added in v0.0.5

func (x HealthCheckSpecifier_Type) String() string

func (HealthCheckSpecifier_Type) Type added in v0.0.5

type HttpConnectionManager

type HttpConnectionManager struct {

	// 对应 Envoy route_config_name
	RouteConfig   *RouteConfig  `protobuf:"bytes,1,opt,name=route_config,json=routeConfig,proto3" json:"route_config,omitempty"`
	HttpFilter    []*HttpFilter `protobuf:"bytes,2,rep,name=http_filter,json=httpFilter,proto3" json:"http_filter,omitempty"`
	MergeSlashes  bool          `protobuf:"varint,3,opt,name=merge_slashes,json=mergeSlashes,proto3" json:"merge_slashes,omitempty"`
	SkipXffAppend bool          `protobuf:"varint,4,opt,name=skip_xff_append,json=skipXffAppend,proto3" json:"skip_xff_append,omitempty"`
	// contains filtered or unexported fields
}

Hcm 直接对应 Envoy HCM

func (*HttpConnectionManager) Clone

func (m *HttpConnectionManager) Clone() proto.Message

Clone function

func (*HttpConnectionManager) Descriptor deprecated

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

Deprecated: Use HttpConnectionManager.ProtoReflect.Descriptor instead.

func (*HttpConnectionManager) Equal

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

Equal function

func (*HttpConnectionManager) GetHttpFilter

func (x *HttpConnectionManager) GetHttpFilter() []*HttpFilter

func (*HttpConnectionManager) GetMergeSlashes

func (x *HttpConnectionManager) GetMergeSlashes() bool

func (*HttpConnectionManager) GetRouteConfig added in v0.0.7

func (x *HttpConnectionManager) GetRouteConfig() *RouteConfig

func (*HttpConnectionManager) GetSkipXffAppend

func (x *HttpConnectionManager) GetSkipXffAppend() bool

func (*HttpConnectionManager) Hash

func (m *HttpConnectionManager) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*HttpConnectionManager) ProtoMessage

func (*HttpConnectionManager) ProtoMessage()

func (*HttpConnectionManager) ProtoReflect

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

func (*HttpConnectionManager) Reset

func (x *HttpConnectionManager) Reset()

func (*HttpConnectionManager) String

func (x *HttpConnectionManager) String() string

type HttpFilter

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

TODO 插件 HCM 级别插件配置 生成规则 HCM 级别插件规则需要看 Envoy 文档才能知道

func (*HttpFilter) Clone

func (m *HttpFilter) Clone() proto.Message

Clone function

func (*HttpFilter) Descriptor deprecated

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

Deprecated: Use HttpFilter.ProtoReflect.Descriptor instead.

func (*HttpFilter) Equal

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

Equal function

func (*HttpFilter) Hash

func (m *HttpFilter) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*HttpFilter) ProtoMessage

func (*HttpFilter) ProtoMessage()

func (*HttpFilter) ProtoReflect

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

func (*HttpFilter) Reset

func (x *HttpFilter) Reset()

func (*HttpFilter) String

func (x *HttpFilter) String() string

type HttpHealthCheck added in v0.0.5

type HttpHealthCheck struct {
	Host             string   `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
	Path             string   `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	Method           string   `protobuf:"bytes,3,opt,name=method,proto3" json:"method,omitempty"`
	ExpectedStatuses []uint32 `protobuf:"varint,4,rep,packed,name=expectedStatuses,proto3" json:"expectedStatuses,omitempty"`
	ClientType       string   `protobuf:"bytes,5,opt,name=ClientType,proto3" json:"ClientType,omitempty"`
	// contains filtered or unexported fields
}

func (*HttpHealthCheck) Clone added in v0.0.5

func (m *HttpHealthCheck) Clone() proto.Message

Clone function

func (*HttpHealthCheck) Descriptor deprecated added in v0.0.5

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

Deprecated: Use HttpHealthCheck.ProtoReflect.Descriptor instead.

func (*HttpHealthCheck) Equal added in v0.0.5

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

Equal function

func (*HttpHealthCheck) GetClientType added in v0.0.5

func (x *HttpHealthCheck) GetClientType() string

func (*HttpHealthCheck) GetExpectedStatuses added in v0.0.5

func (x *HttpHealthCheck) GetExpectedStatuses() []uint32

func (*HttpHealthCheck) GetHost added in v0.0.5

func (x *HttpHealthCheck) GetHost() string

func (*HttpHealthCheck) GetMethod added in v0.0.5

func (x *HttpHealthCheck) GetMethod() string

func (*HttpHealthCheck) GetPath added in v0.0.5

func (x *HttpHealthCheck) GetPath() string

func (*HttpHealthCheck) Hash added in v0.0.5

func (m *HttpHealthCheck) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*HttpHealthCheck) ProtoMessage added in v0.0.5

func (*HttpHealthCheck) ProtoMessage()

func (*HttpHealthCheck) ProtoReflect added in v0.0.5

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

func (*HttpHealthCheck) Reset added in v0.0.5

func (x *HttpHealthCheck) Reset()

func (*HttpHealthCheck) String added in v0.0.5

func (x *HttpHealthCheck) String() string

type ListenerOptions

type ListenerOptions struct {

	// Soft limit on size of the listener's new connection read and write buffers. If unspecified, defaults to 1MiB
	// For more info, check out the [Envoy docs](https://www.envoyproxy.io/docs/envoy/v1.14.1/api-v2/api/v2/listener.proto)
	PerConnectionBufferLimitBytes uint32 `protobuf:"varint,1,opt,name=perConnectionBufferLimitBytes,proto3" json:"perConnectionBufferLimitBytes,omitempty"`
	// contains filtered or unexported fields
}

func (*ListenerOptions) Clone

func (m *ListenerOptions) Clone() proto.Message

Clone function

func (*ListenerOptions) Descriptor deprecated

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

Deprecated: Use ListenerOptions.ProtoReflect.Descriptor instead.

func (*ListenerOptions) Equal

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

Equal function

func (*ListenerOptions) GetPerConnectionBufferLimitBytes

func (x *ListenerOptions) GetPerConnectionBufferLimitBytes() uint32

func (*ListenerOptions) Hash

func (m *ListenerOptions) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*ListenerOptions) ProtoMessage

func (*ListenerOptions) ProtoMessage()

func (*ListenerOptions) ProtoReflect

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

func (*ListenerOptions) Reset

func (x *ListenerOptions) Reset()

func (*ListenerOptions) String

func (x *ListenerOptions) String() string

type MulticlusterCaCertificateClient

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

Provides CaCertificateClients for multiple clusters.

func NewMulticlusterCaCertificateClient

func NewMulticlusterCaCertificateClient(client multicluster.Client) MulticlusterCaCertificateClient

type MulticlusterCertificateClient added in v0.0.4

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

Provides CertificateClients for multiple clusters.

func NewMulticlusterCertificateClient added in v0.0.4

func NewMulticlusterCertificateClient(client multicluster.Client) MulticlusterCertificateClient

type MulticlusterClientset

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

MulticlusterClientset for the gate.xdmybl.io/v1 APIs

func NewMulticlusterClientset

func NewMulticlusterClientset(client multicluster.Client) MulticlusterClientset

type MulticlusterFilterClient

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

Provides FilterClients for multiple clusters.

func NewMulticlusterFilterClient

func NewMulticlusterFilterClient(client multicluster.Client) MulticlusterFilterClient

type MulticlusterGatewayClient

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

Provides GatewayClients for multiple clusters.

func NewMulticlusterGatewayClient

func NewMulticlusterGatewayClient(client multicluster.Client) MulticlusterGatewayClient

type MulticlusterUpstreamClient

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

Provides UpstreamClients for multiple clusters.

func NewMulticlusterUpstreamClient

func NewMulticlusterUpstreamClient(client multicluster.Client) MulticlusterUpstreamClient

type RedirectAction added in v0.0.7

type RedirectAction struct {
	HostRedirect  string `protobuf:"bytes,1,opt,name=host_redirect,json=hostRedirect,proto3" json:"host_redirect,omitempty"`
	ResponseCode  uint32 `protobuf:"varint,2,opt,name=response_code,json=responseCode,proto3" json:"response_code,omitempty"`
	HttpsRedirect bool   `protobuf:"varint,3,opt,name=https_redirect,json=httpsRedirect,proto3" json:"https_redirect,omitempty"`
	StripQuery    bool   `protobuf:"varint,4,opt,name=strip_query,json=stripQuery,proto3" json:"strip_query,omitempty"`
	PortRedirect  uint32 `protobuf:"varint,5,opt,name=port_redirect,json=portRedirect,proto3" json:"port_redirect,omitempty"`
	// contains filtered or unexported fields
}

func (*RedirectAction) Clone added in v0.0.7

func (m *RedirectAction) Clone() proto.Message

Clone function

func (*RedirectAction) Descriptor deprecated added in v0.0.7

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

Deprecated: Use RedirectAction.ProtoReflect.Descriptor instead.

func (*RedirectAction) Equal added in v0.0.7

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

Equal function

func (*RedirectAction) GetHostRedirect added in v0.0.7

func (x *RedirectAction) GetHostRedirect() string

func (*RedirectAction) GetHttpsRedirect added in v0.0.10

func (x *RedirectAction) GetHttpsRedirect() bool

func (*RedirectAction) GetPortRedirect added in v0.0.7

func (x *RedirectAction) GetPortRedirect() uint32

func (*RedirectAction) GetResponseCode added in v0.0.7

func (x *RedirectAction) GetResponseCode() uint32

func (*RedirectAction) GetStripQuery added in v0.0.7

func (x *RedirectAction) GetStripQuery() bool

func (*RedirectAction) Hash added in v0.0.7

func (m *RedirectAction) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*RedirectAction) ProtoMessage added in v0.0.7

func (*RedirectAction) ProtoMessage()

func (*RedirectAction) ProtoReflect added in v0.0.7

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

func (*RedirectAction) Reset added in v0.0.7

func (x *RedirectAction) Reset()

func (*RedirectAction) String added in v0.0.7

func (x *RedirectAction) String() string

type Route added in v0.0.7

type Route struct {
	Id   uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Types that are assignable to RouteActionType:
	//
	//	*Route_ForwardAction
	//	*Route_RedirectAction
	//	*Route_DirectionAction
	RouteActionType    isRoute_RouteActionType `protobuf_oneof:"route_action_type"`
	Match              *RouteMatch             `protobuf:"bytes,6,opt,name=match,proto3" json:"match,omitempty"`
	HeaderManipulation *v1.HeaderManipulation  `protobuf:"bytes,7,opt,name=header_manipulation,json=headerManipulation,proto3" json:"header_manipulation,omitempty"`
	// contains filtered or unexported fields
}

func (*Route) Clone added in v0.0.7

func (m *Route) Clone() proto.Message

Clone function

func (*Route) Descriptor deprecated added in v0.0.7

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

Deprecated: Use Route.ProtoReflect.Descriptor instead.

func (*Route) Equal added in v0.0.7

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

Equal function

func (*Route) GetDirectionAction added in v0.0.7

func (x *Route) GetDirectionAction() *DirectionAction

func (*Route) GetForwardAction added in v0.0.7

func (x *Route) GetForwardAction() *ForwardAction

func (*Route) GetHeaderManipulation added in v0.0.8

func (x *Route) GetHeaderManipulation() *v1.HeaderManipulation

func (*Route) GetId added in v0.0.8

func (x *Route) GetId() uint32

func (*Route) GetMatch added in v0.0.7

func (x *Route) GetMatch() *RouteMatch

func (*Route) GetName added in v0.0.8

func (x *Route) GetName() string

func (*Route) GetRedirectAction added in v0.0.7

func (x *Route) GetRedirectAction() *RedirectAction

func (*Route) GetRouteActionType added in v0.0.7

func (m *Route) GetRouteActionType() isRoute_RouteActionType

func (*Route) Hash added in v0.0.7

func (m *Route) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*Route) ProtoMessage added in v0.0.7

func (*Route) ProtoMessage()

func (*Route) ProtoReflect added in v0.0.7

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

func (*Route) Reset added in v0.0.7

func (x *Route) Reset()

func (*Route) String added in v0.0.7

func (x *Route) String() string

type RouteConfig added in v0.0.7

type RouteConfig struct {
	Name               string                 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	VhostLs            []*VHost               `protobuf:"bytes,2,rep,name=vhost_ls,json=vhostLs,proto3" json:"vhost_ls,omitempty"`
	HeaderManipulation *v1.HeaderManipulation `protobuf:"bytes,3,opt,name=header_manipulation,json=headerManipulation,proto3" json:"header_manipulation,omitempty"`
	// contains filtered or unexported fields
}

func (*RouteConfig) Clone added in v0.0.7

func (m *RouteConfig) Clone() proto.Message

Clone function

func (*RouteConfig) Descriptor deprecated added in v0.0.7

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

Deprecated: Use RouteConfig.ProtoReflect.Descriptor instead.

func (*RouteConfig) Equal added in v0.0.7

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

Equal function

func (*RouteConfig) GetHeaderManipulation added in v0.0.7

func (x *RouteConfig) GetHeaderManipulation() *v1.HeaderManipulation

func (*RouteConfig) GetName added in v0.0.7

func (x *RouteConfig) GetName() string

func (*RouteConfig) GetVhostLs added in v0.0.7

func (x *RouteConfig) GetVhostLs() []*VHost

func (*RouteConfig) Hash added in v0.0.7

func (m *RouteConfig) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*RouteConfig) ProtoMessage added in v0.0.7

func (*RouteConfig) ProtoMessage()

func (*RouteConfig) ProtoReflect added in v0.0.7

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

func (*RouteConfig) Reset added in v0.0.7

func (x *RouteConfig) Reset()

func (*RouteConfig) String added in v0.0.7

func (x *RouteConfig) String() string

type RouteMatch added in v0.0.7

type RouteMatch struct {

	// :path  prefix
	Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	// :path exact
	Path    string         `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	Regex   string         `protobuf:"bytes,3,opt,name=regex,proto3" json:"regex,omitempty"`
	Headers []*HeaderMatch `protobuf:"bytes,4,rep,name=headers,proto3" json:"headers,omitempty"`
	// contains filtered or unexported fields
}

func (*RouteMatch) Clone added in v0.0.7

func (m *RouteMatch) Clone() proto.Message

Clone function

func (*RouteMatch) Descriptor deprecated added in v0.0.7

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

Deprecated: Use RouteMatch.ProtoReflect.Descriptor instead.

func (*RouteMatch) Equal added in v0.0.7

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

Equal function

func (*RouteMatch) GetHeaders added in v0.0.7

func (x *RouteMatch) GetHeaders() []*HeaderMatch

func (*RouteMatch) GetPath added in v0.0.7

func (x *RouteMatch) GetPath() string

func (*RouteMatch) GetPrefix added in v0.0.7

func (x *RouteMatch) GetPrefix() string

func (*RouteMatch) GetRegex added in v0.0.7

func (x *RouteMatch) GetRegex() string

func (*RouteMatch) Hash added in v0.0.7

func (m *RouteMatch) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*RouteMatch) ProtoMessage added in v0.0.7

func (*RouteMatch) ProtoMessage()

func (*RouteMatch) ProtoReflect added in v0.0.7

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

func (*RouteMatch) Reset added in v0.0.7

func (x *RouteMatch) Reset()

func (*RouteMatch) String added in v0.0.7

func (x *RouteMatch) String() string

type Route_DirectionAction added in v0.0.7

type Route_DirectionAction struct {
	DirectionAction *DirectionAction `protobuf:"bytes,5,opt,name=direction_action,json=directionAction,proto3,oneof"`
}

type Route_ForwardAction added in v0.0.7

type Route_ForwardAction struct {
	ForwardAction *ForwardAction `protobuf:"bytes,3,opt,name=forward_action,json=forwardAction,proto3,oneof"`
}

type Route_RedirectAction added in v0.0.7

type Route_RedirectAction struct {
	RedirectAction *RedirectAction `protobuf:"bytes,4,opt,name=redirect_action,json=redirectAction,proto3,oneof"`
}

type SslCertificateSpec

type SslCertificateSpec struct {
	CommonInfo       *v1.CommonInfo   `protobuf:"bytes,1,opt,name=commonInfo,proto3" json:"commonInfo,omitempty"`
	CertificateInfo  *v11.Certificate `protobuf:"bytes,2,opt,name=certificateInfo,proto3" json:"certificateInfo,omitempty"`
	CertificateChain string           `protobuf:"bytes,3,opt,name=certificateChain,proto3" json:"certificateChain,omitempty"`
	PrivateKey       string           `protobuf:"bytes,4,opt,name=privateKey,proto3" json:"privateKey,omitempty"`
	// The password to decrypt the TLS private key. If this field is not set, it is assumed that the TLS private key is not password encrypted.
	Password      string             `protobuf:"bytes,5,opt,name=password,proto3" json:"password,omitempty"`
	TlsParameters *v11.TlsParameters `protobuf:"bytes,6,opt,name=tlsParameters,proto3" json:"tlsParameters,omitempty"`
	// Set Application Level Protocol Negotiation
	// If empty, defaults to ["h2", "http/1.1"].
	AlpnProtocols []string `protobuf:"bytes,7,rep,name=alpnProtocols,proto3" json:"alpnProtocols,omitempty"`
	// contains filtered or unexported fields
}

func (*SslCertificateSpec) Clone

func (m *SslCertificateSpec) Clone() proto.Message

Clone function

func (*SslCertificateSpec) Descriptor deprecated

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

Deprecated: Use SslCertificateSpec.ProtoReflect.Descriptor instead.

func (*SslCertificateSpec) Equal

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

Equal function

func (*SslCertificateSpec) GetAlpnProtocols

func (x *SslCertificateSpec) GetAlpnProtocols() []string

func (*SslCertificateSpec) GetCertificateChain

func (x *SslCertificateSpec) GetCertificateChain() string

func (*SslCertificateSpec) GetCertificateInfo

func (x *SslCertificateSpec) GetCertificateInfo() *v11.Certificate

func (*SslCertificateSpec) GetCommonInfo

func (x *SslCertificateSpec) GetCommonInfo() *v1.CommonInfo

func (*SslCertificateSpec) GetPassword

func (x *SslCertificateSpec) GetPassword() string

func (*SslCertificateSpec) GetPrivateKey

func (x *SslCertificateSpec) GetPrivateKey() string

func (*SslCertificateSpec) GetTlsParameters

func (x *SslCertificateSpec) GetTlsParameters() *v11.TlsParameters

func (*SslCertificateSpec) Hash

func (m *SslCertificateSpec) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*SslCertificateSpec) ProtoMessage

func (*SslCertificateSpec) ProtoMessage()

func (*SslCertificateSpec) ProtoReflect

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

func (*SslCertificateSpec) Reset

func (x *SslCertificateSpec) Reset()

func (*SslCertificateSpec) String

func (x *SslCertificateSpec) String() string

type TcpHealthCheck added in v0.0.5

type TcpHealthCheck struct {
	SendPayload    string   `protobuf:"bytes,1,opt,name=sendPayload,proto3" json:"sendPayload,omitempty"`
	ReceivePayload []string `protobuf:"bytes,2,rep,name=receivePayload,proto3" json:"receivePayload,omitempty"`
	// contains filtered or unexported fields
}

func (*TcpHealthCheck) Clone added in v0.0.5

func (m *TcpHealthCheck) Clone() proto.Message

Clone function

func (*TcpHealthCheck) Descriptor deprecated added in v0.0.5

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

Deprecated: Use TcpHealthCheck.ProtoReflect.Descriptor instead.

func (*TcpHealthCheck) Equal added in v0.0.5

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

Equal function

func (*TcpHealthCheck) GetReceivePayload added in v0.0.5

func (x *TcpHealthCheck) GetReceivePayload() []string

func (*TcpHealthCheck) GetSendPayload added in v0.0.5

func (x *TcpHealthCheck) GetSendPayload() string

func (*TcpHealthCheck) Hash added in v0.0.5

func (m *TcpHealthCheck) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*TcpHealthCheck) ProtoMessage added in v0.0.5

func (*TcpHealthCheck) ProtoMessage()

func (*TcpHealthCheck) ProtoReflect added in v0.0.5

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

func (*TcpHealthCheck) Reset added in v0.0.5

func (x *TcpHealthCheck) Reset()

func (*TcpHealthCheck) String added in v0.0.5

func (x *TcpHealthCheck) String() string

type TcpProxy

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

Envoy 的 extensions.filters.network.tcp_proxy.v3.TcpProxy 是一个网络过滤器,它可以在 Envoy 代理中拦截 TCP 流量,并将其转发到指定的目标地址。具体来说,TcpProxy 可以在客户端和服务端之间建立一个 TCP 连接,然后将客户端发送的请求转发到服务端,同时将服务端返回的响应转发回客户端。 TcpProxy 过滤器可以用于实现负载均衡、流量控制、故障转移等功能,它支持多种负载均衡算法和健康检查机制,可以根据配置文件中的规则动态地选择目标地址,并在目标地址不可用时自动切换到备用地址。 总之,TcpProxy 是一个非常有用的 Envoy 过滤器,可以帮助开发人员更好地控制和管理 Envoy 代理中的 TCP 流量。

  • `stat_prefix`:用于在 Envoy 的统计信息中标识该 TCP 代理的前缀。
  • `cluster`:指定要代理到的目标集群的名称。
  • `access_log`:指定要记录访问日志的配置。
  • `idle_timeout`:指定连接的空闲超时时间。
  • `max_connect_attempts`:指定连接重试的最大次数。
  • `upstream_connection_options`:指定要应用的上游连接选项。
  • `downstream_connection_options`:指定要应用的下游连接选项。
  • `hash_policy`:指定用于哈希负载均衡的策略。
  • `metadata_match`:指定要匹配的元数据标签。

func (*TcpProxy) Clone

func (m *TcpProxy) Clone() proto.Message

Clone function

func (*TcpProxy) Descriptor deprecated

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

Deprecated: Use TcpProxy.ProtoReflect.Descriptor instead.

func (*TcpProxy) Equal

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

Equal function

func (*TcpProxy) Hash

func (m *TcpProxy) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*TcpProxy) ProtoMessage

func (*TcpProxy) ProtoMessage()

func (*TcpProxy) ProtoReflect

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

func (*TcpProxy) Reset

func (x *TcpProxy) Reset()

func (*TcpProxy) String

func (x *TcpProxy) String() string

type Upstream

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

	Spec UpstreamSpec `json:"spec,omitempty"`
}

Upstream is the Schema for the upstream API

func (*Upstream) DeepCopy

func (in *Upstream) DeepCopy() *Upstream

func (*Upstream) DeepCopyInto

func (in *Upstream) DeepCopyInto(out *Upstream)

func (*Upstream) DeepCopyObject

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

func (Upstream) GVK

GVK returns the GroupVersionKind associated with the resource type.

type UpstreamClient

type UpstreamClient interface {
	UpstreamReader
	UpstreamWriter
	UpstreamStatusWriter
}

Client knows how to perform CRUD operations on Upstreams.

type UpstreamList

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

UpstreamList contains a list of Upstream

func (*UpstreamList) DeepCopy

func (in *UpstreamList) DeepCopy() *UpstreamList

func (*UpstreamList) DeepCopyInto

func (in *UpstreamList) DeepCopyInto(out *UpstreamList)

func (*UpstreamList) DeepCopyObject

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

type UpstreamReader

type UpstreamReader interface {
	// Get retrieves a Upstream for the given object key
	GetUpstream(ctx context.Context, key client.ObjectKey) (*Upstream, error)

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

Reader knows how to read and list Upstreams.

type UpstreamSlice

type UpstreamSlice []*Upstream

UpstreamSlice represents a slice of *Upstream

type UpstreamSpec

type UpstreamSpec struct {
	CommonInfo        *v1.CommonInfo        `protobuf:"bytes,1,opt,name=commonInfo,proto3" json:"commonInfo,omitempty"`
	LbAlg             UpstreamSpec_LbPolicy `protobuf:"varint,2,opt,name=lbAlg,proto3,enum=gate.xdmybl.io.UpstreamSpec_LbPolicy" json:"lbAlg,omitempty"`
	SslConfigurations *v11.TlsClient        `protobuf:"bytes,3,opt,name=sslConfigurations,proto3" json:"sslConfigurations,omitempty"`
	ConnPoll          *ConnPoll             `protobuf:"bytes,4,opt,name=connPoll,proto3" json:"connPoll,omitempty"`
	// health check interval
	HcInterval uint32 `protobuf:"varint,5,opt,name=hcInterval,proto3" json:"hcInterval,omitempty"`
	HcTimeout  uint32 `protobuf:"varint,6,opt,name=hcTimeout,proto3" json:"hcTimeout,omitempty"`
	// hc 健康阈值
	HcHealthyThreshold   uint32                `protobuf:"varint,7,opt,name=hcHealthyThreshold,proto3" json:"hcHealthyThreshold,omitempty"`
	HcUnhealthyThreshold uint32                `protobuf:"varint,8,opt,name=hcUnhealthyThreshold,proto3" json:"hcUnhealthyThreshold,omitempty"`
	HcSpecifier          *HealthCheckSpecifier `protobuf:"bytes,9,opt,name=hcSpecifier,proto3" json:"hcSpecifier,omitempty"`
	StatefulSession      *v1.StatefulSession   `protobuf:"bytes,10,opt,name=statefulSession,proto3" json:"statefulSession,omitempty"`
	Endpoints            []*v1.Endpoint        `protobuf:"bytes,11,rep,name=endpoints,proto3" json:"endpoints,omitempty"`
	// contains filtered or unexported fields
}

func (*UpstreamSpec) Clone

func (m *UpstreamSpec) Clone() proto.Message

Clone function

func (*UpstreamSpec) DeepCopyInto

func (in *UpstreamSpec) DeepCopyInto(out *UpstreamSpec)

DeepCopyInto for the Upstream.Spec

func (*UpstreamSpec) Descriptor deprecated

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

Deprecated: Use UpstreamSpec.ProtoReflect.Descriptor instead.

func (*UpstreamSpec) Equal

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

Equal function

func (*UpstreamSpec) GetCommonInfo

func (x *UpstreamSpec) GetCommonInfo() *v1.CommonInfo

func (*UpstreamSpec) GetConnPoll

func (x *UpstreamSpec) GetConnPoll() *ConnPoll

func (*UpstreamSpec) GetEndpoints

func (x *UpstreamSpec) GetEndpoints() []*v1.Endpoint

func (*UpstreamSpec) GetHcHealthyThreshold added in v0.0.5

func (x *UpstreamSpec) GetHcHealthyThreshold() uint32

func (*UpstreamSpec) GetHcInterval added in v0.0.5

func (x *UpstreamSpec) GetHcInterval() uint32

func (*UpstreamSpec) GetHcSpecifier added in v0.0.5

func (x *UpstreamSpec) GetHcSpecifier() *HealthCheckSpecifier

func (*UpstreamSpec) GetHcTimeout added in v0.0.5

func (x *UpstreamSpec) GetHcTimeout() uint32

func (*UpstreamSpec) GetHcUnhealthyThreshold added in v0.0.5

func (x *UpstreamSpec) GetHcUnhealthyThreshold() uint32

func (*UpstreamSpec) GetLbAlg

func (x *UpstreamSpec) GetLbAlg() UpstreamSpec_LbPolicy

func (*UpstreamSpec) GetSslConfigurations

func (x *UpstreamSpec) GetSslConfigurations() *v11.TlsClient

func (*UpstreamSpec) GetStatefulSession

func (x *UpstreamSpec) GetStatefulSession() *v1.StatefulSession

func (*UpstreamSpec) Hash

func (m *UpstreamSpec) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*UpstreamSpec) MarshalJSON

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

MarshalJSON is a custom marshaler for UpstreamSpec

func (*UpstreamSpec) ProtoMessage

func (*UpstreamSpec) ProtoMessage()

func (*UpstreamSpec) ProtoReflect

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

func (*UpstreamSpec) Reset

func (x *UpstreamSpec) Reset()

func (*UpstreamSpec) String

func (x *UpstreamSpec) String() string

func (*UpstreamSpec) UnmarshalJSON

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

UnmarshalJSON is a custom unmarshaler for UpstreamSpec

type UpstreamSpec_LbPolicy

type UpstreamSpec_LbPolicy int32
const (
	// Refer to the :ref:`round robin load balancing
	// policy<arch_overview_load_balancing_types_round_robin>`
	// for an explanation.
	UpstreamSpec_ROUND_ROBIN UpstreamSpec_LbPolicy = 0
	// Refer to the :ref:`least request load balancing
	// policy<arch_overview_load_balancing_types_least_request>`
	// for an explanation.
	UpstreamSpec_LEAST_REQUEST UpstreamSpec_LbPolicy = 1
	// Refer to the :ref:`ring hash load balancing
	// policy<arch_overview_load_balancing_types_ring_hash>`
	// for an explanation.
	UpstreamSpec_RING_HASH UpstreamSpec_LbPolicy = 2
	// Refer to the :ref:`random load balancing
	// policy<arch_overview_load_balancing_types_random>`
	// for an explanation.
	UpstreamSpec_RANDOM UpstreamSpec_LbPolicy = 3
	// Refer to the :ref:`Maglev load balancing policy<arch_overview_load_balancing_types_maglev>`
	// for an explanation.
	UpstreamSpec_MAGLEV UpstreamSpec_LbPolicy = 5
)

func (UpstreamSpec_LbPolicy) Descriptor

func (UpstreamSpec_LbPolicy) Enum

func (UpstreamSpec_LbPolicy) EnumDescriptor deprecated

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

Deprecated: Use UpstreamSpec_LbPolicy.Descriptor instead.

func (UpstreamSpec_LbPolicy) Number

func (UpstreamSpec_LbPolicy) String

func (x UpstreamSpec_LbPolicy) String() string

func (UpstreamSpec_LbPolicy) Type

type UpstreamStatusWriter

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

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

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

type UpstreamTransitionFunction

type UpstreamTransitionFunction func(existing, desired *Upstream) error

UpstreamTransitionFunction instructs the UpstreamWriter how to transition between an existing Upstream object and a desired on an Upsert

type UpstreamWriter

type UpstreamWriter interface {
	// Create saves the Upstream object.
	CreateUpstream(ctx context.Context, obj *Upstream, opts ...client.CreateOption) error

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

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

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

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

	// Create or Update the Upstream object.
	UpsertUpstream(ctx context.Context, obj *Upstream, transitionFuncs ...UpstreamTransitionFunction) error
}

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

type VHost added in v0.0.7

type VHost struct {
	RouteLs []*Route `protobuf:"bytes,1,rep,name=route_ls,json=routeLs,proto3" json:"route_ls,omitempty"`
	Domains []string `protobuf:"bytes,2,rep,name=domains,proto3" json:"domains,omitempty"`
	// contains filtered or unexported fields
}

func (*VHost) Clone added in v0.0.7

func (m *VHost) Clone() proto.Message

Clone function

func (*VHost) Descriptor deprecated added in v0.0.7

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

Deprecated: Use VHost.ProtoReflect.Descriptor instead.

func (*VHost) Equal added in v0.0.7

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

Equal function

func (*VHost) GetDomains added in v0.0.8

func (x *VHost) GetDomains() []string

func (*VHost) GetRouteLs added in v0.0.7

func (x *VHost) GetRouteLs() []*Route

func (*VHost) Hash added in v0.0.7

func (m *VHost) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*VHost) ProtoMessage added in v0.0.7

func (*VHost) ProtoMessage()

func (*VHost) ProtoReflect added in v0.0.7

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

func (*VHost) Reset added in v0.0.7

func (x *VHost) Reset()

func (*VHost) String added in v0.0.7

func (x *VHost) String() string

type WeightCluster added in v0.0.7

type WeightCluster struct {
	ClusterName []string `protobuf:"bytes,1,rep,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
	TotalWeight uint32   `protobuf:"varint,2,opt,name=total_weight,json=totalWeight,proto3" json:"total_weight,omitempty"`
	// contains filtered or unexported fields
}

func (*WeightCluster) Clone added in v0.0.7

func (m *WeightCluster) Clone() proto.Message

Clone function

func (*WeightCluster) Descriptor deprecated added in v0.0.7

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

Deprecated: Use WeightCluster.ProtoReflect.Descriptor instead.

func (*WeightCluster) Equal added in v0.0.7

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

Equal function

func (*WeightCluster) GetClusterName added in v0.0.7

func (x *WeightCluster) GetClusterName() []string

func (*WeightCluster) GetTotalWeight added in v0.0.7

func (x *WeightCluster) GetTotalWeight() uint32

func (*WeightCluster) Hash added in v0.0.7

func (m *WeightCluster) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*WeightCluster) ProtoMessage added in v0.0.7

func (*WeightCluster) ProtoMessage()

func (*WeightCluster) ProtoReflect added in v0.0.7

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

func (*WeightCluster) Reset added in v0.0.7

func (x *WeightCluster) Reset()

func (*WeightCluster) String added in v0.0.7

func (x *WeightCluster) String() string

type WeightedUpstreamList

type WeightedUpstreamList struct {
	Weight             uint32                 `protobuf:"varint,1,opt,name=weight,proto3" json:"weight,omitempty"`
	UpstreamRef        *v1.ResourceRef        `protobuf:"bytes,2,opt,name=upstreamRef,proto3" json:"upstreamRef,omitempty"`
	HeaderManipulation *v1.HeaderManipulation `protobuf:"bytes,3,opt,name=headerManipulation,proto3" json:"headerManipulation,omitempty"`
	// contains filtered or unexported fields
}

func (*WeightedUpstreamList) Clone

func (m *WeightedUpstreamList) Clone() proto.Message

Clone function

func (*WeightedUpstreamList) Descriptor deprecated

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

Deprecated: Use WeightedUpstreamList.ProtoReflect.Descriptor instead.

func (*WeightedUpstreamList) Equal

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

Equal function

func (*WeightedUpstreamList) GetHeaderManipulation

func (x *WeightedUpstreamList) GetHeaderManipulation() *v1.HeaderManipulation

func (*WeightedUpstreamList) GetUpstreamRef

func (x *WeightedUpstreamList) GetUpstreamRef() *v1.ResourceRef

func (*WeightedUpstreamList) GetWeight

func (x *WeightedUpstreamList) GetWeight() uint32

func (*WeightedUpstreamList) Hash

func (m *WeightedUpstreamList) Hash(hasher hash.Hash64) (uint64, error)

Hash function

func (*WeightedUpstreamList) ProtoMessage

func (*WeightedUpstreamList) ProtoMessage()

func (*WeightedUpstreamList) ProtoReflect

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

func (*WeightedUpstreamList) Reset

func (x *WeightedUpstreamList) Reset()

func (*WeightedUpstreamList) String

func (x *WeightedUpstreamList) String() string

Directories

Path Synopsis
Definitions for the Kubernetes Controllers
Definitions for the Kubernetes Controllers

Jump to

Keyboard shortcuts

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