Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the networking v1alpha1 API group +kubebuilder:object:generate=true +groupName=networking.laboys.org
Index ¶
- Variables
- type ExternalProxy
- type ExternalProxyBackend
- type ExternalProxyIngress
- type ExternalProxyIngressBackend
- type ExternalProxyIngressHttpPath
- type ExternalProxyIngressHttpRuleValue
- type ExternalProxyIngressMetadata
- type ExternalProxyIngressRule
- type ExternalProxyList
- type ExternalProxyService
- type ExternalProxyServiceBackendPort
- type ExternalProxySpec
- type ExternalProxyStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "networking.laboys.org", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type ExternalProxy ¶
type ExternalProxy struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ExternalProxySpec `json:"spec,omitempty"`
Status ExternalProxyStatus `json:"status,omitempty"`
}
ExternalProxy is the Schema for the externalproxies API
func (*ExternalProxy) DeepCopy ¶
func (in *ExternalProxy) DeepCopy() *ExternalProxy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxy.
func (*ExternalProxy) DeepCopyInto ¶
func (in *ExternalProxy) DeepCopyInto(out *ExternalProxy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ExternalProxy) DeepCopyObject ¶
func (in *ExternalProxy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ExternalProxyBackend ¶
type ExternalProxyBackend struct {
Addresses []corev1.EndpointAddress `json:"addresses"`
Ports []corev1.EndpointPort `json:"ports"`
}
func (*ExternalProxyBackend) DeepCopy ¶
func (in *ExternalProxyBackend) DeepCopy() *ExternalProxyBackend
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyBackend.
func (*ExternalProxyBackend) DeepCopyInto ¶
func (in *ExternalProxyBackend) DeepCopyInto(out *ExternalProxyBackend)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxyIngress ¶
type ExternalProxyIngress struct {
// Standard object's metadata.
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
metav1.ObjectMeta `json:"metadata,omitempty"`
// ingressClassName is the name of an IngressClass cluster resource.
IngressClassName *string `json:"ingressClassName,omitempty"`
// defaultBackend is the backend that should handle requests that don't
// match any rule. If Rules are not specified, DefaultBackend must be specified.
// If DefaultBackend is not set, the handling of requests that do not match any
// of the rules will be up to the Ingress controller.
// +optional
DefaultBackend *ExternalProxyIngressBackend `json:"defaultBackend,omitempty"`
// tls represents the TLS configuration. Currently, the Ingress only supports a
// single TLS port, 443. If multiple members of this list specify different hosts,
// they will be multiplexed on the same port according to the hostname specified
// through the SNI TLS extension, if the ingress controller fulfilling the
// ingress supports SNI.
TLS []networkingv1.IngressTLS `json:"tls,omitempty"`
// rules is a list of host rules used to configure the Ingress. If unspecified,
// or no rule matches, all traffic is sent to the default backend.
Rules []ExternalProxyIngressRule `json:"rules,omitempty"`
}
func (*ExternalProxyIngress) DeepCopy ¶
func (in *ExternalProxyIngress) DeepCopy() *ExternalProxyIngress
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyIngress.
func (*ExternalProxyIngress) DeepCopyInto ¶
func (in *ExternalProxyIngress) DeepCopyInto(out *ExternalProxyIngress)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxyIngressBackend ¶
type ExternalProxyIngressBackend struct {
// port of the referenced service. A port name or port number
// is required for a ExternalProxyServiceBackendPort.
Port ExternalProxyServiceBackendPort `json:"port,omitempty"`
}
ExternalProxyIngressBackend describes all endpoints for a given service and port.
func (*ExternalProxyIngressBackend) DeepCopy ¶
func (in *ExternalProxyIngressBackend) DeepCopy() *ExternalProxyIngressBackend
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyIngressBackend.
func (*ExternalProxyIngressBackend) DeepCopyInto ¶
func (in *ExternalProxyIngressBackend) DeepCopyInto(out *ExternalProxyIngressBackend)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxyIngressHttpPath ¶
type ExternalProxyIngressHttpPath struct {
// path is matched against the path of an incoming request. Currently, it can
// contain characters disallowed from the conventional "path" part of a URL
// as defined by RFC 3986. Paths must begin with a '/' and must be present
// when using PathType with value "Exact" or "Prefix".
Path string `json:"path,omitempty"`
// pathType determines the interpretation of the path matching.
PathType *networkingv1.PathType `json:"pathType"`
// backend defines the referenced service endpoint to which the traffic
// will be forwarded to.
Backend *ExternalProxyIngressBackend `json:"backend,omitempty"`
}
ExternalProxyIngressHttpPath associates a path with a backend. Incoming urls matching the path are forwarded to the backend.
func (*ExternalProxyIngressHttpPath) DeepCopy ¶
func (in *ExternalProxyIngressHttpPath) DeepCopy() *ExternalProxyIngressHttpPath
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyIngressHttpPath.
func (*ExternalProxyIngressHttpPath) DeepCopyInto ¶
func (in *ExternalProxyIngressHttpPath) DeepCopyInto(out *ExternalProxyIngressHttpPath)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxyIngressHttpRuleValue ¶
type ExternalProxyIngressHttpRuleValue struct {
// paths is a collection of paths that map requests to backends.
Paths []ExternalProxyIngressHttpPath `json:"paths"`
}
ExternalProxyIngressHttpRuleValue is a list of http selectors pointing to backends.
func (*ExternalProxyIngressHttpRuleValue) DeepCopy ¶
func (in *ExternalProxyIngressHttpRuleValue) DeepCopy() *ExternalProxyIngressHttpRuleValue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyIngressHttpRuleValue.
func (*ExternalProxyIngressHttpRuleValue) DeepCopyInto ¶
func (in *ExternalProxyIngressHttpRuleValue) DeepCopyInto(out *ExternalProxyIngressHttpRuleValue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxyIngressMetadata ¶
type ExternalProxyIngressMetadata struct {
// Map of string keys and values that can be used to organize and categorize
// (scope and select) objects. May match selectors of replication controllers
// and services.
// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels
// +optional
Labels map[string]string `json:"labels,omitempty" protobuf:"bytes,11,rep,name=labels"`
// Annotations is an unstructured key value map stored with a resource that may be
// set by external tools to store and retrieve arbitrary metadata. They are not
// queryable and should be preserved when modifying objects.
// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations
// +optional
Annotations map[string]string `json:"annotations,omitempty" protobuf:"bytes,12,rep,name=annotations"`
}
func (*ExternalProxyIngressMetadata) DeepCopy ¶
func (in *ExternalProxyIngressMetadata) DeepCopy() *ExternalProxyIngressMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyIngressMetadata.
func (*ExternalProxyIngressMetadata) DeepCopyInto ¶
func (in *ExternalProxyIngressMetadata) DeepCopyInto(out *ExternalProxyIngressMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxyIngressRule ¶
type ExternalProxyIngressRule struct {
// host is the fully qualified domain name of a network host, as defined by RFC 3986.
//
// Incoming requests are matched against the host before the IngressRuleValue. If the
// host is unspecified, the Ingress routes all traffic based on the specified IngressRuleValue.
Host string `json:"host,omitempty"`
// http represents a rule to route requests for this ExternalProxyIngressRule.
//
// If unspecified, the rule defaults to a http catch-all. Whether that sends
// just traffic matching the host to the default backend or all traffic to the
// default backend, is left to the controller fulfilling the Ingress.
HTTP *ExternalProxyIngressHttpRuleValue `json:"http,omitempty"`
}
ExternalProxyIngressRule represents the rules mapping the paths under a specified host to the related backend services. Incoming requests are first evaluated for a host match, then routed to the backend associated with the matching IngressRuleValue.
func (*ExternalProxyIngressRule) DeepCopy ¶
func (in *ExternalProxyIngressRule) DeepCopy() *ExternalProxyIngressRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyIngressRule.
func (*ExternalProxyIngressRule) DeepCopyInto ¶
func (in *ExternalProxyIngressRule) DeepCopyInto(out *ExternalProxyIngressRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxyList ¶
type ExternalProxyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ExternalProxy `json:"items"`
}
ExternalProxyList contains a list of ExternalProxy
func (*ExternalProxyList) DeepCopy ¶
func (in *ExternalProxyList) DeepCopy() *ExternalProxyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyList.
func (*ExternalProxyList) DeepCopyInto ¶
func (in *ExternalProxyList) DeepCopyInto(out *ExternalProxyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ExternalProxyList) DeepCopyObject ¶
func (in *ExternalProxyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ExternalProxyService ¶
type ExternalProxyService struct {
// Standard object's metadata.
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
metav1.ObjectMeta `json:"metadata,omitempty"`
// The name of the Service, if empty the name of the ExternalProxy is used.
Name *string `json:"name,omitempty"`
// type determines how the Service is exposed. Defaults to ClusterIP.
Type corev1.ServiceType `json:"type"`
// The list of ports that are exposed by this service.
Ports []corev1.ServicePort `json:"ports"`
}
func (*ExternalProxyService) DeepCopy ¶
func (in *ExternalProxyService) DeepCopy() *ExternalProxyService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyService.
func (*ExternalProxyService) DeepCopyInto ¶
func (in *ExternalProxyService) DeepCopyInto(out *ExternalProxyService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxyServiceBackendPort ¶
type ExternalProxyServiceBackendPort struct {
// name is the name of the port on the Service.
// This is a mutually exclusive setting with "Number".
// +optional
Name string `json:"name,omitempty"`
// number is the numerical port number (e.g. 80) on the Service.
// This is a mutually exclusive setting with "Name".
// +optional
Number int32 `json:"number,omitempty"`
}
ExternalProxyServiceBackendPort is the service port being referenced.
func (*ExternalProxyServiceBackendPort) DeepCopy ¶
func (in *ExternalProxyServiceBackendPort) DeepCopy() *ExternalProxyServiceBackendPort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyServiceBackendPort.
func (*ExternalProxyServiceBackendPort) DeepCopyInto ¶
func (in *ExternalProxyServiceBackendPort) DeepCopyInto(out *ExternalProxyServiceBackendPort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxySpec ¶
type ExternalProxySpec struct {
Backends []ExternalProxyBackend `json:"backends"`
Service ExternalProxyService `json:"service,omitempty"`
Ingress *ExternalProxyIngress `json:"ingress,omitempty"`
}
ExternalProxySpec defines the desired state of ExternalProxy
func (*ExternalProxySpec) DeepCopy ¶
func (in *ExternalProxySpec) DeepCopy() *ExternalProxySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxySpec.
func (*ExternalProxySpec) DeepCopyInto ¶
func (in *ExternalProxySpec) DeepCopyInto(out *ExternalProxySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalProxyStatus ¶
type ExternalProxyStatus struct {
Ready bool `json:"ready"`
ServiceName string `json:"serviceName"`
ObservedGeneration int64 `json:"observedGeneration"`
}
ExternalProxyStatus defines the observed state of ExternalProxy
func (*ExternalProxyStatus) DeepCopy ¶
func (in *ExternalProxyStatus) DeepCopy() *ExternalProxyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalProxyStatus.
func (*ExternalProxyStatus) DeepCopyInto ¶
func (in *ExternalProxyStatus) DeepCopyInto(out *ExternalProxyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.