Documentation ¶
Overview ¶
+kubebuilder:object:generate=true +groupName=kubernetes.vkcs.upbound.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type Cluster
- func (in *Cluster) DeepCopy() *Cluster
- func (in *Cluster) DeepCopyInto(out *Cluster)
- func (in *Cluster) DeepCopyObject() runtime.Object
- func (mg *Cluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (tr *Cluster) GetConnectionDetailsMapping() map[string]string
- func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy
- func (tr *Cluster) GetID() string
- func (tr *Cluster) GetInitParameters() (map[string]any, error)
- func (mg *Cluster) GetManagementPolicies() xpv1.ManagementPolicies
- func (tr *Cluster) GetObservation() (map[string]any, error)
- func (tr *Cluster) GetParameters() (map[string]any, error)
- func (mg *Cluster) GetProviderConfigReference() *xpv1.Reference
- func (mg *Cluster) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *Cluster) GetTerraformResourceType() string
- func (tr *Cluster) GetTerraformSchemaVersion() int
- func (mg *Cluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (tr *Cluster) LateInitialize(attrs []byte) (bool, error)
- func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *Cluster) SetConditions(c ...xpv1.Condition)
- func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *Cluster) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (tr *Cluster) SetObservation(obs map[string]any) error
- func (tr *Cluster) SetParameters(params map[string]any) error
- func (mg *Cluster) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Cluster) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *Cluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type ClusterInitParameters
- type ClusterList
- type ClusterObservation
- type ClusterParameters
- type ClusterSpec
- type ClusterStatus
- type LabelsInitParameters
- type LabelsObservation
- type LabelsParameters
- type NodeGroup
- func (in *NodeGroup) DeepCopy() *NodeGroup
- func (in *NodeGroup) DeepCopyInto(out *NodeGroup)
- func (in *NodeGroup) DeepCopyObject() runtime.Object
- func (mg *NodeGroup) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (tr *NodeGroup) GetConnectionDetailsMapping() map[string]string
- func (mg *NodeGroup) GetDeletionPolicy() xpv1.DeletionPolicy
- func (tr *NodeGroup) GetID() string
- func (tr *NodeGroup) GetInitParameters() (map[string]any, error)
- func (mg *NodeGroup) GetManagementPolicies() xpv1.ManagementPolicies
- func (tr *NodeGroup) GetObservation() (map[string]any, error)
- func (tr *NodeGroup) GetParameters() (map[string]any, error)
- func (mg *NodeGroup) GetProviderConfigReference() *xpv1.Reference
- func (mg *NodeGroup) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *NodeGroup) GetTerraformResourceType() string
- func (tr *NodeGroup) GetTerraformSchemaVersion() int
- func (mg *NodeGroup) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (tr *NodeGroup) LateInitialize(attrs []byte) (bool, error)
- func (mg *NodeGroup) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *NodeGroup) SetConditions(c ...xpv1.Condition)
- func (mg *NodeGroup) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *NodeGroup) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (tr *NodeGroup) SetObservation(obs map[string]any) error
- func (tr *NodeGroup) SetParameters(params map[string]any) error
- func (mg *NodeGroup) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *NodeGroup) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *NodeGroup) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type NodeGroupInitParameters
- type NodeGroupList
- type NodeGroupObservation
- type NodeGroupParameters
- type NodeGroupSpec
- type NodeGroupStatus
- type TaintsInitParameters
- type TaintsObservation
- type TaintsParameters
Constants ¶
const ( CRDGroup = "kubernetes.vkcs.upbound.io" CRDVersion = "v1alpha1" )
Package type metadata.
Variables ¶
var ( Cluster_Kind = "Cluster" Cluster_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: Cluster_Kind}.String() Cluster_KindAPIVersion = Cluster_Kind + "." + CRDGroupVersion.String() Cluster_GroupVersionKind = CRDGroupVersion.WithKind(Cluster_Kind) )
Repository type metadata.
var ( // CRDGroupVersion is the API Group Version used to register the objects CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var ( NodeGroup_Kind = "NodeGroup" NodeGroup_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: NodeGroup_Kind}.String() NodeGroup_KindAPIVersion = NodeGroup_Kind + "." + CRDGroupVersion.String() NodeGroup_GroupVersionKind = CRDGroupVersion.WithKind(NodeGroup_Kind) )
Repository type metadata.
Functions ¶
This section is empty.
Types ¶
type Cluster ¶
type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.availabilityZone) || (has(self.initProvider) && has(self.initProvider.availabilityZone))",message="spec.forProvider.availabilityZone is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clusterTemplateId) || (has(self.initProvider) && has(self.initProvider.clusterTemplateId))",message="spec.forProvider.clusterTemplateId is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.floatingIpEnabled) || (has(self.initProvider) && has(self.initProvider.floatingIpEnabled))",message="spec.forProvider.floatingIpEnabled is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter" Spec ClusterSpec `json:"spec"` Status ClusterStatus `json:"status,omitempty"` }
Cluster is the Schema for the Clusters API. Manages a kubernetes cluster. +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:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,vkcs}
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cluster) GetCondition ¶
func (mg *Cluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this Cluster.
func (*Cluster) GetConnectionDetailsMapping ¶
GetConnectionDetailsMapping for this Cluster
func (*Cluster) GetDeletionPolicy ¶
func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Cluster.
func (*Cluster) GetInitParameters ¶
GetInitParameters of this Cluster
func (*Cluster) GetManagementPolicies ¶
func (mg *Cluster) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this Cluster.
func (*Cluster) GetObservation ¶
GetObservation of this Cluster
func (*Cluster) GetParameters ¶
GetParameters of this Cluster
func (*Cluster) GetProviderConfigReference ¶
GetProviderConfigReference of this Cluster.
func (*Cluster) GetPublishConnectionDetailsTo ¶
func (mg *Cluster) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this Cluster.
func (*Cluster) GetTerraformResourceType ¶
GetTerraformResourceType returns Terraform resource type for this Cluster
func (*Cluster) GetTerraformSchemaVersion ¶
GetTerraformSchemaVersion returns the associated Terraform schema version
func (*Cluster) GetWriteConnectionSecretToReference ¶
func (mg *Cluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Cluster.
func (*Cluster) LateInitialize ¶
LateInitialize this Cluster using its observed tfState. returns True if there are any spec changes for the resource.
func (*Cluster) ResolveReferences ¶
ResolveReferences of this Cluster.
func (*Cluster) SetConditions ¶
SetConditions of this Cluster.
func (*Cluster) SetDeletionPolicy ¶
func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Cluster.
func (*Cluster) SetManagementPolicies ¶
func (mg *Cluster) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this Cluster.
func (*Cluster) SetObservation ¶
SetObservation for this Cluster
func (*Cluster) SetParameters ¶
SetParameters for this Cluster
func (*Cluster) SetProviderConfigReference ¶
SetProviderConfigReference of this Cluster.
func (*Cluster) SetPublishConnectionDetailsTo ¶
func (mg *Cluster) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this Cluster.
func (*Cluster) SetWriteConnectionSecretToReference ¶
func (mg *Cluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this Cluster.
type ClusterInitParameters ¶
type ClusterInitParameters struct { // optional string → API LoadBalancer fip. IP address field. // API LoadBalancer fip. IP address field. APILBFip *string `json:"apiLbFip,omitempty" tf:"api_lb_fip,omitempty"` // optional string → API LoadBalancer vip. IP address field. // API LoadBalancer vip. IP address field. APILBVip *string `json:"apiLbVip,omitempty" tf:"api_lb_vip,omitempty"` // required string → Availability zone of the cluster. // Availability zone of the cluster. AvailabilityZone *string `json:"availabilityZone,omitempty" tf:"availability_zone,omitempty"` // required string → The UUID of the Kubernetes cluster template. It can be obtained using the cluster_template data source. // The UUID of the Kubernetes cluster template. It can be obtained using the cluster_template data source. ClusterTemplateID *string `json:"clusterTemplateId,omitempty" tf:"cluster_template_id,omitempty"` // optional string → Custom DNS cluster domain. Changing this creates a new cluster. // Custom DNS cluster domain. Changing this creates a new cluster. DNSDomain *string `json:"dnsDomain,omitempty" tf:"dns_domain,omitempty"` // required boolean → Floating ip is enabled. // Floating ip is enabled. FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"` // optional string → Floating IP created for ingress service. // Floating IP created for ingress service. IngressFloatingIP *string `json:"ingressFloatingIp,omitempty" tf:"ingress_floating_ip,omitempty"` // optional string → Addresses of registries from which you can download images without checking certificates. Changing this creates a new cluster. // Addresses of registries from which you can download images without checking certificates. Changing this creates a new cluster. InsecureRegistries []*string `json:"insecureRegistries,omitempty" tf:"insecure_registries,omitempty"` // optional string → The name of the Compute service SSH keypair. Changing this creates a new cluster. // The name of the Compute service SSH keypair. Changing this creates a new cluster. Keypair *string `json:"keypair,omitempty" tf:"keypair,omitempty"` // optional map of string → The list of optional key value pairs representing additional properties of the cluster. Note: Updating this attribute will not immediately apply the changes; these options will be used when recreating or deleting cluster nodes, for example, during an upgrade operation. // The list of optional key value pairs representing additional properties of the cluster. _note_ Updating this attribute will not immediately apply the changes; these options will be used when recreating or deleting cluster nodes, for example, during an upgrade operation. // // * `calico_ipv4pool` to set subnet where pods will be created. Default 10.100.0.0/16. _note_ Updating this value while the cluster is running is dangerous because it can lead to loss of connectivity of the cluster nodes. // * `clean_volumes` to remove pvc volumes when deleting a cluster. Default False. _note_ Changes to this value will be applied immediately. // * `cloud_monitoring` to enable cloud monitoring feature. Default False. // * `etcd_volume_size` to set etcd volume size in GB. Default 10. // * `kube_log_level` to set log level for kubelet in range 0 to 8. Default 0. // * `master_volume_size` to set master vm volume size in GB. Default 50. // * `cluster_node_volume_type` to set master vm volume type. Default ceph-hdd. Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` // optional number → The number of master nodes for the cluster. Changing this creates a new cluster. // The number of master nodes for the cluster. Changing this creates a new cluster. MasterCount *float64 `json:"masterCount,omitempty" tf:"master_count,omitempty"` // optional string → The UUID of a flavor for the master nodes. If master_flavor is not present, value from cluster_template will be used. // The UUID of a flavor for the master nodes. If master_flavor is not present, value from cluster_template will be used. MasterFlavor *string `json:"masterFlavor,omitempty" tf:"master_flavor,omitempty"` // zA-Z][a-zA-Z0-9_.-]*$. // The name of the cluster. Changing this creates a new cluster. Should match the pattern `^[a-zA-Z][a-zA-Z0-9_.-]*$`. Name *string `json:"name,omitempty" tf:"name,omitempty"` // optional string → Network cidr of k8s virtual network // Network cidr of k8s virtual network PodsNetworkCidr *string `json:"podsNetworkCidr,omitempty" tf:"pods_network_cidr,omitempty"` // optional string → Region to use for the cluster. Default is a region configured for provider. // Region to use for the cluster. Default is a region configured for provider. Region *string `json:"region,omitempty" tf:"region,omitempty"` // optional string → Docker registry access password. // Docker registry access password. RegistryAuthPassword *string `json:"registryAuthPassword,omitempty" tf:"registry_auth_password,omitempty"` // optional string → Current state of a cluster. Changing this to RUNNING or SHUTOFF will turn cluster on/off. // Current state of a cluster. Changing this to `RUNNING` or `SHUTOFF` will turn cluster on/off. Status *string `json:"status,omitempty" tf:"status,omitempty"` // optional boolean → Enables syncing of security policies of cluster. Default value is false.New since v0.7.0. // Enables syncing of security policies of cluster. Default value is false._new_since_v0.7.0_. SyncSecurityPolicy *bool `json:"syncSecurityPolicy,omitempty" tf:"sync_security_policy,omitempty"` }
func (*ClusterInitParameters) DeepCopy ¶
func (in *ClusterInitParameters) DeepCopy() *ClusterInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInitParameters.
func (*ClusterInitParameters) DeepCopyInto ¶
func (in *ClusterInitParameters) DeepCopyInto(out *ClusterInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterList ¶
type ClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Cluster `json:"items"` }
ClusterList contains a list of Clusters
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterList) GetItems ¶
func (l *ClusterList) GetItems() []resource.Managed
GetItems of this ClusterList.
type ClusterObservation ¶
type ClusterObservation struct { // string → COE API address. // COE API address. APIAddress *string `json:"apiAddress,omitempty" tf:"api_address,omitempty"` // optional string → API LoadBalancer fip. IP address field. // API LoadBalancer fip. IP address field. APILBFip *string `json:"apiLbFip,omitempty" tf:"api_lb_fip,omitempty"` // optional string → API LoadBalancer vip. IP address field. // API LoadBalancer vip. IP address field. APILBVip *string `json:"apiLbVip,omitempty" tf:"api_lb_vip,omitempty"` // only map of all cluster labels.New since v0.5.1. // The read-only map of all cluster labels._new_since_v0.5.1_. AllLabels map[string]*string `json:"allLabels,omitempty" tf:"all_labels,omitempty"` // required string → Availability zone of the cluster. // Availability zone of the cluster. AvailabilityZone *string `json:"availabilityZone,omitempty" tf:"availability_zone,omitempty"` // required string → The UUID of the Kubernetes cluster template. It can be obtained using the cluster_template data source. // The UUID of the Kubernetes cluster template. It can be obtained using the cluster_template data source. ClusterTemplateID *string `json:"clusterTemplateId,omitempty" tf:"cluster_template_id,omitempty"` // string → The time at which cluster was created. // The time at which cluster was created. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` // optional string → Custom DNS cluster domain. Changing this creates a new cluster. // Custom DNS cluster domain. Changing this creates a new cluster. DNSDomain *string `json:"dnsDomain,omitempty" tf:"dns_domain,omitempty"` // required boolean → Floating ip is enabled. // Floating ip is enabled. FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"` // string → ID of the resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` // optional string → Floating IP created for ingress service. // Floating IP created for ingress service. IngressFloatingIP *string `json:"ingressFloatingIp,omitempty" tf:"ingress_floating_ip,omitempty"` // optional string → Addresses of registries from which you can download images without checking certificates. Changing this creates a new cluster. // Addresses of registries from which you can download images without checking certificates. Changing this creates a new cluster. InsecureRegistries []*string `json:"insecureRegistries,omitempty" tf:"insecure_registries,omitempty"` // optional string → The name of the Compute service SSH keypair. Changing this creates a new cluster. // The name of the Compute service SSH keypair. Changing this creates a new cluster. Keypair *string `json:"keypair,omitempty" tf:"keypair,omitempty"` // optional map of string → The list of optional key value pairs representing additional properties of the cluster. Note: Updating this attribute will not immediately apply the changes; these options will be used when recreating or deleting cluster nodes, for example, during an upgrade operation. // The list of optional key value pairs representing additional properties of the cluster. _note_ Updating this attribute will not immediately apply the changes; these options will be used when recreating or deleting cluster nodes, for example, during an upgrade operation. // // * `calico_ipv4pool` to set subnet where pods will be created. Default 10.100.0.0/16. _note_ Updating this value while the cluster is running is dangerous because it can lead to loss of connectivity of the cluster nodes. // * `clean_volumes` to remove pvc volumes when deleting a cluster. Default False. _note_ Changes to this value will be applied immediately. // * `cloud_monitoring` to enable cloud monitoring feature. Default False. // * `etcd_volume_size` to set etcd volume size in GB. Default 10. // * `kube_log_level` to set log level for kubelet in range 0 to 8. Default 0. // * `master_volume_size` to set master vm volume size in GB. Default 50. // * `cluster_node_volume_type` to set master vm volume type. Default ceph-hdd. Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` // optional string → The UUID of the load balancer's subnet. Changing this creates new cluster. // The UUID of the load balancer's subnet. Changing this creates new cluster. LoadbalancerSubnetID *string `json:"loadbalancerSubnetId,omitempty" tf:"loadbalancer_subnet_id,omitempty"` // string → IP addresses of the master node of the cluster. // IP addresses of the master node of the cluster. MasterAddresses []*string `json:"masterAddresses,omitempty" tf:"master_addresses,omitempty"` // optional number → The number of master nodes for the cluster. Changing this creates a new cluster. // The number of master nodes for the cluster. Changing this creates a new cluster. MasterCount *float64 `json:"masterCount,omitempty" tf:"master_count,omitempty"` // optional string → The UUID of a flavor for the master nodes. If master_flavor is not present, value from cluster_template will be used. // The UUID of a flavor for the master nodes. If master_flavor is not present, value from cluster_template will be used. MasterFlavor *string `json:"masterFlavor,omitempty" tf:"master_flavor,omitempty"` // zA-Z][a-zA-Z0-9_.-]*$. // The name of the cluster. Changing this creates a new cluster. Should match the pattern `^[a-zA-Z][a-zA-Z0-9_.-]*$`. Name *string `json:"name,omitempty" tf:"name,omitempty"` // required string → UUID of the cluster's network. // UUID of the cluster's network. NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` // optional string → Network cidr of k8s virtual network // Network cidr of k8s virtual network PodsNetworkCidr *string `json:"podsNetworkCidr,omitempty" tf:"pods_network_cidr,omitempty"` // string → The project of the cluster. // The project of the cluster. ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"` // optional string → Region to use for the cluster. Default is a region configured for provider. // Region to use for the cluster. Default is a region configured for provider. Region *string `json:"region,omitempty" tf:"region,omitempty"` // optional string → Docker registry access password. // Docker registry access password. RegistryAuthPassword *string `json:"registryAuthPassword,omitempty" tf:"registry_auth_password,omitempty"` // string → UUID of the Orchestration service stack. // UUID of the Orchestration service stack. StackID *string `json:"stackId,omitempty" tf:"stack_id,omitempty"` // optional string → Current state of a cluster. Changing this to RUNNING or SHUTOFF will turn cluster on/off. // Current state of a cluster. Changing this to `RUNNING` or `SHUTOFF` will turn cluster on/off. Status *string `json:"status,omitempty" tf:"status,omitempty"` // required string → UUID of the cluster's subnet. // UUID of the cluster's subnet. SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` // optional boolean → Enables syncing of security policies of cluster. Default value is false.New since v0.7.0. // Enables syncing of security policies of cluster. Default value is false._new_since_v0.7.0_. SyncSecurityPolicy *bool `json:"syncSecurityPolicy,omitempty" tf:"sync_security_policy,omitempty"` // string → The time at which cluster was created. // The time at which cluster was created. UpdatedAt *string `json:"updatedAt,omitempty" tf:"updated_at,omitempty"` // string → The user of the cluster. // The user of the cluster. UserID *string `json:"userId,omitempty" tf:"user_id,omitempty"` }
func (*ClusterObservation) DeepCopy ¶
func (in *ClusterObservation) DeepCopy() *ClusterObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterObservation.
func (*ClusterObservation) DeepCopyInto ¶
func (in *ClusterObservation) DeepCopyInto(out *ClusterObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterParameters ¶
type ClusterParameters struct { // optional string → API LoadBalancer fip. IP address field. // API LoadBalancer fip. IP address field. // +kubebuilder:validation:Optional APILBFip *string `json:"apiLbFip,omitempty" tf:"api_lb_fip,omitempty"` // optional string → API LoadBalancer vip. IP address field. // API LoadBalancer vip. IP address field. // +kubebuilder:validation:Optional APILBVip *string `json:"apiLbVip,omitempty" tf:"api_lb_vip,omitempty"` // required string → Availability zone of the cluster. // Availability zone of the cluster. // +kubebuilder:validation:Optional AvailabilityZone *string `json:"availabilityZone,omitempty" tf:"availability_zone,omitempty"` // required string → The UUID of the Kubernetes cluster template. It can be obtained using the cluster_template data source. // The UUID of the Kubernetes cluster template. It can be obtained using the cluster_template data source. // +kubebuilder:validation:Optional ClusterTemplateID *string `json:"clusterTemplateId,omitempty" tf:"cluster_template_id,omitempty"` // optional string → Custom DNS cluster domain. Changing this creates a new cluster. // Custom DNS cluster domain. Changing this creates a new cluster. // +kubebuilder:validation:Optional DNSDomain *string `json:"dnsDomain,omitempty" tf:"dns_domain,omitempty"` // required boolean → Floating ip is enabled. // Floating ip is enabled. // +kubebuilder:validation:Optional FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"` // optional string → Floating IP created for ingress service. // Floating IP created for ingress service. // +kubebuilder:validation:Optional IngressFloatingIP *string `json:"ingressFloatingIp,omitempty" tf:"ingress_floating_ip,omitempty"` // optional string → Addresses of registries from which you can download images without checking certificates. Changing this creates a new cluster. // Addresses of registries from which you can download images without checking certificates. Changing this creates a new cluster. // +kubebuilder:validation:Optional InsecureRegistries []*string `json:"insecureRegistries,omitempty" tf:"insecure_registries,omitempty"` // optional string → The name of the Compute service SSH keypair. Changing this creates a new cluster. // The name of the Compute service SSH keypair. Changing this creates a new cluster. // +kubebuilder:validation:Optional Keypair *string `json:"keypair,omitempty" tf:"keypair,omitempty"` // optional map of string → The list of optional key value pairs representing additional properties of the cluster. Note: Updating this attribute will not immediately apply the changes; these options will be used when recreating or deleting cluster nodes, for example, during an upgrade operation. // The list of optional key value pairs representing additional properties of the cluster. _note_ Updating this attribute will not immediately apply the changes; these options will be used when recreating or deleting cluster nodes, for example, during an upgrade operation. // // * `calico_ipv4pool` to set subnet where pods will be created. Default 10.100.0.0/16. _note_ Updating this value while the cluster is running is dangerous because it can lead to loss of connectivity of the cluster nodes. // * `clean_volumes` to remove pvc volumes when deleting a cluster. Default False. _note_ Changes to this value will be applied immediately. // * `cloud_monitoring` to enable cloud monitoring feature. Default False. // * `etcd_volume_size` to set etcd volume size in GB. Default 10. // * `kube_log_level` to set log level for kubelet in range 0 to 8. Default 0. // * `master_volume_size` to set master vm volume size in GB. Default 50. // * `cluster_node_volume_type` to set master vm volume type. Default ceph-hdd. // +kubebuilder:validation:Optional Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"` // optional string → The UUID of the load balancer's subnet. Changing this creates new cluster. // The UUID of the load balancer's subnet. Changing this creates new cluster. // +crossplane:generate:reference:type=github.com/viletay/provider-vkcs/apis/network/v1alpha1.Subnet // +kubebuilder:validation:Optional LoadbalancerSubnetID *string `json:"loadbalancerSubnetId,omitempty" tf:"loadbalancer_subnet_id,omitempty"` // Reference to a Subnet in network to populate loadbalancerSubnetId. // +kubebuilder:validation:Optional LoadbalancerSubnetIDRef *v1.Reference `json:"loadbalancerSubnetIdRef,omitempty" tf:"-"` // Selector for a Subnet in network to populate loadbalancerSubnetId. // +kubebuilder:validation:Optional LoadbalancerSubnetIDSelector *v1.Selector `json:"loadbalancerSubnetIdSelector,omitempty" tf:"-"` // optional number → The number of master nodes for the cluster. Changing this creates a new cluster. // The number of master nodes for the cluster. Changing this creates a new cluster. // +kubebuilder:validation:Optional MasterCount *float64 `json:"masterCount,omitempty" tf:"master_count,omitempty"` // optional string → The UUID of a flavor for the master nodes. If master_flavor is not present, value from cluster_template will be used. // The UUID of a flavor for the master nodes. If master_flavor is not present, value from cluster_template will be used. // +kubebuilder:validation:Optional MasterFlavor *string `json:"masterFlavor,omitempty" tf:"master_flavor,omitempty"` // zA-Z][a-zA-Z0-9_.-]*$. // The name of the cluster. Changing this creates a new cluster. Should match the pattern `^[a-zA-Z][a-zA-Z0-9_.-]*$`. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // required string → UUID of the cluster's network. // UUID of the cluster's network. // +crossplane:generate:reference:type=github.com/viletay/provider-vkcs/apis/network/v1alpha1.Network // +kubebuilder:validation:Optional NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"` // Reference to a Network in network to populate networkId. // +kubebuilder:validation:Optional NetworkIDRef *v1.Reference `json:"networkIdRef,omitempty" tf:"-"` // Selector for a Network in network to populate networkId. // +kubebuilder:validation:Optional NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"` // optional string → Network cidr of k8s virtual network // Network cidr of k8s virtual network // +kubebuilder:validation:Optional PodsNetworkCidr *string `json:"podsNetworkCidr,omitempty" tf:"pods_network_cidr,omitempty"` // optional string → Region to use for the cluster. Default is a region configured for provider. // Region to use for the cluster. Default is a region configured for provider. // +kubebuilder:validation:Optional Region *string `json:"region,omitempty" tf:"region,omitempty"` // optional string → Docker registry access password. // Docker registry access password. // +kubebuilder:validation:Optional RegistryAuthPassword *string `json:"registryAuthPassword,omitempty" tf:"registry_auth_password,omitempty"` // optional string → Current state of a cluster. Changing this to RUNNING or SHUTOFF will turn cluster on/off. // Current state of a cluster. Changing this to `RUNNING` or `SHUTOFF` will turn cluster on/off. // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` // required string → UUID of the cluster's subnet. // UUID of the cluster's subnet. // +crossplane:generate:reference:type=github.com/viletay/provider-vkcs/apis/network/v1alpha1.Subnet // +kubebuilder:validation:Optional SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"` // Reference to a Subnet in network to populate subnetId. // +kubebuilder:validation:Optional SubnetIDRef *v1.Reference `json:"subnetIdRef,omitempty" tf:"-"` // Selector for a Subnet in network to populate subnetId. // +kubebuilder:validation:Optional SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // optional boolean → Enables syncing of security policies of cluster. Default value is false.New since v0.7.0. // Enables syncing of security policies of cluster. Default value is false._new_since_v0.7.0_. // +kubebuilder:validation:Optional SyncSecurityPolicy *bool `json:"syncSecurityPolicy,omitempty" tf:"sync_security_policy,omitempty"` }
func (*ClusterParameters) DeepCopy ¶
func (in *ClusterParameters) DeepCopy() *ClusterParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterParameters.
func (*ClusterParameters) DeepCopyInto ¶
func (in *ClusterParameters) DeepCopyInto(out *ClusterParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSpec ¶
type ClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ClusterParameters `json:"forProvider"` // THIS IS A BETA FIELD. It will be honored // unless the Management Policies feature flag is disabled. // InitProvider holds the same fields as ForProvider, with the exception // of Identifier and other resource reference fields. The fields that are // in InitProvider are merged into ForProvider when the resource is created. // The same fields are also added to the terraform ignore_changes hook, to // avoid updating them after creation. This is useful for fields that are // required on creation, but we do not desire to update them after creation, // for example because of an external controller is managing them, like an // autoscaler. InitProvider ClusterInitParameters `json:"initProvider,omitempty"` }
ClusterSpec defines the desired state of Cluster
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶
type ClusterStatus struct { v1.ResourceStatus `json:",inline"` AtProvider ClusterObservation `json:"atProvider,omitempty"` }
ClusterStatus defines the observed state of Cluster.
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LabelsInitParameters ¶
type LabelsInitParameters struct { // required string Key *string `json:"key,omitempty" tf:"key,omitempty"` // optional string Value *string `json:"value,omitempty" tf:"value,omitempty"` }
func (*LabelsInitParameters) DeepCopy ¶
func (in *LabelsInitParameters) DeepCopy() *LabelsInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabelsInitParameters.
func (*LabelsInitParameters) DeepCopyInto ¶
func (in *LabelsInitParameters) DeepCopyInto(out *LabelsInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LabelsObservation ¶
type LabelsObservation struct { // required string Key *string `json:"key,omitempty" tf:"key,omitempty"` // optional string Value *string `json:"value,omitempty" tf:"value,omitempty"` }
func (*LabelsObservation) DeepCopy ¶
func (in *LabelsObservation) DeepCopy() *LabelsObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabelsObservation.
func (*LabelsObservation) DeepCopyInto ¶
func (in *LabelsObservation) DeepCopyInto(out *LabelsObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LabelsParameters ¶
type LabelsParameters struct { // required string // +kubebuilder:validation:Optional Key *string `json:"key" tf:"key,omitempty"` // optional string // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` }
func (*LabelsParameters) DeepCopy ¶
func (in *LabelsParameters) DeepCopy() *LabelsParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabelsParameters.
func (*LabelsParameters) DeepCopyInto ¶
func (in *LabelsParameters) DeepCopyInto(out *LabelsParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroup ¶
type NodeGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter" // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.nodeCount) || (has(self.initProvider) && has(self.initProvider.nodeCount))",message="spec.forProvider.nodeCount is a required parameter" Spec NodeGroupSpec `json:"spec"` Status NodeGroupStatus `json:"status,omitempty"` }
NodeGroup is the Schema for the NodeGroups API. Manages clusters node group. +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:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,vkcs}
func (*NodeGroup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroup.
func (*NodeGroup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeGroup) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NodeGroup) GetCondition ¶
func (mg *NodeGroup) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this NodeGroup.
func (*NodeGroup) GetConnectionDetailsMapping ¶
GetConnectionDetailsMapping for this NodeGroup
func (*NodeGroup) GetDeletionPolicy ¶
func (mg *NodeGroup) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this NodeGroup.
func (*NodeGroup) GetInitParameters ¶
GetInitParameters of this NodeGroup
func (*NodeGroup) GetManagementPolicies ¶
func (mg *NodeGroup) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this NodeGroup.
func (*NodeGroup) GetObservation ¶
GetObservation of this NodeGroup
func (*NodeGroup) GetParameters ¶
GetParameters of this NodeGroup
func (*NodeGroup) GetProviderConfigReference ¶
GetProviderConfigReference of this NodeGroup.
func (*NodeGroup) GetPublishConnectionDetailsTo ¶
func (mg *NodeGroup) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this NodeGroup.
func (*NodeGroup) GetTerraformResourceType ¶
GetTerraformResourceType returns Terraform resource type for this NodeGroup
func (*NodeGroup) GetTerraformSchemaVersion ¶
GetTerraformSchemaVersion returns the associated Terraform schema version
func (*NodeGroup) GetWriteConnectionSecretToReference ¶
func (mg *NodeGroup) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this NodeGroup.
func (*NodeGroup) LateInitialize ¶
LateInitialize this NodeGroup using its observed tfState. returns True if there are any spec changes for the resource.
func (*NodeGroup) ResolveReferences ¶
ResolveReferences of this NodeGroup.
func (*NodeGroup) SetConditions ¶
SetConditions of this NodeGroup.
func (*NodeGroup) SetDeletionPolicy ¶
func (mg *NodeGroup) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this NodeGroup.
func (*NodeGroup) SetManagementPolicies ¶
func (mg *NodeGroup) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this NodeGroup.
func (*NodeGroup) SetObservation ¶
SetObservation for this NodeGroup
func (*NodeGroup) SetParameters ¶
SetParameters for this NodeGroup
func (*NodeGroup) SetProviderConfigReference ¶
SetProviderConfigReference of this NodeGroup.
func (*NodeGroup) SetPublishConnectionDetailsTo ¶
func (mg *NodeGroup) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this NodeGroup.
func (*NodeGroup) SetWriteConnectionSecretToReference ¶
func (mg *NodeGroup) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this NodeGroup.
type NodeGroupInitParameters ¶
type NodeGroupInitParameters struct { // optional boolean → Determines whether the autoscaling is enabled. // Determines whether the autoscaling is enabled. AutoscalingEnabled *bool `json:"autoscalingEnabled,omitempty" tf:"autoscaling_enabled,omitempty"` // optional string → The list of availability zones of the node group. Zones MS1 and GZ1 are available. By default, node group is being created at cluster's zone. // Important: Receiving default AZ add it manually to your main.tf config to sync it with state to avoid node groups force recreation in the future. // The list of availability zones of the node group. Zones `MS1` and `GZ1` are available. By default, node group is being created at cluster's zone. // **Important:** Receiving default AZ add it manually to your main.tf config to sync it with state to avoid node groups force recreation in the future. AvailabilityZones []*string `json:"availabilityZones,omitempty" tf:"availability_zones,omitempty"` // place update and may not be provided in custom deployments. In this case, contact support for clarification. // The flavor UUID of this node group. _note_ Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification. FlavorID *string `json:"flavorId,omitempty" tf:"flavor_id,omitempty"` // optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value". // The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value". Labels []LabelsInitParameters `json:"labels,omitempty" tf:"labels,omitempty"` // The maximum number of nodes that can fail during an upgrade. The default value is 25 percent. MaxNodeUnavailable *float64 `json:"maxNodeUnavailable,omitempty" tf:"max_node_unavailable,omitempty"` // optional number → The maximum allowed nodes for this node group. // The maximum allowed nodes for this node group. MaxNodes *float64 `json:"maxNodes,omitempty" tf:"max_nodes,omitempty"` // optional number → The minimum allowed nodes for this node group. Default to 0 if not set. // The minimum allowed nodes for this node group. Default to 0 if not set. MinNodes *float64 `json:"minNodes,omitempty" tf:"min_nodes,omitempty"` // required string → The name of node group to create. Changing this will force to create a new node group. // The name of node group to create. Changing this will force to create a new node group. Name *string `json:"name,omitempty" tf:"name,omitempty"` // required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update. // The node count for this node group. Should be greater than 0. If `autoscaling_enabled` parameter is set, this attribute will be ignored during update. NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` // optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect. // The list of objects representing node group taints. Each object should have following attributes: key, value, effect. Taints []TaintsInitParameters `json:"taints,omitempty" tf:"taints,omitempty"` // optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group. // The size in GB for volume to load nodes from. Changing this will force to create a new node group. VolumeSize *float64 `json:"volumeSize,omitempty" tf:"volume_size,omitempty"` // optional string → The volume type to load nodes from. Changing this will force to create a new node group. // The volume type to load nodes from. Changing this will force to create a new node group. VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"` }
func (*NodeGroupInitParameters) DeepCopy ¶
func (in *NodeGroupInitParameters) DeepCopy() *NodeGroupInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupInitParameters.
func (*NodeGroupInitParameters) DeepCopyInto ¶
func (in *NodeGroupInitParameters) DeepCopyInto(out *NodeGroupInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupList ¶
type NodeGroupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []NodeGroup `json:"items"` }
NodeGroupList contains a list of NodeGroups
func (*NodeGroupList) DeepCopy ¶
func (in *NodeGroupList) DeepCopy() *NodeGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupList.
func (*NodeGroupList) DeepCopyInto ¶
func (in *NodeGroupList) DeepCopyInto(out *NodeGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeGroupList) DeepCopyObject ¶
func (in *NodeGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NodeGroupList) GetItems ¶
func (l *NodeGroupList) GetItems() []resource.Managed
GetItems of this NodeGroupList.
type NodeGroupObservation ¶
type NodeGroupObservation struct { // optional boolean → Determines whether the autoscaling is enabled. // Determines whether the autoscaling is enabled. AutoscalingEnabled *bool `json:"autoscalingEnabled,omitempty" tf:"autoscaling_enabled,omitempty"` // optional string → The list of availability zones of the node group. Zones MS1 and GZ1 are available. By default, node group is being created at cluster's zone. // Important: Receiving default AZ add it manually to your main.tf config to sync it with state to avoid node groups force recreation in the future. // The list of availability zones of the node group. Zones `MS1` and `GZ1` are available. By default, node group is being created at cluster's zone. // **Important:** Receiving default AZ add it manually to your main.tf config to sync it with state to avoid node groups force recreation in the future. AvailabilityZones []*string `json:"availabilityZones,omitempty" tf:"availability_zones,omitempty"` // required string → The UUID of the existing cluster. // The UUID of the existing cluster. ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` // string → The time at which node group was created. // The time at which node group was created. CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"` // place update and may not be provided in custom deployments. In this case, contact support for clarification. // The flavor UUID of this node group. _note_ Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification. FlavorID *string `json:"flavorId,omitempty" tf:"flavor_id,omitempty"` // string → ID of the resource. ID *string `json:"id,omitempty" tf:"id,omitempty"` // optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value". // The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value". Labels []LabelsObservation `json:"labels,omitempty" tf:"labels,omitempty"` // The maximum number of nodes that can fail during an upgrade. The default value is 25 percent. MaxNodeUnavailable *float64 `json:"maxNodeUnavailable,omitempty" tf:"max_node_unavailable,omitempty"` // optional number → The maximum allowed nodes for this node group. // The maximum allowed nodes for this node group. MaxNodes *float64 `json:"maxNodes,omitempty" tf:"max_nodes,omitempty"` // optional number → The minimum allowed nodes for this node group. Default to 0 if not set. // The minimum allowed nodes for this node group. Default to 0 if not set. MinNodes *float64 `json:"minNodes,omitempty" tf:"min_nodes,omitempty"` // required string → The name of node group to create. Changing this will force to create a new node group. // The name of node group to create. Changing this will force to create a new node group. Name *string `json:"name,omitempty" tf:"name,omitempty"` // required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update. // The node count for this node group. Should be greater than 0. If `autoscaling_enabled` parameter is set, this attribute will be ignored during update. NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` // string → Determines current state of node group (RUNNING, SHUTOFF, ERROR). // Determines current state of node group (RUNNING, SHUTOFF, ERROR). State *string `json:"state,omitempty" tf:"state,omitempty"` // optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect. // The list of objects representing node group taints. Each object should have following attributes: key, value, effect. Taints []TaintsObservation `json:"taints,omitempty" tf:"taints,omitempty"` // string → The UUID of the cluster's node group. // The UUID of the cluster's node group. UUID *string `json:"uuid,omitempty" tf:"uuid,omitempty"` // string → The time at which node group was created. // The time at which node group was created. UpdatedAt *string `json:"updatedAt,omitempty" tf:"updated_at,omitempty"` // optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group. // The size in GB for volume to load nodes from. Changing this will force to create a new node group. VolumeSize *float64 `json:"volumeSize,omitempty" tf:"volume_size,omitempty"` // optional string → The volume type to load nodes from. Changing this will force to create a new node group. // The volume type to load nodes from. Changing this will force to create a new node group. VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"` }
func (*NodeGroupObservation) DeepCopy ¶
func (in *NodeGroupObservation) DeepCopy() *NodeGroupObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupObservation.
func (*NodeGroupObservation) DeepCopyInto ¶
func (in *NodeGroupObservation) DeepCopyInto(out *NodeGroupObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupParameters ¶
type NodeGroupParameters struct { // optional boolean → Determines whether the autoscaling is enabled. // Determines whether the autoscaling is enabled. // +kubebuilder:validation:Optional AutoscalingEnabled *bool `json:"autoscalingEnabled,omitempty" tf:"autoscaling_enabled,omitempty"` // optional string → The list of availability zones of the node group. Zones MS1 and GZ1 are available. By default, node group is being created at cluster's zone. // Important: Receiving default AZ add it manually to your main.tf config to sync it with state to avoid node groups force recreation in the future. // The list of availability zones of the node group. Zones `MS1` and `GZ1` are available. By default, node group is being created at cluster's zone. // **Important:** Receiving default AZ add it manually to your main.tf config to sync it with state to avoid node groups force recreation in the future. // +kubebuilder:validation:Optional AvailabilityZones []*string `json:"availabilityZones,omitempty" tf:"availability_zones,omitempty"` // required string → The UUID of the existing cluster. // The UUID of the existing cluster. // +crossplane:generate:reference:type=Cluster // +kubebuilder:validation:Optional ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"` // Reference to a Cluster to populate clusterId. // +kubebuilder:validation:Optional ClusterIDRef *v1.Reference `json:"clusterIdRef,omitempty" tf:"-"` // Selector for a Cluster to populate clusterId. // +kubebuilder:validation:Optional ClusterIDSelector *v1.Selector `json:"clusterIdSelector,omitempty" tf:"-"` // place update and may not be provided in custom deployments. In this case, contact support for clarification. // The flavor UUID of this node group. _note_ Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification. // +kubebuilder:validation:Optional FlavorID *string `json:"flavorId,omitempty" tf:"flavor_id,omitempty"` // optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value". // The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value". // +kubebuilder:validation:Optional Labels []LabelsParameters `json:"labels,omitempty" tf:"labels,omitempty"` // The maximum number of nodes that can fail during an upgrade. The default value is 25 percent. // +kubebuilder:validation:Optional MaxNodeUnavailable *float64 `json:"maxNodeUnavailable,omitempty" tf:"max_node_unavailable,omitempty"` // optional number → The maximum allowed nodes for this node group. // The maximum allowed nodes for this node group. // +kubebuilder:validation:Optional MaxNodes *float64 `json:"maxNodes,omitempty" tf:"max_nodes,omitempty"` // optional number → The minimum allowed nodes for this node group. Default to 0 if not set. // The minimum allowed nodes for this node group. Default to 0 if not set. // +kubebuilder:validation:Optional MinNodes *float64 `json:"minNodes,omitempty" tf:"min_nodes,omitempty"` // required string → The name of node group to create. Changing this will force to create a new node group. // The name of node group to create. Changing this will force to create a new node group. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update. // The node count for this node group. Should be greater than 0. If `autoscaling_enabled` parameter is set, this attribute will be ignored during update. // +kubebuilder:validation:Optional NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` // optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect. // The list of objects representing node group taints. Each object should have following attributes: key, value, effect. // +kubebuilder:validation:Optional Taints []TaintsParameters `json:"taints,omitempty" tf:"taints,omitempty"` // optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group. // The size in GB for volume to load nodes from. Changing this will force to create a new node group. // +kubebuilder:validation:Optional VolumeSize *float64 `json:"volumeSize,omitempty" tf:"volume_size,omitempty"` // optional string → The volume type to load nodes from. Changing this will force to create a new node group. // The volume type to load nodes from. Changing this will force to create a new node group. // +kubebuilder:validation:Optional VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"` }
func (*NodeGroupParameters) DeepCopy ¶
func (in *NodeGroupParameters) DeepCopy() *NodeGroupParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupParameters.
func (*NodeGroupParameters) DeepCopyInto ¶
func (in *NodeGroupParameters) DeepCopyInto(out *NodeGroupParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupSpec ¶
type NodeGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NodeGroupParameters `json:"forProvider"` // THIS IS A BETA FIELD. It will be honored // unless the Management Policies feature flag is disabled. // InitProvider holds the same fields as ForProvider, with the exception // of Identifier and other resource reference fields. The fields that are // in InitProvider are merged into ForProvider when the resource is created. // The same fields are also added to the terraform ignore_changes hook, to // avoid updating them after creation. This is useful for fields that are // required on creation, but we do not desire to update them after creation, // for example because of an external controller is managing them, like an // autoscaler. InitProvider NodeGroupInitParameters `json:"initProvider,omitempty"` }
NodeGroupSpec defines the desired state of NodeGroup
func (*NodeGroupSpec) DeepCopy ¶
func (in *NodeGroupSpec) DeepCopy() *NodeGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupSpec.
func (*NodeGroupSpec) DeepCopyInto ¶
func (in *NodeGroupSpec) DeepCopyInto(out *NodeGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeGroupStatus ¶
type NodeGroupStatus struct { v1.ResourceStatus `json:",inline"` AtProvider NodeGroupObservation `json:"atProvider,omitempty"` }
NodeGroupStatus defines the observed state of NodeGroup.
func (*NodeGroupStatus) DeepCopy ¶
func (in *NodeGroupStatus) DeepCopy() *NodeGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupStatus.
func (*NodeGroupStatus) DeepCopyInto ¶
func (in *NodeGroupStatus) DeepCopyInto(out *NodeGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TaintsInitParameters ¶
type TaintsInitParameters struct { // required string Effect *string `json:"effect,omitempty" tf:"effect,omitempty"` // required string Key *string `json:"key,omitempty" tf:"key,omitempty"` // optional string Value *string `json:"value,omitempty" tf:"value,omitempty"` }
func (*TaintsInitParameters) DeepCopy ¶
func (in *TaintsInitParameters) DeepCopy() *TaintsInitParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaintsInitParameters.
func (*TaintsInitParameters) DeepCopyInto ¶
func (in *TaintsInitParameters) DeepCopyInto(out *TaintsInitParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TaintsObservation ¶
type TaintsObservation struct { // required string Effect *string `json:"effect,omitempty" tf:"effect,omitempty"` // required string Key *string `json:"key,omitempty" tf:"key,omitempty"` // optional string Value *string `json:"value,omitempty" tf:"value,omitempty"` }
func (*TaintsObservation) DeepCopy ¶
func (in *TaintsObservation) DeepCopy() *TaintsObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaintsObservation.
func (*TaintsObservation) DeepCopyInto ¶
func (in *TaintsObservation) DeepCopyInto(out *TaintsObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TaintsParameters ¶
type TaintsParameters struct { // required string // +kubebuilder:validation:Optional Effect *string `json:"effect" tf:"effect,omitempty"` // required string // +kubebuilder:validation:Optional Key *string `json:"key" tf:"key,omitempty"` // optional string // +kubebuilder:validation:Optional Value *string `json:"value" tf:"value,omitempty"` }
func (*TaintsParameters) DeepCopy ¶
func (in *TaintsParameters) DeepCopy() *TaintsParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaintsParameters.
func (*TaintsParameters) DeepCopyInto ¶
func (in *TaintsParameters) DeepCopyInto(out *TaintsParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.