Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- func ClusterNameRoleTag(clusterName, role string) string
- func ClusterNameTag(clusterName string) string
- func ClusterNameUIDRoleTag(clusterName, clusterUID, role string) string
- func DOSafeName(name string) string
- func DataDiskName(m *DOMachine, suffix string) string
- func NameTagFromName(name string) string
- type BuildTagParams
- type DOCluster
- func (in *DOCluster) DeepCopy() *DOCluster
- func (in *DOCluster) DeepCopyInto(out *DOCluster)
- func (in *DOCluster) DeepCopyObject() runtime.Object
- func (r *DOCluster) Default()
- func (*DOCluster) Hub()
- func (r *DOCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *DOCluster) ValidateCreate() (admission.Warnings, error)
- func (r *DOCluster) ValidateDelete() (admission.Warnings, error)
- func (r *DOCluster) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type DOClusterList
- type DOClusterSpec
- type DOClusterStatus
- type DOClusterTemplate
- func (in *DOClusterTemplate) DeepCopy() *DOClusterTemplate
- func (in *DOClusterTemplate) DeepCopyInto(out *DOClusterTemplate)
- func (in *DOClusterTemplate) DeepCopyObject() runtime.Object
- func (r *DOClusterTemplate) Default()
- func (r *DOClusterTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *DOClusterTemplate) ValidateCreate() (admission.Warnings, error)
- func (r *DOClusterTemplate) ValidateDelete() (admission.Warnings, error)
- func (r *DOClusterTemplate) ValidateUpdate(oldRaw runtime.Object) (admission.Warnings, error)
- type DOClusterTemplateList
- type DOClusterTemplateResource
- type DOClusterTemplateSpec
- type DOControlPlaneDNS
- type DOLoadBalancer
- type DOLoadBalancerHealthCheck
- type DOMachine
- func (in *DOMachine) DeepCopy() *DOMachine
- func (in *DOMachine) DeepCopyInto(out *DOMachine)
- func (in *DOMachine) DeepCopyObject() runtime.Object
- func (r *DOMachine) Default()
- func (*DOMachine) Hub()
- func (r *DOMachine) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *DOMachine) ValidateCreate() (admission.Warnings, error)
- func (r *DOMachine) ValidateDelete() (admission.Warnings, error)
- func (r *DOMachine) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type DOMachineList
- type DOMachineSpec
- type DOMachineStatus
- type DOMachineTemplate
- func (in *DOMachineTemplate) DeepCopy() *DOMachineTemplate
- func (in *DOMachineTemplate) DeepCopyInto(out *DOMachineTemplate)
- func (in *DOMachineTemplate) DeepCopyObject() runtime.Object
- func (r *DOMachineTemplate) Default()
- func (*DOMachineTemplate) Hub()
- func (r *DOMachineTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *DOMachineTemplate) ValidateCreate() (admission.Warnings, error)
- func (r *DOMachineTemplate) ValidateDelete() (admission.Warnings, error)
- func (r *DOMachineTemplate) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type DOMachineTemplateList
- type DOMachineTemplateResource
- type DOMachineTemplateSpec
- type DONetwork
- type DONetworkResource
- type DOResourceReference
- type DOResourceStatus
- type DOVPC
- type DOVolume
- type DataDisk
- type Tags
Constants ¶
const ( // NameDigitalOceanProviderPrefix is the tag prefix for // cluster-api-provider-digitalocean owned components. NameDigitalOceanProviderPrefix = "sigs-k8s-io:capdo" // APIServerRoleTagValue describes the value for the apiserver role. APIServerRoleTagValue = "apiserver" // NodeRoleTagValue describes the value for the node role. NodeRoleTagValue = "node" )
const ( // ClusterFinalizer allows ReconcileDOCluster to clean up DigitalOcean resources associated with DOCluster before // removing it from the apiserver. ClusterFinalizer = "docluster.infrastructure.cluster.x-k8s.io" )
const ( // MachineFinalizer allows ReconcileDOMachine to clean up DigitalOcean resources associated with DOMachine before // removing it from the apiserver. MachineFinalizer = "domachine.infrastructure.cluster.x-k8s.io" )
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta1"} // 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 )
var ( // DOResourceStatusNew is the string representing a DigitalOcean resource just created and in a provisioning state. DOResourceStatusNew = DOResourceStatus("new") // DOResourceStatusRunning is the string representing a DigitalOcean resource already provisioned and in a active state. DOResourceStatusRunning = DOResourceStatus("active") // DOResourceStatusErrored is the string representing a DigitalOcean resource in a errored state. DOResourceStatusErrored = DOResourceStatus("errored") // DOResourceStatusOff is the string representing a DigitalOcean resource in off state. DOResourceStatusOff = DOResourceStatus("off") // DOResourceStatusArchive is the string representing a DigitalOcean resource in archive state. DOResourceStatusArchive = DOResourceStatus("archive") )
var ( // DefaultLBPort default LoadBalancer port. DefaultLBPort = 6443 // DefaultLBAlgorithm default LoadBalancer algorithm. DefaultLBAlgorithm = "round_robin" // DefaultLBHealthCheckInterval default LoadBalancer health check interval. DefaultLBHealthCheckInterval = 10 // DefaultLBHealthCheckTimeout default LoadBalancer health check timeout. DefaultLBHealthCheckTimeout = 5 // DefaultLBHealthCheckUnhealthyThreshold default LoadBalancer unhealthy threshold. DefaultLBHealthCheckUnhealthyThreshold = 3 // DefaultLBHealthCheckHealthyThreshold default LoadBalancer healthy threshold. DefaultLBHealthCheckHealthyThreshold = 5 )
Functions ¶
func ClusterNameRoleTag ¶
ClusterNameRoleTag generates the tag with prefix `NameDigitalOceanProviderPrefix` and `RoleValue` as suffix It will generated tag like `sigs-k8s-io:capdo:{clusterName}:{role}`.
func ClusterNameTag ¶
ClusterNameTag generates the tag with prefix `NameDigitalOceanProviderPrefix` for resources associated with a cluster. It will generated tag like `sigs-k8s-io:capdo:{clusterName}`.
func ClusterNameUIDRoleTag ¶
ClusterNameUIDRoleTag generates the tag with prefix `NameDigitalOceanProviderPrefix` and `RoleValue` as suffix It will generated tag like `sigs-k8s-io:capdo:{clusterName}:{UID}:{role}`.
func DOSafeName ¶
DOSafeName returns DigitalOcean safe name with replacing '.' and '/' to '-' since DigitalOcean doesn't support naming with those character.
func DataDiskName ¶
DataDiskName is the volume name used for a data disk of a droplet. It's in the form of <dropletName>-<dataDiskNameSuffix>.
func NameTagFromName ¶
NameTagFromName returns DigitalOcean safe name tag from name.
Types ¶
type BuildTagParams ¶
type BuildTagParams struct { // ClusterName is the cluster associated with the resource. ClusterName string // ClusterUID is the cluster uid from clusters.cluster.x-k8s.io uid ClusterUID string // Name is the name of the resource, it's applied as the tag "name" on DigitalOcean. Name string // Role is the role associated to the resource. Role string // Any additional tags to be added to the resource. // +optional Additional Tags }
BuildTagParams is used to build tags around an DigitalOcean resource.
func (*BuildTagParams) DeepCopy ¶
func (in *BuildTagParams) DeepCopy() *BuildTagParams
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildTagParams.
func (*BuildTagParams) DeepCopyInto ¶
func (in *BuildTagParams) DeepCopyInto(out *BuildTagParams)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOCluster ¶
type DOCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DOClusterSpec `json:"spec,omitempty"` Status DOClusterStatus `json:"status,omitempty"` }
DOCluster is the Schema for the DOClusters API.
func (*DOCluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOCluster.
func (*DOCluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DOCluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DOCluster) Default ¶
func (r *DOCluster) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type.
func (*DOCluster) SetupWebhookWithManager ¶
func (*DOCluster) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*DOCluster) ValidateDelete ¶
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
type DOClusterList ¶
type DOClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DOCluster `json:"items"` }
DOClusterList contains a list of DOCluster.
func (*DOClusterList) DeepCopy ¶
func (in *DOClusterList) DeepCopy() *DOClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOClusterList.
func (*DOClusterList) DeepCopyInto ¶
func (in *DOClusterList) DeepCopyInto(out *DOClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DOClusterList) DeepCopyObject ¶
func (in *DOClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DOClusterList) Hub ¶
func (*DOClusterList) Hub()
Hub marks DOClusterList as a conversion hub.
type DOClusterSpec ¶
type DOClusterSpec struct { // The DigitalOcean Region the cluster lives in. It must be one of available // region on DigitalOcean. See // https://developers.digitalocean.com/documentation/v2/#list-all-regions Region string `json:"region"` // Network configurations // +optional Network DONetwork `json:"network,omitempty"` // ControlPlaneEndpoint represents the endpoint used to communicate with the // control plane. If ControlPlaneDNS is unset, the DO load-balancer IP // of the Kubernetes API Server is used. // +optional ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"` // ControlPlaneDNS is a managed DNS name that points to the load-balancer // IP used for the ControlPlaneEndpoint. // +optional ControlPlaneDNS *DOControlPlaneDNS `json:"controlPlaneDNS,omitempty"` }
DOClusterSpec defines the desired state of DOCluster.
func (*DOClusterSpec) DeepCopy ¶
func (in *DOClusterSpec) DeepCopy() *DOClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOClusterSpec.
func (*DOClusterSpec) DeepCopyInto ¶
func (in *DOClusterSpec) DeepCopyInto(out *DOClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOClusterStatus ¶
type DOClusterStatus struct { // Ready denotes that the cluster (infrastructure) is ready. // +optional Ready bool `json:"ready"` // ControlPlaneDNSRecordReady denotes that the DNS record is ready and // propagated to the DO DNS servers. // +optional ControlPlaneDNSRecordReady bool `json:"controlPlaneDNSRecordReady,omitempty"` // Network encapsulates all things related to DigitalOcean network. // +optional Network DONetworkResource `json:"network,omitempty"` }
DOClusterStatus defines the observed state of DOCluster.
func (*DOClusterStatus) DeepCopy ¶
func (in *DOClusterStatus) DeepCopy() *DOClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOClusterStatus.
func (*DOClusterStatus) DeepCopyInto ¶
func (in *DOClusterStatus) DeepCopyInto(out *DOClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOClusterTemplate ¶
type DOClusterTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DOClusterTemplateSpec `json:"spec,omitempty"` }
DOClusterTemplate is the Schema for the DOclustertemplates API.
func (*DOClusterTemplate) DeepCopy ¶
func (in *DOClusterTemplate) DeepCopy() *DOClusterTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOClusterTemplate.
func (*DOClusterTemplate) DeepCopyInto ¶
func (in *DOClusterTemplate) DeepCopyInto(out *DOClusterTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DOClusterTemplate) DeepCopyObject ¶
func (in *DOClusterTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DOClusterTemplate) Default ¶
func (r *DOClusterTemplate) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type.
func (*DOClusterTemplate) SetupWebhookWithManager ¶
func (r *DOClusterTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*DOClusterTemplate) ValidateCreate ¶
func (r *DOClusterTemplate) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*DOClusterTemplate) ValidateDelete ¶
func (r *DOClusterTemplate) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*DOClusterTemplate) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type DOClusterTemplateList ¶
type DOClusterTemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DOClusterTemplate `json:"items"` }
DOClusterTemplateList contains a list of DOClusterTemplate.
func (*DOClusterTemplateList) DeepCopy ¶
func (in *DOClusterTemplateList) DeepCopy() *DOClusterTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOClusterTemplateList.
func (*DOClusterTemplateList) DeepCopyInto ¶
func (in *DOClusterTemplateList) DeepCopyInto(out *DOClusterTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DOClusterTemplateList) DeepCopyObject ¶
func (in *DOClusterTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DOClusterTemplateResource ¶
type DOClusterTemplateResource struct {
Spec DOClusterSpec `json:"spec"`
}
DOClusterTemplateResource contains spec for DOClusterSpec.
func (*DOClusterTemplateResource) DeepCopy ¶
func (in *DOClusterTemplateResource) DeepCopy() *DOClusterTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOClusterTemplateResource.
func (*DOClusterTemplateResource) DeepCopyInto ¶
func (in *DOClusterTemplateResource) DeepCopyInto(out *DOClusterTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOClusterTemplateSpec ¶
type DOClusterTemplateSpec struct {
Template DOClusterTemplateResource `json:"template"`
}
DOClusterTemplateSpec defines the desired state of DOClusterTemplate.
func (*DOClusterTemplateSpec) DeepCopy ¶
func (in *DOClusterTemplateSpec) DeepCopy() *DOClusterTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOClusterTemplateSpec.
func (*DOClusterTemplateSpec) DeepCopyInto ¶
func (in *DOClusterTemplateSpec) DeepCopyInto(out *DOClusterTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOControlPlaneDNS ¶
type DOControlPlaneDNS struct { // Domain is the DO domain that this record should live in. It must be pre-existing in your DO account. // The format must be a string that conforms to the definition of a subdomain in DNS (RFC 1123) // +kubebuilder:validation:Pattern:=^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ Domain string `json:"domain"` // Name is the DNS short name of the record (non-FQDN) // The format must consist of alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character // +kubebuilder:validation:Pattern:=^[a-z0-9]([-a-z0-9.]*[a-z0-9])?$ Name string `json:"name"` }
DOControlPlaneDNS ...
func (*DOControlPlaneDNS) DeepCopy ¶
func (in *DOControlPlaneDNS) DeepCopy() *DOControlPlaneDNS
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOControlPlaneDNS.
func (*DOControlPlaneDNS) DeepCopyInto ¶
func (in *DOControlPlaneDNS) DeepCopyInto(out *DOControlPlaneDNS)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOLoadBalancer ¶
type DOLoadBalancer struct { // 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"` // The API Server load balancing algorithm used to determine which backend Droplet will be selected by a client. // It must be either "round_robin" or "least_connections". The default value is "round_robin". // +optional // +kubebuilder:validation:Enum=round_robin;least_connections Algorithm string `json:"algorithm,omitempty"` // An object specifying health check settings for the Load Balancer. If omitted, default values will be provided. // +optional HealthCheck DOLoadBalancerHealthCheck `json:"healthCheck,omitempty"` // The DO load balancer UUID. If omitted, a new load balancer will be created. // +optional ResourceID string `json:"resourceId,omitempty"` }
DOLoadBalancer define the DigitalOcean loadbalancers configurations.
func (*DOLoadBalancer) ApplyDefault ¶
func (in *DOLoadBalancer) ApplyDefault()
ApplyDefault give APIServerLoadbalancers default values.
func (*DOLoadBalancer) DeepCopy ¶
func (in *DOLoadBalancer) DeepCopy() *DOLoadBalancer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOLoadBalancer.
func (*DOLoadBalancer) DeepCopyInto ¶
func (in *DOLoadBalancer) DeepCopyInto(out *DOLoadBalancer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *DOLoadBalancerHealthCheck) DeepCopy() *DOLoadBalancerHealthCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOLoadBalancerHealthCheck.
func (*DOLoadBalancerHealthCheck) DeepCopyInto ¶
func (in *DOLoadBalancerHealthCheck) DeepCopyInto(out *DOLoadBalancerHealthCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOMachine ¶
type DOMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DOMachineSpec `json:"spec,omitempty"` Status DOMachineStatus `json:"status,omitempty"` }
DOMachine is the Schema for the domachines API.
func (*DOMachine) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOMachine.
func (*DOMachine) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DOMachine) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DOMachine) Default ¶
func (r *DOMachine) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type.
func (*DOMachine) SetupWebhookWithManager ¶
func (*DOMachine) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*DOMachine) ValidateDelete ¶
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
type DOMachineList ¶
type DOMachineList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DOMachine `json:"items"` }
DOMachineList contains a list of DOMachine.
func (*DOMachineList) DeepCopy ¶
func (in *DOMachineList) DeepCopy() *DOMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOMachineList.
func (*DOMachineList) DeepCopyInto ¶
func (in *DOMachineList) DeepCopyInto(out *DOMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DOMachineList) DeepCopyObject ¶
func (in *DOMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DOMachineList) Hub ¶
func (*DOMachineList) Hub()
Hub marks DOMachineList as a conversion hub.
type DOMachineSpec ¶
type DOMachineSpec struct { // ProviderID is the unique identifier as specified by the cloud provider. // +optional ProviderID *string `json:"providerID,omitempty"` // Droplet size. It must be known DigitalOcean droplet size. See https://developers.digitalocean.com/documentation/v2/#list-all-sizes Size string `json:"size"` // Droplet image can be image id or slug. See https://developers.digitalocean.com/documentation/v2/#list-all-images Image intstr.IntOrString `json:"image"` // DataDisks specifies the parameters that are used to add one or more data disks to the machine DataDisks []DataDisk `json:"dataDisks,omitempty"` // SSHKeys is the ssh key id or fingerprint to attach in DigitalOcean droplet. // It must be available on DigitalOcean account. See https://developers.digitalocean.com/documentation/v2/#list-all-keys SSHKeys []intstr.IntOrString `json:"sshKeys"` // AdditionalTags is an optional set of tags to add to DigitalOcean resources managed by the DigitalOcean provider. // +optional AdditionalTags Tags `json:"additionalTags,omitempty"` }
DOMachineSpec defines the desired state of DOMachine.
func (*DOMachineSpec) DeepCopy ¶
func (in *DOMachineSpec) DeepCopy() *DOMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOMachineSpec.
func (*DOMachineSpec) DeepCopyInto ¶
func (in *DOMachineSpec) DeepCopyInto(out *DOMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOMachineStatus ¶
type DOMachineStatus struct { // Ready is true when the provider resource is ready. // +optional Ready bool `json:"ready"` // Addresses contains the DigitalOcean droplet associated addresses. Addresses []corev1.NodeAddress `json:"addresses,omitempty"` // Volumes contains the DigitalOcean droplet associated block storage // volumes. Volumes []DOVolume `json:"volumes,omitempty"` // InstanceStatus is the status of the DigitalOcean droplet instance for this machine. // +optional InstanceStatus *DOResourceStatus `json:"instanceStatus,omitempty"` // FailureReason will be set in the event that there is a terminal problem // reconciling the Machine and will contain a succinct value suitable // for machine interpretation. // // This field should not be set for transitive errors that a controller // faces that are expected to be fixed automatically over // time (like service outages), but instead indicate that something is // fundamentally wrong with the Machine's spec or the configuration of // the controller, and that manual intervention is required. Examples // of terminal errors would be invalid combinations of settings in the // spec, values that are unsupported by the controller, or the // responsible controller itself being critically misconfigured. // // Any transient errors that occur during the reconciliation of Machines // can be added as events to the Machine object and/or logged in the // controller's output. // +optional FailureReason *errors.MachineStatusError `json:"failureReason,omitempty"` // FailureMessage will be set in the event that there is a terminal problem // reconciling the Machine and will contain a more verbose string suitable // for logging and human consumption. // // This field should not be set for transitive errors that a controller // faces that are expected to be fixed automatically over // time (like service outages), but instead indicate that something is // fundamentally wrong with the Machine's spec or the configuration of // the controller, and that manual intervention is required. Examples // of terminal errors would be invalid combinations of settings in the // spec, values that are unsupported by the controller, or the // responsible controller itself being critically misconfigured. // // Any transient errors that occur during the reconciliation of Machines // can be added as events to the Machine object and/or logged in the // controller's output. // +optional FailureMessage *string `json:"failureMessage,omitempty"` }
DOMachineStatus defines the observed state of DOMachine.
func (*DOMachineStatus) DeepCopy ¶
func (in *DOMachineStatus) DeepCopy() *DOMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOMachineStatus.
func (*DOMachineStatus) DeepCopyInto ¶
func (in *DOMachineStatus) DeepCopyInto(out *DOMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOMachineTemplate ¶
type DOMachineTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DOMachineTemplateSpec `json:"spec,omitempty"` }
DOMachineTemplate is the Schema for the domachinetemplates API.
func (*DOMachineTemplate) DeepCopy ¶
func (in *DOMachineTemplate) DeepCopy() *DOMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOMachineTemplate.
func (*DOMachineTemplate) DeepCopyInto ¶
func (in *DOMachineTemplate) DeepCopyInto(out *DOMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DOMachineTemplate) DeepCopyObject ¶
func (in *DOMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DOMachineTemplate) Default ¶
func (r *DOMachineTemplate) Default()
Default implements webhookutil.defaulter so a webhook will be registered for the type.
func (*DOMachineTemplate) Hub ¶
func (*DOMachineTemplate) Hub()
Hub marks DOMachineTemplate as a conversion hub.
func (*DOMachineTemplate) SetupWebhookWithManager ¶
func (r *DOMachineTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*DOMachineTemplate) ValidateCreate ¶
func (r *DOMachineTemplate) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*DOMachineTemplate) ValidateDelete ¶
func (r *DOMachineTemplate) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*DOMachineTemplate) ValidateUpdate ¶
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type DOMachineTemplateList ¶
type DOMachineTemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DOMachineTemplate `json:"items"` }
DOMachineTemplateList contains a list of DOMachineTemplate.
func (*DOMachineTemplateList) DeepCopy ¶
func (in *DOMachineTemplateList) DeepCopy() *DOMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOMachineTemplateList.
func (*DOMachineTemplateList) DeepCopyInto ¶
func (in *DOMachineTemplateList) DeepCopyInto(out *DOMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DOMachineTemplateList) DeepCopyObject ¶
func (in *DOMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DOMachineTemplateList) Hub ¶
func (*DOMachineTemplateList) Hub()
Hub marks DOMachineTemplateList as a conversion hub.
type DOMachineTemplateResource ¶
type DOMachineTemplateResource struct { // Spec is the specification of the desired behavior of the machine. Spec DOMachineSpec `json:"spec"` }
DOMachineTemplateResource describes the data needed to create am DOMachine from a template.
func (*DOMachineTemplateResource) DeepCopy ¶
func (in *DOMachineTemplateResource) DeepCopy() *DOMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOMachineTemplateResource.
func (*DOMachineTemplateResource) DeepCopyInto ¶
func (in *DOMachineTemplateResource) DeepCopyInto(out *DOMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOMachineTemplateSpec ¶
type DOMachineTemplateSpec struct {
Template DOMachineTemplateResource `json:"template"`
}
DOMachineTemplateSpec defines the desired state of DOMachineTemplate.
func (*DOMachineTemplateSpec) DeepCopy ¶
func (in *DOMachineTemplateSpec) DeepCopy() *DOMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOMachineTemplateSpec.
func (*DOMachineTemplateSpec) DeepCopyInto ¶
func (in *DOMachineTemplateSpec) DeepCopyInto(out *DOMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DONetwork ¶
type DONetwork struct { // Configures an API Server loadbalancers // +optional APIServerLoadbalancers DOLoadBalancer `json:"apiServerLoadbalancers,omitempty"` // VPC defines the VPC configuration. // +optional VPC DOVPC `json:"vpc,omitempty"` }
DONetwork encapsulates DigitalOcean networking configuration.
func (*DONetwork) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DONetwork.
func (*DONetwork) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DONetworkResource ¶
type DONetworkResource struct { // APIServerLoadbalancersRef is the id of apiserver loadbalancers. // +optional APIServerLoadbalancersRef DOResourceReference `json:"apiServerLoadbalancersRef,omitempty"` }
DONetworkResource encapsulates DigitalOcean networking resources.
func (*DONetworkResource) DeepCopy ¶
func (in *DONetworkResource) DeepCopy() *DONetworkResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DONetworkResource.
func (*DONetworkResource) DeepCopyInto ¶
func (in *DONetworkResource) DeepCopyInto(out *DONetworkResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOResourceReference ¶
type DOResourceReference struct { // ID of DigitalOcean resource // +optional ResourceID string `json:"resourceId,omitempty"` // Status of DigitalOcean resource // +optional ResourceStatus DOResourceStatus `json:"resourceStatus,omitempty"` }
DOResourceReference is a reference to a DigitalOcean resource.
func (*DOResourceReference) DeepCopy ¶
func (in *DOResourceReference) DeepCopy() *DOResourceReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOResourceReference.
func (*DOResourceReference) DeepCopyInto ¶
func (in *DOResourceReference) DeepCopyInto(out *DOResourceReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOResourceStatus ¶
type DOResourceStatus string
DOResourceStatus describes the status of a DigitalOcean resource.
type DOVPC ¶
type DOVPC struct { // VPCUUID defines the VPC UUID to use. An empty value implies using the // default VPC. // +optional VPCUUID string `json:"vpc_uuid,omitempty"` }
DOVPC define the DigitalOcean VPC configuration.
func (*DOVPC) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOVPC.
func (*DOVPC) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DOVolume ¶ added in v1.2.0
type DOVolume struct {
ID string `json:"id"`
}
DOVolume defines a DO Block Storage Volume.
func (*DOVolume) DeepCopy ¶ added in v1.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DOVolume.
func (*DOVolume) DeepCopyInto ¶ added in v1.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataDisk ¶
type DataDisk struct { // NameSuffix is the suffix to be appended to the machine name to generate the disk name. // Each disk name will be in format <dropletName>-<nameSuffix>. NameSuffix string `json:"nameSuffix"` // DiskSizeGB is the size in GB to assign to the data disk. DiskSizeGB int64 `json:"diskSizeGB"` // FilesystemType to be used on the volume. When provided the volume will // be automatically formatted. FilesystemType string `json:"filesystemType,omitempty"` // FilesystemLabel is the label that is applied to the created filesystem. // Character limits apply: 16 for ext4; 12 for xfs. // May only be used in conjunction with filesystemType. FilesystemLabel string `json:"filesystemLabel,omitempty"` }
DataDisk specifies the parameters that are used to add a data disk to the machine.
func (*DataDisk) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDisk.
func (*DataDisk) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tags ¶
type Tags []string
Tags defines a slice of tags.
func BuildTags ¶
func BuildTags(params BuildTagParams) Tags
BuildTags builds tags including the cluster tag and returns them in map form.
func (Tags) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tags.
func (Tags) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- doc.go
- docluster_conversion.go
- docluster_types.go
- docluster_webhook.go
- doclustertemplate_types.go
- doclustertemplate_webhook.go
- domachine_conversion.go
- domachine_types.go
- domachine_webhook.go
- domachinetemplate_conversion.go
- domachinetemplate_types.go
- domachinetemplate_webhook.go
- groupversion_info.go
- tags.go
- types.go
- zz_generated.deepcopy.go