v1alpha1

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Oct 12, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package v1alpha1 contains managed resources for DigitalOcean LoadBalancer services. +kubebuilder:object:generate=true +groupName=loadbalancer.do.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	StatusNew    = "new"
	StatusActive = "active"
	StatusOff    = "off"
)

Known LB statuses.

View Source
const (
	Group   = "loadbalancer.do.crossplane.io"
	Version = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)
View Source
var (
	LBKind             = reflect.TypeOf(LB{}).Name()
	LBGroupKind        = schema.GroupKind{Group: Group, Kind: LBKind}.String()
	LBKindAPIVersion   = LBKind + "." + SchemeGroupVersion.String()
	LBGroupVersionKind = SchemeGroupVersion.WithKind(LBKind)
)

LB type metadata.

Functions

This section is empty.

Types

type DOLoadBalancerHealthCheck

type DOLoadBalancerHealthCheck struct {
	// The number of seconds between between two consecutive health checks. The value must be between 3 and 300.
	// If not specified, the default value is 10.
	// +optional
	// +kubebuilder:validation:Minimum=3
	// +kubebuilder:validation:Maximum=300
	Interval int `json:"interval,omitempty"`
	// The number of seconds the Load Balancer instance will wait for a response until marking a health check as failed.
	// The value must be between 3 and 300. If not specified, the default value is 5.
	// +optional
	// +kubebuilder:validation:Minimum=3
	// +kubebuilder:validation:Maximum=300
	Timeout int `json:"timeout,omitempty"`
	// The number of times a health check must fail for a backend Droplet to be marked "unhealthy" and be removed from the pool.
	// The vaule must be between 2 and 10. If not specified, the default value is 3.
	// +optional
	// +kubebuilder:validation:Minimum=2
	// +kubebuilder:validation:Maximum=10
	UnhealthyThreshold int `json:"unhealthyThreshold,omitempty"`
	// The number of times a health check must pass for a backend Droplet to be marked "healthy" and be re-added to the pool.
	// The vaule must be between 2 and 10. If not specified, the default value is 5.
	// +optional
	// +kubebuilder:validation:Minimum=2
	// +kubebuilder:validation:Maximum=10
	HealthyThreshold int `json:"healthyThreshold,omitempty"`
}

DOLoadBalancerHealthCheck define the DigitalOcean loadbalancers health check configurations.

func (*DOLoadBalancerHealthCheck) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOLoadBalancerHealthCheck.

func (*DOLoadBalancerHealthCheck) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LB

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

	Spec   LBSpec   `json:"spec"`
	Status LBStatus `json:"status,omitempty"`
}

A LB is a managed resource that represents a DigitalOcean LB. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,do}

func (*LB) DeepCopy

func (in *LB) DeepCopy() *LB

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LB.

func (*LB) DeepCopyInto

func (in *LB) DeepCopyInto(out *LB)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LB) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*LB) GetCondition

func (mg *LB) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this LB.

func (*LB) GetDeletionPolicy

func (mg *LB) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this LB.

func (*LB) GetProviderConfigReference

func (mg *LB) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this LB.

func (*LB) GetProviderReference

func (mg *LB) GetProviderReference() *xpv1.Reference

GetProviderReference of this LB. Deprecated: Use GetProviderConfigReference.

func (*LB) GetWriteConnectionSecretToReference

func (mg *LB) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this LB.

func (*LB) SetConditions

func (mg *LB) SetConditions(c ...xpv1.Condition)

SetConditions of this LB.

func (*LB) SetDeletionPolicy

func (mg *LB) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this LB.

func (*LB) SetProviderConfigReference

func (mg *LB) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this LB.

func (*LB) SetProviderReference

func (mg *LB) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this LB. Deprecated: Use SetProviderConfigReference.

func (*LB) SetWriteConnectionSecretToReference

func (mg *LB) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this LB.

type LBList

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

LBList contains a list of LBs.

func (*LBList) DeepCopy

func (in *LBList) DeepCopy() *LBList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LBList.

func (*LBList) DeepCopyInto

func (in *LBList) DeepCopyInto(out *LBList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LBList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*LBList) GetItems

func (l *LBList) GetItems() []resource.Managed

GetItems of this LBList.

type LBObservation

type LBObservation struct {
	// CreationTimestamp in RFC3339 text format.
	CreationTimestamp string `json:"creationTimestamp,omitempty"`

	// ID for the resource. This identifier is defined by the server.
	ID string `json:"id,omitempty"`

	// IP for the resource.
	IP int `json:"ip,omitempty"`

	// A Status string indicating the state of the LB instance.
	//
	// Possible values:
	//   "new"
	//   "active"
	//   "off"
	Status string `json:"status,omitempty"`
}

A LBObservation reflects the observed state of a LB on DigitalOcean.

func (*LBObservation) DeepCopy

func (in *LBObservation) DeepCopy() *LBObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LBObservation.

func (*LBObservation) DeepCopyInto

func (in *LBObservation) DeepCopyInto(out *LBObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LBParameters

type LBParameters struct {
	// Region: The unique slug identifier for the region that you wish to
	// deploy in.
	// +immutable
	Region string `json:"region"`

	// Algorithm: The load balancing algorithm used to determine which backend
	// Droplet will be selected by a client.
	// It must be either "round_robin" or "least_connections".
	// +kubebuilder:validation:Enum=round_robin;least_connections
	Algorithm string `json:"algorithm"`

	// API Server port. It must be valid ports range (1-65535). If omitted, default value is 6443.
	// +optional
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=65535
	Port int `json:"port,omitempty"`

	// An object specifying health check settings for the Load Balancer. If omitted, default values will be provided.
	// +optional
	HealthCheck DOLoadBalancerHealthCheck `json:"healthCheck,omitempty"`

	// Tags: A flat array of tag names as strings to apply to the LB after it
	// is created. Tag names can either be existing or new tags.
	// +optional
	// +immutable
	Tags []string `json:"tags,omitempty"`

	// VPCUUID: A string specifying the UUID of the VPC to which the LB
	// will be assigned. If excluded, beginning on April 7th, 2020, the LB
	// will be assigned to your account's default VPC for the region.
	// +optional
	// +immutable
	VPCUUID *string `json:"vpc_uuid,omitempty"`
}

LBParameters define the desired state of a DigitalOcean LoadBalancer. Most fields map directly to a LoadBalancer: https://developers.digitalocean.com/documentation/v2/#load-balancers

func (*LBParameters) DeepCopy

func (in *LBParameters) DeepCopy() *LBParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LBParameters.

func (*LBParameters) DeepCopyInto

func (in *LBParameters) DeepCopyInto(out *LBParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LBSpec

type LBSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       LBParameters `json:"forProvider"`
}

A LBSpec defines the desired state of a LB.

func (*LBSpec) DeepCopy

func (in *LBSpec) DeepCopy() *LBSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LBSpec.

func (*LBSpec) DeepCopyInto

func (in *LBSpec) DeepCopyInto(out *LBSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LBStatus

type LBStatus struct {
	xpv1.ResourceStatus `json:",inline"`
	AtProvider          LBObservation `json:"atProvider,omitempty"`
}

A LBStatus represents the observed state of a LB.

func (*LBStatus) DeepCopy

func (in *LBStatus) DeepCopy() *LBStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LBStatus.

func (*LBStatus) DeepCopyInto

func (in *LBStatus) DeepCopyInto(out *LBStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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