Documentation
¶
Overview ¶
Package v1alpha contains API Schema definitions for the core v1alpha API group
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type AccessLog
- type Address
- func (in *Address) DeepCopy() *Address
- func (in *Address) DeepCopyInto(out *Address)
- func (in *Address) DeepCopyObject() runtime.Object
- func (a *Address) GetGroupVersionResource() schema.GroupVersionResource
- func (a *Address) GetObjectMeta() *metav1.ObjectMeta
- func (a *Address) GetSingularName() string
- func (a *Address) GetStatus() resource.StatusSubResource
- func (a *Address) IsStorageVersion() bool
- func (a *Address) NamespaceScoped() bool
- func (a *Address) New() runtime.Object
- func (a *Address) NewList() runtime.Object
- type AddressList
- type AddressPhase
- type AddressSpec
- type AddressStatus
- type Backend
- func (in *Backend) DeepCopy() *Backend
- func (in *Backend) DeepCopyInto(out *Backend)
- func (in *Backend) DeepCopyObject() runtime.Object
- func (p *Backend) GetGroupVersionResource() schema.GroupVersionResource
- func (p *Backend) GetObjectMeta() *metav1.ObjectMeta
- func (p *Backend) GetSingularName() string
- func (p *Backend) GetStatus() resource.StatusSubResource
- func (p *Backend) IsStorageVersion() bool
- func (p *Backend) NamespaceScoped() bool
- func (p *Backend) New() runtime.Object
- func (p *Backend) NewList() runtime.Object
- type BackendEndpoint
- type BackendList
- type BackendProto
- type BackendSpec
- type BackendStatus
- type DeletePolicy
- type Domain
- func (in *Domain) DeepCopy() *Domain
- func (in *Domain) DeepCopyInto(out *Domain)
- func (in *Domain) DeepCopyObject() runtime.Object
- func (r *Domain) Default()
- func (a *Domain) GetGroupVersionResource() schema.GroupVersionResource
- func (a *Domain) GetObjectMeta() *metav1.ObjectMeta
- func (a *Domain) GetSingularName() string
- func (a *Domain) GetStatus() resource.StatusSubResource
- func (a *Domain) IsStorageVersion() bool
- func (a *Domain) NamespaceScoped() bool
- func (a *Domain) New() runtime.Object
- func (a *Domain) NewList() runtime.Object
- func (r *Domain) Validate(ctx context.Context) field.ErrorList
- func (r *Domain) ValidateUpdate(ctx context.Context, obj runtime.Object) field.ErrorList
- type DomainForwardingSpec
- type DomainList
- type DomainPhase
- type DomainSpec
- type DomainStatus
- type DomainTLSSpec
- type DomainTargetDNS
- type DomainTargetRef
- type DomainTargetSpec
- type DomainZone
- func (in *DomainZone) DeepCopy() *DomainZone
- func (in *DomainZone) DeepCopyInto(out *DomainZone)
- func (in *DomainZone) DeepCopyObject() runtime.Object
- func (a *DomainZone) GetGroupVersionResource() schema.GroupVersionResource
- func (a *DomainZone) GetObjectMeta() *metav1.ObjectMeta
- func (a *DomainZone) GetSingularName() string
- func (a *DomainZone) GetStatus() resource.StatusSubResource
- func (a *DomainZone) IsStorageVersion() bool
- func (a *DomainZone) NamespaceScoped() bool
- func (a *DomainZone) New() runtime.Object
- func (a *DomainZone) NewList() runtime.Object
- type DomainZoneList
- type DomainZonePhase
- type DomainZoneSpec
- type DomainZoneStatus
- type DynamicProxyDNSLookupFamily
- type DynamicProxyDnsCacheConfig
- type DynamicProxySpec
- type FileAccessLog
- type ForwardingRule
- type Group
- type InfraProvider
- type Kind
- type Namespace
- type NodePhase
- type ObjectName
- type PortRange
- type ProtocolType
- type Proxy
- func (in *Proxy) DeepCopy() *Proxy
- func (in *Proxy) DeepCopyInto(out *Proxy)
- func (in *Proxy) DeepCopyObject() runtime.Object
- func (p *Proxy) GetGroupVersionResource() schema.GroupVersionResource
- func (p *Proxy) GetObjectMeta() *metav1.ObjectMeta
- func (p *Proxy) GetSingularName() string
- func (p *Proxy) GetStatus() resource.StatusSubResource
- func (p *Proxy) IsStorageVersion() bool
- func (p *Proxy) NamespaceScoped() bool
- func (p *Proxy) New() runtime.Object
- func (p *Proxy) NewList() runtime.Object
- type ProxyList
- type ProxyPhase
- type ProxySpec
- type ProxyStatus
- type ProxyType
- type TunnelNode
- func (in *TunnelNode) DeepCopy() *TunnelNode
- func (in *TunnelNode) DeepCopyInto(out *TunnelNode)
- func (in *TunnelNode) DeepCopyObject() runtime.Object
- func (p *TunnelNode) GetGroupVersionResource() schema.GroupVersionResource
- func (p *TunnelNode) GetObjectMeta() *metav1.ObjectMeta
- func (p *TunnelNode) GetSingularName() string
- func (p *TunnelNode) GetStatus() resource.StatusSubResource
- func (p *TunnelNode) IsStorageVersion() bool
- func (p *TunnelNode) NamespaceScoped() bool
- func (p *TunnelNode) New() runtime.Object
- func (p *TunnelNode) NewList() runtime.Object
- type TunnelNodeList
- type TunnelNodePeer
- type TunnelNodeRef
- type TunnelNodeSpec
- type TunnelNodeStatus
Constants ¶
const ( // DeletePolicyDelete is the delete policy that will delete the address // when the last Address is detached from the address. DeletePolicyDelete = "Delete" // DeletePolicyRetain is the delete policy that will retain the address // when the last Address is detached from the address. DeletePolicyRetain = "Retain" )
const ( // AddressPhasePending is the pending phase of the address. // This is the initial phase of the address. AddressPhasePending = "Pending" // AddressPhaseAllocated is the allocated phase of the address. // This is the phase of the address when it is allocated by the IP address manager // and ready to be attached to one or more proxies. AddressPhaseAllocated = "Allocated" // AddressPhaseAttached is the state of the address when it is attached to // one or more proxies. If there are no proxies attached to the address, // the address will either return to the Allocated phase or be deleted // depending on the address provider and deletion policy. AddressPhaseAttached = "Attached" )
const ( // DomainPhasePending is the pending phase of the domain. // This is the initial phase of the domain. DomainPhasePending = "Pending" DomainPhaseActive = "Active" DomainPhaseError = "Errored" )
const ( // Indicates that the domain zone is pending. // In order to become active, the domain owner must update the // nameservers with the registrar to point to the Apoxy nameservers. DomainZonePhasePending = "Pending" // Active phase of the domain zone. User can create records in the domain zone. DomainZonePhaseActive = "Active" )
const (
AddressFinalizer = "address.core.apoxy.dev/finalizer"
)
const (
DomainFinalizer = "domain.core.apoxy.dev/finalizer"
)
const GroupName = "core.apoxy.dev"
GroupName specifies the group name used to register the objects.
const (
ProxyFinalizer = "proxy.core.apoxy.dev/finalizer"
)
Variables ¶
var ( // localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes. SchemeBuilder runtime.SchemeBuilder // Deprecated: use Install instead AddToScheme = localSchemeBuilder.AddToScheme Install = localSchemeBuilder.AddToScheme )
var GroupVersion = v1.GroupVersion{Group: GroupName, Version: "v1alpha"}
GroupVersion specifies the group and the version used to register the objects.
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha"}
SchemeGroupVersion is group version used to register these objects Deprecated: use GroupVersion instead.
Functions ¶
func Resource ¶ added in v0.2.0
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type AccessLog ¶
type AccessLog struct {
// FileAccessLog specifies the file access log configuration.
FileAccessLog *FileAccessLog `json:"fileAccessLog,omitempty"`
}
AccessLog defines the access log configuration.
func (*AccessLog) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessLog.
func (*AccessLog) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Address ¶
type Address struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AddressSpec `json:"spec,omitempty"`
Status AddressStatus `json:"status,omitempty"`
}
Address is the Schema for the addresses API.
func (*Address) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Address.
func (*Address) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Address) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Address) GetGroupVersionResource ¶
func (a *Address) GetGroupVersionResource() schema.GroupVersionResource
func (*Address) GetObjectMeta ¶
func (a *Address) GetObjectMeta() *metav1.ObjectMeta
func (*Address) GetSingularName ¶
func (*Address) GetStatus ¶
func (a *Address) GetStatus() resource.StatusSubResource
func (*Address) IsStorageVersion ¶
func (*Address) NamespaceScoped ¶
type AddressList ¶
type AddressList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Address `json:"items"`
}
AddressList is a list of Address resources.
func (*AddressList) DeepCopy ¶
func (in *AddressList) DeepCopy() *AddressList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddressList.
func (*AddressList) DeepCopyInto ¶
func (in *AddressList) DeepCopyInto(out *AddressList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddressList) DeepCopyObject ¶
func (in *AddressList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AddressList) GetListMeta ¶
func (pl *AddressList) GetListMeta() *metav1.ListMeta
type AddressSpec ¶
type AddressSpec struct {
// Provider of the address.
// See provider constants for more information.
Provider InfraProvider `json:"provider,omitempty"`
// IPv4/IPv6 address string.
// This is immutable and cannot be changed.
// Allocated by the IP address manager.
IP string `json:"ip,omitempty"`
// Location of the address.
// Examples: "us-east1", "us-west1", etc.
// If not provided, the address is global (anycast) for cloud.
// +optional
Location string `json:"location,omitempty"`
// DeletePolicy of the address.
// See delete policy constants for more information.
// Defaults to DeletePolicyDelete.
// +optional
DeletePolicy DeletePolicy `json:"deletePolicy,omitempty"`
}
func (*AddressSpec) DeepCopy ¶
func (in *AddressSpec) DeepCopy() *AddressSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddressSpec.
func (*AddressSpec) DeepCopyInto ¶
func (in *AddressSpec) DeepCopyInto(out *AddressSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddressStatus ¶
type AddressStatus struct {
// Phase of the address.
Phase AddressPhase `json:"phase,omitempty"`
// Status of the address.
// +optional
Status string `json:"status,omitempty"`
}
func (*AddressStatus) CopyTo ¶
func (as *AddressStatus) CopyTo(parent resource.ObjectWithStatusSubResource)
func (*AddressStatus) DeepCopy ¶
func (in *AddressStatus) DeepCopy() *AddressStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddressStatus.
func (*AddressStatus) DeepCopyInto ¶
func (in *AddressStatus) DeepCopyInto(out *AddressStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AddressStatus) SubResourceName ¶
func (as *AddressStatus) SubResourceName() string
type Backend ¶ added in v0.2.0
type Backend struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec BackendSpec `json:"spec,omitempty"`
Status BackendStatus `json:"status,omitempty"`
}
Backend configures a backend (upstream) endpoint for a Proxy.
func (*Backend) DeepCopy ¶ added in v0.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend.
func (*Backend) DeepCopyInto ¶ added in v0.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backend) DeepCopyObject ¶ added in v0.2.0
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Backend) GetGroupVersionResource ¶ added in v0.2.0
func (p *Backend) GetGroupVersionResource() schema.GroupVersionResource
func (*Backend) GetObjectMeta ¶ added in v0.2.0
func (p *Backend) GetObjectMeta() *metav1.ObjectMeta
func (*Backend) GetSingularName ¶ added in v0.2.0
func (*Backend) GetStatus ¶ added in v0.2.0
func (p *Backend) GetStatus() resource.StatusSubResource
func (*Backend) IsStorageVersion ¶ added in v0.2.0
func (*Backend) NamespaceScoped ¶ added in v0.2.0
type BackendEndpoint ¶ added in v0.2.0
type BackendEndpoint struct {
// FQDN is the fully qualified domain name of the endpoint.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=253
// +kubebuilder:validation:Pattern=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9]))*$`
// +optional
FQDN string `json:"fqdn,omitempty"`
// Endpoint defined as an IPv4/IPv6 address.
// +kubebuilder:validation:Format=ipv4
// +kubebuilder:validation:Format=ipv6
// +optional
IP string `json:"ip,omitempty"`
}
func (*BackendEndpoint) DeepCopy ¶ added in v0.2.0
func (in *BackendEndpoint) DeepCopy() *BackendEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendEndpoint.
func (*BackendEndpoint) DeepCopyInto ¶ added in v0.2.0
func (in *BackendEndpoint) DeepCopyInto(out *BackendEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendList ¶ added in v0.2.0
type BackendList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Backend `json:"items"`
}
BackendList contains a list of Backend objects.
func (*BackendList) DeepCopy ¶ added in v0.2.0
func (in *BackendList) DeepCopy() *BackendList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendList.
func (*BackendList) DeepCopyInto ¶ added in v0.2.0
func (in *BackendList) DeepCopyInto(out *BackendList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackendList) DeepCopyObject ¶ added in v0.2.0
func (in *BackendList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*BackendList) GetListMeta ¶ added in v0.2.0
func (pl *BackendList) GetListMeta() *metav1.ListMeta
type BackendProto ¶ added in v0.2.0
type BackendProto string
BackendProto defines the protocol to use for the backend. +kubebuilder:validation:Enum="";tls;h2;h2c
const ( // BackendProtoTLS allows requests to be forwarded to the backend over TLS. // Should be used for HTTP/1.1 over TLS. BackendProtoTLS BackendProto = "tls" // BackendProtoH2 allows requests to be forwarded to the backend over HTTP/2. // Should be used for HTTP/2 over TLS. BackendProtoH2 BackendProto = "h2" // BackendProtoH2C allows requests to be forwarded to the backend over HTTP/2 cleartext. BackendProtoH2C BackendProto = "h2c" )
type BackendSpec ¶ added in v0.2.0
type BackendSpec struct {
// List of endpoints to connect to.
Endpoints []BackendEndpoint `json:"endpoints"`
// Specifies whether the backend should be dynamically proxied.
// If specified, Envoy's HTTP Dynamic Forward Proxy will be used to proxy requests to the backend.
// See: https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/http/http_proxy#arch-overview-http-dynamic-forward-proxy
// +optional
DynamicProxy *DynamicProxySpec `json:"dynamicProxy,omitempty"`
// Protocol defines a protocol to use for the backend.
Protocol BackendProto `json:"protocol"`
}
func (*BackendSpec) DeepCopy ¶ added in v0.2.0
func (in *BackendSpec) DeepCopy() *BackendSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendSpec.
func (*BackendSpec) DeepCopyInto ¶ added in v0.2.0
func (in *BackendSpec) DeepCopyInto(out *BackendSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendStatus ¶ added in v0.2.0
type BackendStatus struct {
// Conditions describe the current conditions of the Backend.
// +optional
// +listType=map
// +listMapKey=type
// +kubebuilder:validation:MaxItems=8
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
func (*BackendStatus) CopyTo ¶ added in v0.2.0
func (ps *BackendStatus) CopyTo(parent resource.ObjectWithStatusSubResource)
func (*BackendStatus) DeepCopy ¶ added in v0.2.0
func (in *BackendStatus) DeepCopy() *BackendStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendStatus.
func (*BackendStatus) DeepCopyInto ¶ added in v0.2.0
func (in *BackendStatus) DeepCopyInto(out *BackendStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackendStatus) SubResourceName ¶ added in v0.2.0
func (ps *BackendStatus) SubResourceName() string
type Domain ¶
type Domain struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DomainSpec `json:"spec,omitempty"`
Status DomainStatus `json:"status,omitempty"`
}
func (*Domain) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Domain.
func (*Domain) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Domain) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Domain) Default ¶ added in v0.4.0
func (r *Domain) Default()
Default sets the default values for a Domain.
func (*Domain) GetGroupVersionResource ¶
func (a *Domain) GetGroupVersionResource() schema.GroupVersionResource
func (*Domain) GetObjectMeta ¶
func (a *Domain) GetObjectMeta() *metav1.ObjectMeta
func (*Domain) GetSingularName ¶
func (*Domain) GetStatus ¶
func (a *Domain) GetStatus() resource.StatusSubResource
func (*Domain) IsStorageVersion ¶
func (*Domain) NamespaceScoped ¶
type DomainForwardingSpec ¶ added in v0.3.27
type DomainForwardingSpec struct {
// ForwardingRules is the list of forwarding rules.
ForwardingRules []ForwardingRule `json:"forwardingRules,omitempty"`
}
func (*DomainForwardingSpec) DeepCopy ¶ added in v0.3.27
func (in *DomainForwardingSpec) DeepCopy() *DomainForwardingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainForwardingSpec.
func (*DomainForwardingSpec) DeepCopyInto ¶ added in v0.3.27
func (in *DomainForwardingSpec) DeepCopyInto(out *DomainForwardingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DomainList ¶
type DomainList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Domain `json:"items"`
}
DomainList is a list of Domain resources.
func (*DomainList) DeepCopy ¶
func (in *DomainList) DeepCopy() *DomainList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainList.
func (*DomainList) DeepCopyInto ¶
func (in *DomainList) DeepCopyInto(out *DomainList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DomainList) DeepCopyObject ¶
func (in *DomainList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DomainList) GetListMeta ¶
func (pl *DomainList) GetListMeta() *metav1.ListMeta
type DomainSpec ¶
type DomainSpec struct {
// The zone this domain is managed under.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MaxLength=253
// +kubebuilder:validation:Pattern=`^[a-zA-Z0-9]([-a-zA-Z0-9]*[a-zA-Z0-9])?$`
Zone string `json:"zone,omitempty"`
// The list of subdomains nested under the domain.
// Allows for wildcard subdomains.
// +kubebuilder:validation:MaxItems=50
Subdomains []string `json:"subdomains,omitempty"`
// The list of custom domain names to also route
// to the target, which may be under another domain.
// Routing may require additional verification steps.
// +optional
// +kubebuilder:validation:MaxItems=50
CustomDomains []string `json:"customDomains,omitempty"`
// Target of the domain.
// +kubebuilder:validation:Required
Target DomainTargetSpec `json:"target"`
// TLS configuration for the domain.
TLS *DomainTLSSpec `json:"tls,omitempty"`
// Used to specify routing non-HTTP/S forwarding rules.
// For example, forwarding tcp:10000-20000 to a specified port of a target
// (e.g. an EdgeFunction or a TunnelEndpoint).
// This is a Pro feature only.
ForwardingSpec *DomainForwardingSpec `json:"forwarding,omitempty"`
}
func (*DomainSpec) DeepCopy ¶
func (in *DomainSpec) DeepCopy() *DomainSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainSpec.
func (*DomainSpec) DeepCopyInto ¶
func (in *DomainSpec) DeepCopyInto(out *DomainSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DomainStatus ¶
type DomainStatus struct {
// Phase of the domain.
Phase DomainPhase `json:"phase,omitempty"`
// Conditions recorded for the domain.
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
func (*DomainStatus) CopyTo ¶
func (as *DomainStatus) CopyTo(parent resource.ObjectWithStatusSubResource)
func (*DomainStatus) DeepCopy ¶
func (in *DomainStatus) DeepCopy() *DomainStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainStatus.
func (*DomainStatus) DeepCopyInto ¶
func (in *DomainStatus) DeepCopyInto(out *DomainStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DomainStatus) SubResourceName ¶
func (as *DomainStatus) SubResourceName() string
type DomainTLSSpec ¶ added in v0.3.39
type DomainTLSSpec struct {
// The Certificate Authority used to issue the TLS certificate.
// Currently supports "letsencrypt".
// +optional
CertificateAuthority string `json:"certificateAuthority,omitempty"`
}
func (*DomainTLSSpec) DeepCopy ¶ added in v0.3.39
func (in *DomainTLSSpec) DeepCopy() *DomainTLSSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainTLSSpec.
func (*DomainTLSSpec) DeepCopyInto ¶ added in v0.3.39
func (in *DomainTLSSpec) DeepCopyInto(out *DomainTLSSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DomainTargetDNS ¶ added in v0.3.27
type DomainTargetDNS struct {
// DNSOnly is a flag to indicate if the domain represents only a DNS record
// and no traffic is routed via Apoxy. This flag only applies to A/AAAA/CNAME records.
// +kubebuilder:validation:Default=false
// +optional
DNSOnly bool `json:"dnsOnly,omitempty"`
// IPs is the list of IP addresses of the target.
// Setting this field will create an A/AAAA record (multi-value).
// Cannot be set with FQDN.
// +kubebuilder:validation:MaxItems=20
// +optional
IPs []string `json:"ips,omitempty"`
// FQDN is the fully qualified domain name of the target.
// Setting this field will create an CNAME record.
// Cannot be set with IPs.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=253
// +kubebuilder:validation:Pattern=`^[a-zA-Z0-9]([-a-zA-Z0-9]*[a-zA-Z0-9])?$`
FQDN *string `json:"fqdn,omitempty"`
// TXT record value.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=255
TXT []string `json:"txt,omitempty"`
// MX represents a Mail Exchange record.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=253
// +optional
MX []string `json:"mx,omitempty"`
// DKIM represents a DomainKeys Identified Mail record.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=255
// +optional
DKIM []string `json:"dkim,omitempty"`
// SPF represents a Sender Policy Framework record.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=255
// +optional
SPF []string `json:"spf,omitempty"`
// DMARC represents a Domain-based Message Authentication, Reporting & Conformance record.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=255
// +optional
DMARC []string `json:"dmarc,omitempty"`
// CAA represents a Certification Authority Authorization record.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=255
// +optional
CAA []string `json:"caa,omitempty"`
// SRV represents a Service Locator record.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=255
// +optional
SRV []string `json:"srv,omitempty"`
// NS represents a Name Server record.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=253
// +optional
NS []string `json:"ns,omitempty"`
// DS represents a Delegation Signer record.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=255
// +optional
DS []string `json:"ds,omitempty"`
// DNSKEY represents a DNS Key record.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=255
// +optional
DNSKEY []string `json:"dnskey,omitempty"`
// TTL is the time-to-live of the domain record.
// +kubebuilder:validation:Minimum=0
// +kubebuilder:validation:Required
// +kubebuilder:default=20
// +kubebuilder:validation:Format=int32
// +kubebuilder:validation:Maximum=3600
// +optional
TTL *int32 `json:"ttl"`
}
func (*DomainTargetDNS) DeepCopy ¶ added in v0.3.27
func (in *DomainTargetDNS) DeepCopy() *DomainTargetDNS
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainTargetDNS.
func (*DomainTargetDNS) DeepCopyInto ¶ added in v0.3.27
func (in *DomainTargetDNS) DeepCopyInto(out *DomainTargetDNS)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DomainTargetRef ¶ added in v0.3.12
type DomainTargetRef struct {
// Group is the API Group of the target object.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=253
Group string `json:"group"`
// Kind is the kind of the target object.
// Currently supports Proxy, EdgeFunction, TunnelEndpoint kinds.
// +kubebuilder:validation:Required
Kind string `json:"kind"`
// Name is the name of the target object.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=253
// +kubebuilder:validation:Pattern=`^[a-zA-Z0-9]([-a-zA-Z0-9]*[a-zA-Z0-9])?$`
Name string `json:"name"`
}
func (*DomainTargetRef) DeepCopy ¶ added in v0.3.12
func (in *DomainTargetRef) DeepCopy() *DomainTargetRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainTargetRef.
func (*DomainTargetRef) DeepCopyInto ¶ added in v0.3.12
func (in *DomainTargetRef) DeepCopyInto(out *DomainTargetRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DomainTargetSpec ¶ added in v0.3.27
type DomainTargetSpec struct {
// Represents targets specified via DNS.
DNS *DomainTargetDNS `json:"dns,omitempty"`
// Represent a target specified via a reference to another object
// within Apoxy (e.g. Proxy, EdgeFunction, TunnelEndpoint).
Ref *DomainTargetRef `json:"ref,omitempty"`
}
func (*DomainTargetSpec) DeepCopy ¶ added in v0.3.27
func (in *DomainTargetSpec) DeepCopy() *DomainTargetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainTargetSpec.
func (*DomainTargetSpec) DeepCopyInto ¶ added in v0.3.27
func (in *DomainTargetSpec) DeepCopyInto(out *DomainTargetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DomainZone ¶ added in v0.3.27
type DomainZone struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DomainZoneSpec `json:"spec,omitempty"`
Status DomainZoneStatus `json:"status,omitempty"`
}
+genclient +genclient:nonNamespaced +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*DomainZone) DeepCopy ¶ added in v0.3.27
func (in *DomainZone) DeepCopy() *DomainZone
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainZone.
func (*DomainZone) DeepCopyInto ¶ added in v0.3.27
func (in *DomainZone) DeepCopyInto(out *DomainZone)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DomainZone) DeepCopyObject ¶ added in v0.3.27
func (in *DomainZone) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DomainZone) GetGroupVersionResource ¶ added in v0.3.27
func (a *DomainZone) GetGroupVersionResource() schema.GroupVersionResource
func (*DomainZone) GetObjectMeta ¶ added in v0.3.27
func (a *DomainZone) GetObjectMeta() *metav1.ObjectMeta
func (*DomainZone) GetSingularName ¶ added in v0.3.27
func (a *DomainZone) GetSingularName() string
func (*DomainZone) GetStatus ¶ added in v0.3.27
func (a *DomainZone) GetStatus() resource.StatusSubResource
func (*DomainZone) IsStorageVersion ¶ added in v0.3.27
func (a *DomainZone) IsStorageVersion() bool
func (*DomainZone) NamespaceScoped ¶ added in v0.3.27
func (a *DomainZone) NamespaceScoped() bool
func (*DomainZone) New ¶ added in v0.3.27
func (a *DomainZone) New() runtime.Object
func (*DomainZone) NewList ¶ added in v0.3.27
func (a *DomainZone) NewList() runtime.Object
type DomainZoneList ¶ added in v0.3.27
type DomainZoneList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Domain `json:"items"`
}
DomainZoneList is a list of Domain resources.
func (*DomainZoneList) DeepCopy ¶ added in v0.3.27
func (in *DomainZoneList) DeepCopy() *DomainZoneList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainZoneList.
func (*DomainZoneList) DeepCopyInto ¶ added in v0.3.27
func (in *DomainZoneList) DeepCopyInto(out *DomainZoneList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DomainZoneList) DeepCopyObject ¶ added in v0.3.27
func (in *DomainZoneList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DomainZoneList) GetListMeta ¶ added in v0.3.27
func (pl *DomainZoneList) GetListMeta() *metav1.ListMeta
type DomainZonePhase ¶ added in v0.3.27
type DomainZonePhase string
DomainZonePhase is the phase of the domain zone.
type DomainZoneSpec ¶ added in v0.3.27
type DomainZoneSpec struct {
}
func (*DomainZoneSpec) DeepCopy ¶ added in v0.3.27
func (in *DomainZoneSpec) DeepCopy() *DomainZoneSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainZoneSpec.
func (*DomainZoneSpec) DeepCopyInto ¶ added in v0.3.27
func (in *DomainZoneSpec) DeepCopyInto(out *DomainZoneSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DomainZoneStatus ¶ added in v0.3.27
type DomainZoneStatus struct {
// Phase of the domain zone.
Phase DomainZonePhase `json:"phase,omitempty"`
// Conditions of the domain zone.
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
func (*DomainZoneStatus) CopyTo ¶ added in v0.3.27
func (as *DomainZoneStatus) CopyTo(parent resource.ObjectWithStatusSubResource)
func (*DomainZoneStatus) DeepCopy ¶ added in v0.3.27
func (in *DomainZoneStatus) DeepCopy() *DomainZoneStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainZoneStatus.
func (*DomainZoneStatus) DeepCopyInto ¶ added in v0.3.27
func (in *DomainZoneStatus) DeepCopyInto(out *DomainZoneStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DomainZoneStatus) SubResourceName ¶ added in v0.3.27
func (as *DomainZoneStatus) SubResourceName() string
type DynamicProxyDNSLookupFamily ¶ added in v0.2.0
type DynamicProxyDNSLookupFamily string
const ( // DynamicProxyDNSLookupFamilyAuto specifies that the DNS lookup family should be automatically determined. DynamicProxyDNSLookupFamilyAuto DynamicProxyDNSLookupFamily = "auto" // DynamicProxyDNSLookupFamilyV4Only specifies that the DNS lookup family should be IPv4 only. DynamicProxyDNSLookupFamilyV4Only DynamicProxyDNSLookupFamily = "v4_only" // DynamicProxyDNSLookupFamilyV6Only specifies that the DNS lookup family should be IPv6 only. DynamicProxyDNSLookupFamilyV6Only DynamicProxyDNSLookupFamily = "v6_only" // DynamicProxyDNSLookupFamilyV4Preferred specifies that the DNS lookup family should prefer IPv4. DynamicProxyDNSLookupFamilyV4Preferred DynamicProxyDNSLookupFamily = "v4_preferred" // DynamicProxyDNSLookupFamilyAll specifies that the DNS lookup family should include both IPv4 and IPv6. DynamicProxyDNSLookupFamilyAll DynamicProxyDNSLookupFamily = "all" )
type DynamicProxyDnsCacheConfig ¶ added in v0.2.0
type DynamicProxyDnsCacheConfig struct {
// Specifies the DNS lookup family to use for the dynamic proxy.
// Default is "auto".
// +kubebuilder:validation:Enum=auto;v4_only;v6_only;v4_preferred;all
// +optional
DNSLookupFamily DynamicProxyDNSLookupFamily `json:"dnsLookupFamily,omitempty"`
// Specifies the refresh rate for *unresolved* DNS hosts. Once a host is resolved, the TTL from the DNS
// response is used. If the TTL is not present, the resolved host is cached for 60s by default.
// Must be at least 1ms, and defaults to 60s.
// +optional
DNSRefreshRate *metav1.Duration `json:"dnsRefreshRate,omitempty"`
// Specifies the minimum refresh rate for DNS hosts. If a host is resolved and the TTL is less than this value, the
// host will be refreshed at this rate.
// Default is 5s and must be at least 1s.
// +optional
DNSMinRefreshRate *metav1.Duration `json:"dnsMinRefreshRate,omitempty"`
// TTL for unused hosts. Hosts that have not been used for this duration will be removed from the cache.
// Default is 5m.
// +optional
HostTTL *metav1.Duration `json:"hostTTL,omitempty"`
// Maximum number of hosts to cache.
// Default is 1024.
// +optional
MaxHosts *uint32 `json:"maxHosts,omitempty"`
// Specifies the timeout for DNS queries.
// Default is 5s.
// +optional
DNSQueryTimeout *metav1.Duration `json:"dnsQueryTimeout,omitempty"`
}
func (*DynamicProxyDnsCacheConfig) DeepCopy ¶ added in v0.2.0
func (in *DynamicProxyDnsCacheConfig) DeepCopy() *DynamicProxyDnsCacheConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynamicProxyDnsCacheConfig.
func (*DynamicProxyDnsCacheConfig) DeepCopyInto ¶ added in v0.2.0
func (in *DynamicProxyDnsCacheConfig) DeepCopyInto(out *DynamicProxyDnsCacheConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DynamicProxySpec ¶ added in v0.2.0
type DynamicProxySpec struct {
DnsCacheConfig *DynamicProxyDnsCacheConfig `json:"dnsCacheConfig,omitempty"`
}
func (*DynamicProxySpec) DeepCopy ¶ added in v0.2.0
func (in *DynamicProxySpec) DeepCopy() *DynamicProxySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynamicProxySpec.
func (*DynamicProxySpec) DeepCopyInto ¶ added in v0.2.0
func (in *DynamicProxySpec) DeepCopyInto(out *DynamicProxySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FileAccessLog ¶
type FileAccessLog struct {
// Path where access logs collectors will look for access log files.
// Accepts absolute paths, and paths relative to the Proxy's current working directory.
// If empty, will use default path for the proxy type.
// +optional
Path string `json:"path,omitempty"`
}
FileAccessLog defines the file access log configuration.
func (*FileAccessLog) DeepCopy ¶
func (in *FileAccessLog) DeepCopy() *FileAccessLog
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FileAccessLog.
func (*FileAccessLog) DeepCopyInto ¶
func (in *FileAccessLog) DeepCopyInto(out *FileAccessLog)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ForwardingRule ¶ added in v0.3.27
type ForwardingRule struct {
// Protocol specifies the protocol for forwarding.
// +kubebuilder:validation:Required
Protocol ProtocolType `json:"protocol"`
// PortRanges specifies the port ranges for forwarding.
// +kubebuilder:validation:Required
PortRanges []PortRange `json:"portRanges"`
// If not specified, the connections will be forwarded to the same port it
// was received on.
TargetPort *int32 `json:"targetPort,omitempty"`
}
func (*ForwardingRule) DeepCopy ¶ added in v0.3.27
func (in *ForwardingRule) DeepCopy() *ForwardingRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardingRule.
func (*ForwardingRule) DeepCopyInto ¶ added in v0.3.27
func (in *ForwardingRule) DeepCopyInto(out *ForwardingRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Group ¶ added in v0.4.2
type Group string
Group refers to an API Group. It must either be an empty string or a RFC 1123 subdomain.
This validation is based off of the corresponding Kubernetes validation: https://github.com/kubernetes/apimachinery/blob/02cfb53916346d085a6c6c7c66f882e3c6b0eca6/pkg/util/validation/validation.go#L208
Valid values include:
* "" - empty string implies core Kubernetes API group * "gateway.networking.k8s.io" * "controllers.apoxy.dev"
Invalid values include:
* "example.com/bar" - "/" is an invalid character
+kubebuilder:validation:MaxLength=253 +kubebuilder:validation:Pattern=`^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$`
type InfraProvider ¶
type InfraProvider string
InfraProvider defines the infrastructure provider where the proxy will be deployed.
const ( // InfraProviderCloud is the cloud provider. // This provider deploys proxies within Apoxy cloud. InfraProviderCloud InfraProvider = "cloud" // InfraProviderKubernetes is the kubernetes provider. // This provider is used to deploy the proxy as a kubernetes pod. InfraProviderKubernetes InfraProvider = "kubernetes" )
type Kind ¶ added in v0.4.2
type Kind string
Kind refers to an API Kind. It must be a valid Kubernetes kind.
Valid values include:
* "Service" * "HTTPRoute" * "Proxy"
Invalid values include:
* "invalid/kind" - "/" is an invalid character
+kubebuilder:validation:MinLength=1 +kubebuilder:validation:MaxLength=63 +kubebuilder:validation:Pattern=`^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$`
type Namespace ¶ added in v0.4.2
type Namespace string
Namespace refers to a Kubernetes namespace. It must be a RFC 1123 label.
+kubebuilder:validation:Pattern=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?$` +kubebuilder:validation:MinLength=1 +kubebuilder:validation:MaxLength=63
type NodePhase ¶ added in v0.2.0
type NodePhase string
const ( // NodePhasePending is the phase for a node that is being setup // before it moves into "Ready" (to accept connections from peers and // relay traffic for them) or "Failed" (if it fails to setup). NodePhasePending NodePhase = "Pending" // NodePhaseReady NodePhaseReady NodePhase = "Ready" // NodePhaseFailed NodePhaseFailed NodePhase = "Failed" )
type ObjectName ¶ added in v0.4.2
type ObjectName string
ObjectName refers to the name of an API object. It must be a valid Kubernetes name.
Object names can have a variety of forms, including RFC 1123 subdomains, RFC 1123 labels, or RFC 1035 labels.
+kubebuilder:validation:MinLength=1 +kubebuilder:validation:MaxLength=253
type PortRange ¶ added in v0.3.27
type PortRange struct {
// StartPort is the starting port of the range.
// +kubebuilder:validation:Minimum=1
// +kubebuilder:validation:Maximum=65535
StartPort int32 `json:"startPort"`
// EndPort is the ending port of the range.
// +kubebuilder:validation:Minimum=1
// +kubebuilder:validation:Maximum=65535
EndPort int32 `json:"endPort"`
}
func (*PortRange) DeepCopy ¶ added in v0.3.27
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortRange.
func (*PortRange) DeepCopyInto ¶ added in v0.3.27
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProtocolType ¶ added in v0.3.27
type ProtocolType string
const ( ProtocolHTTP ProtocolType = "HTTP" ProtocolTLS ProtocolType = "TLS" ProtocolTCP ProtocolType = "TCP" ProtocolUDP ProtocolType = "UDP" )
type Proxy ¶
type Proxy struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ProxySpec `json:"spec,omitempty"`
Status ProxyStatus `json:"status,omitempty"`
}
Proxy is the Schema for the proxies API.
func (*Proxy) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Proxy.
func (*Proxy) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Proxy) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Proxy) GetGroupVersionResource ¶
func (p *Proxy) GetGroupVersionResource() schema.GroupVersionResource
func (*Proxy) GetObjectMeta ¶
func (p *Proxy) GetObjectMeta() *metav1.ObjectMeta
func (*Proxy) GetSingularName ¶
func (*Proxy) GetStatus ¶
func (p *Proxy) GetStatus() resource.StatusSubResource
func (*Proxy) IsStorageVersion ¶
func (*Proxy) NamespaceScoped ¶
type ProxyList ¶
type ProxyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Proxy `json:"items"`
}
ProxyList contains a list of Proxy objects.
func (*ProxyList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyList.
func (*ProxyList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProxyList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ProxyList) GetListMeta ¶
type ProxyPhase ¶
type ProxyPhase string
const ( ProxyPhasePending ProxyPhase = "Pending" ProxyPhaseRunning ProxyPhase = "Running" ProxyPhaseTerminating ProxyPhase = "Terminating" ProxyPhaseStopped ProxyPhase = "Stopped" ProxyPhaseFailed ProxyPhase = "Failed" )
type ProxySpec ¶
type ProxySpec struct {
// Proxy type (currently only envoy is supported).
Type ProxyType `json:"type,omitempty"`
// Provider is the infrastructure provider where the proxy will be deployed.
// Defaults to "cloud" provider.
Provider InfraProvider `json:"provider,omitempty"`
// Node name of the proxy.
// +optional
NodeName string `json:"nodeName,omitempty"`
// Proxy configuration.
ConfigData string `json:"configData,omitempty"`
// Reference to the IP (v4/v6) address attached to the proxy.
// If not specified, the proxy will allocate default address
// for the "cloud" provider. See other providers for their default
// address allocation mechanism.
// +optional
AddressRef *corev1.ObjectReference `json:"addressRef,omitempty"`
// Location (region) of the proxy instance.
Location string `json:"location,omitempty"`
// Access log collector configuration. This is used to configure the access log collector
// that will be used to collect access logs from the proxy so proxy config should have the
// configuration to produce access logs using the matching format/sink.
AccessLog *AccessLog `json:"accessLog,omitempty"`
// DynamicForwardProxy enables a dynamic forward proxy for sending
// traffic to dynamically created upstreams based on the host
// exctracted from the request.
DynamicForwardProxy bool `json:"dynamicForwardProxy,omitempty"`
}
ProxySpec defines the desired specification of a Proxy.
func (*ProxySpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxySpec.
func (*ProxySpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyStatus ¶
type ProxyStatus struct {
// Start time of the proxy.
StartTimestamp *metav1.Time `json:"startTimestamp,omitempty"`
// IPv4/6 address string of the proxy. If provided in the spec, this will be the same as
// the addressRef data.
// +optional
Address string `json:"address,omitempty"`
// Phase of the proxy.
// Examples: "Pending", "Running", "Failed", etc.
Phase ProxyPhase `json:"phase,omitempty"`
// MachineID of the proxy.
// Used to identify the proxy instance in the infrastructure provider.
// +optional
MachineID string `json:"machineID,omitempty"`
// Status of the proxy.
// +optional
Status string `json:"status,omitempty"`
}
ProxyStatus defines the observed state of Proxy.
func (*ProxyStatus) CopyTo ¶
func (ps *ProxyStatus) CopyTo(parent resource.ObjectWithStatusSubResource)
func (*ProxyStatus) DeepCopy ¶
func (in *ProxyStatus) DeepCopy() *ProxyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyStatus.
func (*ProxyStatus) DeepCopyInto ¶
func (in *ProxyStatus) DeepCopyInto(out *ProxyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProxyStatus) SubResourceName ¶
func (ps *ProxyStatus) SubResourceName() string
type ProxyType ¶
type ProxyType string
ProxyType defines the type of proxy.
const ( // ProxyTypeEnvoy is the envoy proxy type. ProxyTypeEnvoy ProxyType = "envoy" )
type TunnelNode ¶ added in v0.2.0
type TunnelNode struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec TunnelNodeSpec `json:"spec,omitempty"`
Status TunnelNodeStatus `json:"status,omitempty"`
}
TunnelNode represents a node in the tunnel network.
func (*TunnelNode) DeepCopy ¶ added in v0.2.0
func (in *TunnelNode) DeepCopy() *TunnelNode
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TunnelNode.
func (*TunnelNode) DeepCopyInto ¶ added in v0.2.0
func (in *TunnelNode) DeepCopyInto(out *TunnelNode)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TunnelNode) DeepCopyObject ¶ added in v0.2.0
func (in *TunnelNode) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*TunnelNode) GetGroupVersionResource ¶ added in v0.2.0
func (p *TunnelNode) GetGroupVersionResource() schema.GroupVersionResource
func (*TunnelNode) GetObjectMeta ¶ added in v0.2.0
func (p *TunnelNode) GetObjectMeta() *metav1.ObjectMeta
func (*TunnelNode) GetSingularName ¶ added in v0.2.0
func (p *TunnelNode) GetSingularName() string
func (*TunnelNode) GetStatus ¶ added in v0.2.0
func (p *TunnelNode) GetStatus() resource.StatusSubResource
func (*TunnelNode) IsStorageVersion ¶ added in v0.2.0
func (p *TunnelNode) IsStorageVersion() bool
func (*TunnelNode) NamespaceScoped ¶ added in v0.2.0
func (p *TunnelNode) NamespaceScoped() bool
func (*TunnelNode) New ¶ added in v0.2.0
func (p *TunnelNode) New() runtime.Object
func (*TunnelNode) NewList ¶ added in v0.2.0
func (p *TunnelNode) NewList() runtime.Object
type TunnelNodeList ¶ added in v0.2.0
type TunnelNodeList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []TunnelNode `json:"items"`
}
TunnelNodeList contains a list of TunnelNode objects.
func (*TunnelNodeList) DeepCopy ¶ added in v0.2.0
func (in *TunnelNodeList) DeepCopy() *TunnelNodeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TunnelNodeList.
func (*TunnelNodeList) DeepCopyInto ¶ added in v0.2.0
func (in *TunnelNodeList) DeepCopyInto(out *TunnelNodeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TunnelNodeList) DeepCopyObject ¶ added in v0.2.0
func (in *TunnelNodeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*TunnelNodeList) GetListMeta ¶ added in v0.2.0
func (pl *TunnelNodeList) GetListMeta() *metav1.ListMeta
type TunnelNodePeer ¶ added in v0.4.2
type TunnelNodePeer struct {
// TunnelNodeRef is a reference to a TunnelNode that this node should peer with.
TunnelNodeRef *TunnelNodeRef `json:"tunnelNodeRef,omitempty"`
// LabelSelector is a label selector that selects the peers to peer with.
LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`
}
func (*TunnelNodePeer) DeepCopy ¶ added in v0.4.2
func (in *TunnelNodePeer) DeepCopy() *TunnelNodePeer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TunnelNodePeer.
func (*TunnelNodePeer) DeepCopyInto ¶ added in v0.4.2
func (in *TunnelNodePeer) DeepCopyInto(out *TunnelNodePeer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TunnelNodeRef ¶ added in v0.4.2
type TunnelNodeRef struct {
// Name of the tunnel node.
Name string `json:"name,omitempty"`
}
func (*TunnelNodeRef) DeepCopy ¶ added in v0.4.2
func (in *TunnelNodeRef) DeepCopy() *TunnelNodeRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TunnelNodeRef.
func (*TunnelNodeRef) DeepCopyInto ¶ added in v0.4.2
func (in *TunnelNodeRef) DeepCopyInto(out *TunnelNodeRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TunnelNodeSpec ¶ added in v0.2.0
type TunnelNodeSpec struct {
Peers []TunnelNodePeer `json:"peers,omitempty"`
}
func (*TunnelNodeSpec) DeepCopy ¶ added in v0.2.0
func (in *TunnelNodeSpec) DeepCopy() *TunnelNodeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TunnelNodeSpec.
func (*TunnelNodeSpec) DeepCopyInto ¶ added in v0.2.0
func (in *TunnelNodeSpec) DeepCopyInto(out *TunnelNodeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TunnelNodeStatus ¶ added in v0.2.0
type TunnelNodeStatus struct {
// Phase of the node.
Phase NodePhase `json:"phase,omitempty"`
// Public key of the node (base64 encoded).
PublicKey string `json:"publicKey,omitempty"`
// External address of the node or address of the NAT hole punched.
ExternalAddress string `json:"externalAddress,omitempty"`
// Internal address of the node. Always a /96 IPv6 address.
InternalAddress string `json:"internalAddress,omitempty"`
}
func (*TunnelNodeStatus) CopyTo ¶ added in v0.2.0
func (ps *TunnelNodeStatus) CopyTo(parent resource.ObjectWithStatusSubResource)
func (*TunnelNodeStatus) DeepCopy ¶ added in v0.2.0
func (in *TunnelNodeStatus) DeepCopy() *TunnelNodeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TunnelNodeStatus.
func (*TunnelNodeStatus) DeepCopyInto ¶ added in v0.2.0
func (in *TunnelNodeStatus) DeepCopyInto(out *TunnelNodeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TunnelNodeStatus) SubResourceName ¶ added in v0.2.0
func (ps *TunnelNodeStatus) SubResourceName() string