v1beta2

package
v0.7.0 Latest Latest
Warning

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

Go to latest
Published: Dec 15, 2023 License: Apache-2.0 Imports: 17 Imported by: 5

Documentation

Overview

Package v1beta2 contains the v1beta2 API implementation.

Package v1beta2 contains API Schema definitions for the infrastructure v1beta2 API group. +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io

Index

Constants

View Source
const (
	// InstanceProvisionFailedReason used for failures during instance provisioning.
	InstanceProvisionFailedReason = "InstanceProvisionFailed"
	// WaitingForClusterInfrastructureReason used when machine is waiting for cluster infrastructure to be ready before proceeding.
	WaitingForClusterInfrastructureReason = "WaitingForClusterInfrastructure"
	// WaitingForBootstrapDataReason used when machine is waiting for bootstrap data to be ready before proceeding.
	WaitingForBootstrapDataReason = "WaitingForBootstrapData"
)
View Source
const (
	// InstanceStoppedReason instance is in a stopped state.
	InstanceStoppedReason = "InstanceStopped"

	// InstanceErroredReason instance is in a errored state.
	InstanceErroredReason = "InstanceErrored"

	// InstanceNotReadyReason used when the instance is in a not ready state.
	InstanceNotReadyReason = "InstanceNotReady"

	// InstanceStateUnknownReason used when the instance is in a unknown state.
	InstanceStateUnknownReason = "InstanceStateUnknown"
)
View Source
const (
	// ImageNotReadyReason used when the image is in a queued state.
	ImageNotReadyReason = "ImageNotReady"

	// ImageImportFailedReason used when the image import is failed.
	ImageImportFailedReason = "ImageImportFailed"
)
View Source
const (
	// ImageReadyCondition reports on current status of the image. Ready indicates the image is in a active state.
	ImageReadyCondition capiv1beta1.ConditionType = "ImageReady"

	// ImageImportedCondition reports on current status of the image import job. Ready indicates the import job is finished.
	ImageImportedCondition capiv1beta1.ConditionType = "ImageImported"
)
View Source
const (
	// ClusterFinalizer allows DockerClusterReconciler to clean up resources associated with DockerCluster before
	// removing it from the apiserver.
	ClusterFinalizer = "ibmvpccluster.infrastructure.cluster.x-k8s.io"
)
View Source
const (
	// IBMPowerVSClusterFinalizer allows IBMPowerVSClusterReconciler to clean up resources associated with IBMPowerVSCluster before
	// removing it from the apiserver.
	IBMPowerVSClusterFinalizer = "ibmpowervscluster.infrastructure.cluster.x-k8s.io"
)
View Source
const (
	// IBMPowerVSImageFinalizer allows IBMPowerVSImageReconciler to clean up resources associated with IBMPowerVSImage before
	// removing it from the apiserver.
	IBMPowerVSImageFinalizer = "ibmpowervsimage.infrastructure.cluster.x-k8s.io"
)
View Source
const (
	// InstanceReadyCondition reports on current status of the instance. Ready indicates the instance is in a Running state.
	InstanceReadyCondition capiv1beta1.ConditionType = "InstanceReady"
)
View Source
const (
	// LoadBalancerNotReadyReason used when cluster is waiting for load balancer to be ready before proceeding.
	LoadBalancerNotReadyReason = "LoadBalancerNotReady"
)
View Source
const (
	// LoadBalancerReadyCondition reports on current status of the load balancer. Ready indicates the load balancer is in a active state.
	LoadBalancerReadyCondition capiv1beta1.ConditionType = "LoadBalancerReady"
)
View Source
const (
	// MachineFinalizer allows IBMVPCMachineReconciler to clean up resources associated with IBMVPCMachine before
	// removing it from the apiserver.
	MachineFinalizer = "ibmvpcmachine.infrastructure.cluster.x-k8s.io"
)

NOTE: json tags are required. Any new fields you add must have json tags for the fields to be serialized.

View Source
const (
	// WaitingForIBMPowerVSImageReason used when machine is waiting for powervs image to be ready before proceeding.
	WaitingForIBMPowerVSImageReason = "WaitingForIBMPowerVSImage"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta2"}

	// 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
)
View Source
var (
	// PowerVSInstanceStateACTIVE is the string representing an instance in a ACTIVE state.
	PowerVSInstanceStateACTIVE = PowerVSInstanceState("ACTIVE")

	// PowerVSInstanceStateBUILD is the string representing an instance in a BUILD state.
	PowerVSInstanceStateBUILD = PowerVSInstanceState("BUILD")

	// PowerVSInstanceStateSHUTOFF is the string representing an instance in a SHUTOFF state.
	PowerVSInstanceStateSHUTOFF = PowerVSInstanceState("SHUTOFF")

	// PowerVSInstanceStateREBOOT is the string representing an instance in a REBOOT state.
	PowerVSInstanceStateREBOOT = PowerVSInstanceState("REBOOT")

	// PowerVSInstanceStateERROR is the string representing an instance in a ERROR state.
	PowerVSInstanceStateERROR = PowerVSInstanceState("ERROR")
)
View Source
var (
	// PowerVSImageStateACTIVE is the string representing an image in a active state.
	PowerVSImageStateACTIVE = PowerVSImageState("active")

	// PowerVSImageStateQue is the string representing an image in a queued state.
	PowerVSImageStateQue = PowerVSImageState("queued")

	// PowerVSImageStateFailed is the string representing an image in a failed state.
	PowerVSImageStateFailed = PowerVSImageState("failed")

	// PowerVSImageStateImporting is the string representing an image in a failed state.
	PowerVSImageStateImporting = PowerVSImageState("importing")
)
View Source
var (
	// VPCLoadBalancerStateActive is the string representing the load balancer in a active state.
	VPCLoadBalancerStateActive = VPCLoadBalancerState("active")

	// VPCLoadBalancerStateCreatePending is the string representing the load balancer in a queued state.
	VPCLoadBalancerStateCreatePending = VPCLoadBalancerState("create_pending")

	// VPCLoadBalancerStateDeletePending is the string representing the load balancer in a failed state.
	VPCLoadBalancerStateDeletePending = VPCLoadBalancerState("delete_pending")
)
View Source
var (
	// DeletePolicyRetain is the string representing an image to be retained.
	DeletePolicyRetain = DeletePolicy("retain")
)

Functions

This section is empty.

Types

type DeletePolicy

type DeletePolicy string

DeletePolicy defines the policy used to identify images to be preserved.

type IBMPowerVSCluster

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

	Spec   IBMPowerVSClusterSpec   `json:"spec,omitempty"`
	Status IBMPowerVSClusterStatus `json:"status,omitempty"`
}

IBMPowerVSCluster is the Schema for the ibmpowervsclusters API.

func (*IBMPowerVSCluster) DeepCopy

func (in *IBMPowerVSCluster) DeepCopy() *IBMPowerVSCluster

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

func (*IBMPowerVSCluster) DeepCopyInto

func (in *IBMPowerVSCluster) DeepCopyInto(out *IBMPowerVSCluster)

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

func (*IBMPowerVSCluster) DeepCopyObject

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

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

func (*IBMPowerVSCluster) Default

func (r *IBMPowerVSCluster) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type.

func (*IBMPowerVSCluster) Hub

func (*IBMPowerVSCluster) Hub()

func (*IBMPowerVSCluster) SetupWebhookWithManager

func (r *IBMPowerVSCluster) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*IBMPowerVSCluster) ValidateCreate

func (r *IBMPowerVSCluster) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSCluster) ValidateDelete

func (r *IBMPowerVSCluster) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSCluster) ValidateUpdate

func (r *IBMPowerVSCluster) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type IBMPowerVSClusterList

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

IBMPowerVSClusterList contains a list of IBMPowerVSCluster.

func (*IBMPowerVSClusterList) DeepCopy

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

func (*IBMPowerVSClusterList) DeepCopyInto

func (in *IBMPowerVSClusterList) DeepCopyInto(out *IBMPowerVSClusterList)

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

func (*IBMPowerVSClusterList) DeepCopyObject

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

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

func (*IBMPowerVSClusterList) Hub

func (*IBMPowerVSClusterList) Hub()

type IBMPowerVSClusterSpec

type IBMPowerVSClusterSpec struct {

	// ServiceInstanceID is the id of the power cloud instance where the vsi instance will get deployed.
	// +kubebuilder:validation:MinLength=1
	ServiceInstanceID string `json:"serviceInstanceID"`

	// Network is the reference to the Network to use for this cluster.
	Network IBMPowerVSResourceReference `json:"network"`

	// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
	// +optional
	ControlPlaneEndpoint capiv1beta1.APIEndpoint `json:"controlPlaneEndpoint"`
}

IBMPowerVSClusterSpec defines the desired state of IBMPowerVSCluster.

func (*IBMPowerVSClusterSpec) DeepCopy

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

func (*IBMPowerVSClusterSpec) DeepCopyInto

func (in *IBMPowerVSClusterSpec) DeepCopyInto(out *IBMPowerVSClusterSpec)

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

type IBMPowerVSClusterStatus

type IBMPowerVSClusterStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Ready bool `json:"ready"`
}

IBMPowerVSClusterStatus defines the observed state of IBMPowerVSCluster.

func (*IBMPowerVSClusterStatus) DeepCopy

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

func (*IBMPowerVSClusterStatus) DeepCopyInto

func (in *IBMPowerVSClusterStatus) DeepCopyInto(out *IBMPowerVSClusterStatus)

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

type IBMPowerVSClusterTemplate

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

	Spec IBMPowerVSClusterTemplateSpec `json:"spec,omitempty"`
}

IBMPowerVSClusterTemplate is the schema for IBM Power VS Kubernetes Cluster Templates.

func (*IBMPowerVSClusterTemplate) DeepCopy

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

func (*IBMPowerVSClusterTemplate) DeepCopyInto

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

func (*IBMPowerVSClusterTemplate) DeepCopyObject

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

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

func (*IBMPowerVSClusterTemplate) Default added in v0.5.0

func (r *IBMPowerVSClusterTemplate) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type.

func (*IBMPowerVSClusterTemplate) Hub

func (*IBMPowerVSClusterTemplate) SetupWebhookWithManager added in v0.5.0

func (r *IBMPowerVSClusterTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*IBMPowerVSClusterTemplate) ValidateCreate added in v0.5.0

func (r *IBMPowerVSClusterTemplate) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSClusterTemplate) ValidateDelete added in v0.5.0

func (r *IBMPowerVSClusterTemplate) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSClusterTemplate) ValidateUpdate added in v0.5.0

func (r *IBMPowerVSClusterTemplate) ValidateUpdate(oldRaw runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type IBMPowerVSClusterTemplateList

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

IBMPowerVSClusterTemplateList contains a list of IBMPowerVSClusterTemplate.

func (*IBMPowerVSClusterTemplateList) DeepCopy

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

func (*IBMPowerVSClusterTemplateList) DeepCopyInto

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

func (*IBMPowerVSClusterTemplateList) DeepCopyObject

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

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

func (*IBMPowerVSClusterTemplateList) Hub

type IBMPowerVSClusterTemplateResource

type IBMPowerVSClusterTemplateResource struct {
	// Standard object's metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	// +optional
	ObjectMeta capiv1beta1.ObjectMeta `json:"metadata,omitempty"`
	Spec       IBMPowerVSClusterSpec  `json:"spec"`
}

IBMPowerVSClusterTemplateResource describes the data needed to create an IBMPowerVSCluster from a template.

func (*IBMPowerVSClusterTemplateResource) DeepCopy

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

func (*IBMPowerVSClusterTemplateResource) DeepCopyInto

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

type IBMPowerVSClusterTemplateSpec

type IBMPowerVSClusterTemplateSpec struct {
	Template IBMPowerVSClusterTemplateResource `json:"template"`
}

IBMPowerVSClusterTemplateSpec defines the desired state of IBMPowerVSClusterTemplate.

func (*IBMPowerVSClusterTemplateSpec) DeepCopy

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

func (*IBMPowerVSClusterTemplateSpec) DeepCopyInto

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

type IBMPowerVSImage

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

	Spec   IBMPowerVSImageSpec   `json:"spec,omitempty"`
	Status IBMPowerVSImageStatus `json:"status,omitempty"`
}

IBMPowerVSImage is the Schema for the ibmpowervsimages API.

func (*IBMPowerVSImage) DeepCopy

func (in *IBMPowerVSImage) DeepCopy() *IBMPowerVSImage

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

func (*IBMPowerVSImage) DeepCopyInto

func (in *IBMPowerVSImage) DeepCopyInto(out *IBMPowerVSImage)

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

func (*IBMPowerVSImage) DeepCopyObject

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

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

func (*IBMPowerVSImage) Default

func (r *IBMPowerVSImage) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type.

func (*IBMPowerVSImage) GetConditions

func (r *IBMPowerVSImage) GetConditions() capiv1beta1.Conditions

GetConditions returns the observations of the operational state of the IBMPowerVSImage resource.

func (*IBMPowerVSImage) Hub

func (*IBMPowerVSImage) Hub()

func (*IBMPowerVSImage) SetConditions

func (r *IBMPowerVSImage) SetConditions(conditions capiv1beta1.Conditions)

SetConditions sets the underlying service state of the IBMPowerVSImage to the predescribed clusterv1.Conditions.

func (*IBMPowerVSImage) SetupWebhookWithManager

func (r *IBMPowerVSImage) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*IBMPowerVSImage) ValidateCreate

func (r *IBMPowerVSImage) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSImage) ValidateDelete

func (r *IBMPowerVSImage) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSImage) ValidateUpdate

func (r *IBMPowerVSImage) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type IBMPowerVSImageList

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

IBMPowerVSImageList contains a list of IBMPowerVSImage.

func (*IBMPowerVSImageList) DeepCopy

func (in *IBMPowerVSImageList) DeepCopy() *IBMPowerVSImageList

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

func (*IBMPowerVSImageList) DeepCopyInto

func (in *IBMPowerVSImageList) DeepCopyInto(out *IBMPowerVSImageList)

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

func (*IBMPowerVSImageList) DeepCopyObject

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

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

func (*IBMPowerVSImageList) Hub

func (*IBMPowerVSImageList) Hub()

type IBMPowerVSImageSpec

type IBMPowerVSImageSpec struct {

	// ClusterName is the name of the Cluster this object belongs to.
	// +kubebuilder:validation:MinLength=1
	ClusterName string `json:"clusterName"`

	// ServiceInstanceID is the id of the power cloud instance where the image will get imported.
	ServiceInstanceID string `json:"serviceInstanceID"`

	// Cloud Object Storage bucket name; bucket-name[/optional/folder]
	Bucket *string `json:"bucket"`

	// Cloud Object Storage image filename.
	Object *string `json:"object"`

	// Cloud Object Storage region.
	Region *string `json:"region"`

	// Type of storage, storage pool with the most available space will be selected.
	// +kubebuilder:default=tier1
	// +kubebuilder:validation:Enum=tier1;tier3
	// +optional
	StorageType string `json:"storageType,omitempty"`

	// DeletePolicy defines the policy used to identify images to be preserved beyond the lifecycle of associated cluster.
	// +kubebuilder:default=delete
	// +kubebuilder:validation:Enum=delete;retain
	// +optional
	DeletePolicy string `json:"deletePolicy,omitempty"`
}

IBMPowerVSImageSpec defines the desired state of IBMPowerVSImage.

func (*IBMPowerVSImageSpec) DeepCopy

func (in *IBMPowerVSImageSpec) DeepCopy() *IBMPowerVSImageSpec

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

func (*IBMPowerVSImageSpec) DeepCopyInto

func (in *IBMPowerVSImageSpec) DeepCopyInto(out *IBMPowerVSImageSpec)

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

type IBMPowerVSImageStatus

type IBMPowerVSImageStatus struct {

	// Ready is true when the provider resource is ready.
	// +optional
	Ready bool `json:"ready"`

	// ImageID is the id of the imported image.
	ImageID string `json:"imageID,omitempty"`

	// ImageState is the status of the imported image.
	// +optional
	ImageState PowerVSImageState `json:"imageState,omitempty"`

	// JobID is the job ID of an import operation.
	// +optional
	JobID string `json:"jobID,omitempty"`

	// Conditions defines current service state of the IBMPowerVSImage.
	// +optional
	Conditions capiv1beta1.Conditions `json:"conditions,omitempty"`
}

IBMPowerVSImageStatus defines the observed state of IBMPowerVSImage.

func (*IBMPowerVSImageStatus) DeepCopy

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

func (*IBMPowerVSImageStatus) DeepCopyInto

func (in *IBMPowerVSImageStatus) DeepCopyInto(out *IBMPowerVSImageStatus)

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

type IBMPowerVSMachine

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

	Spec   IBMPowerVSMachineSpec   `json:"spec,omitempty"`
	Status IBMPowerVSMachineStatus `json:"status,omitempty"`
}

IBMPowerVSMachine is the Schema for the ibmpowervsmachines API.

func (*IBMPowerVSMachine) DeepCopy

func (in *IBMPowerVSMachine) DeepCopy() *IBMPowerVSMachine

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

func (*IBMPowerVSMachine) DeepCopyInto

func (in *IBMPowerVSMachine) DeepCopyInto(out *IBMPowerVSMachine)

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

func (*IBMPowerVSMachine) DeepCopyObject

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

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

func (*IBMPowerVSMachine) Default

func (r *IBMPowerVSMachine) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type.

func (*IBMPowerVSMachine) GetConditions

func (r *IBMPowerVSMachine) GetConditions() capiv1beta1.Conditions

GetConditions returns the observations of the operational state of the IBMPowerVSMachine resource.

func (*IBMPowerVSMachine) Hub

func (*IBMPowerVSMachine) Hub()

func (*IBMPowerVSMachine) SetConditions

func (r *IBMPowerVSMachine) SetConditions(conditions capiv1beta1.Conditions)

SetConditions sets the underlying service state of the IBMPowerVSMachine to the predescribed clusterv1.Conditions.

func (*IBMPowerVSMachine) SetupWebhookWithManager

func (r *IBMPowerVSMachine) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*IBMPowerVSMachine) ValidateCreate

func (r *IBMPowerVSMachine) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSMachine) ValidateDelete

func (r *IBMPowerVSMachine) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSMachine) ValidateUpdate

func (r *IBMPowerVSMachine) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type IBMPowerVSMachineList

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

IBMPowerVSMachineList contains a list of IBMPowerVSMachine.

func (*IBMPowerVSMachineList) DeepCopy

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

func (*IBMPowerVSMachineList) DeepCopyInto

func (in *IBMPowerVSMachineList) DeepCopyInto(out *IBMPowerVSMachineList)

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

func (*IBMPowerVSMachineList) DeepCopyObject

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

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

func (*IBMPowerVSMachineList) Hub

func (*IBMPowerVSMachineList) Hub()

type IBMPowerVSMachineSpec

type IBMPowerVSMachineSpec struct {

	// ServiceInstanceID is the id of the power cloud instance where the vsi instance will get deployed.
	// +kubebuilder:validation:MinLength=1
	ServiceInstanceID string `json:"serviceInstanceID"`

	// SSHKey is the name of the SSH key pair provided to the vsi for authenticating users.
	SSHKey string `json:"sshKey,omitempty"`

	// Image the reference to the image which is used to create the instance.
	// supported image identifier in IBMPowerVSResourceReference are Name and ID and that can be obtained from IBM Cloud UI or IBM Cloud cli.
	// +optional
	Image *IBMPowerVSResourceReference `json:"image,omitempty"`

	// ImageRef is an optional reference to a provider-specific resource that holds
	// the details for provisioning the Image for a Cluster.
	// +optional
	ImageRef *corev1.LocalObjectReference `json:"imageRef,omitempty"`

	// systemType is the System type used to host the instance.
	// systemType determines the number of cores and memory that is available.
	// Few of the supported SystemTypes are s922,e880,e980.
	// e880 systemType available only in Dallas Datacenters.
	// e980 systemType available in Datacenters except Dallas and Washington.
	// When omitted, this means that the user has no opinion and the platform is left to choose a
	// reasonable default, which is subject to change over time. The current default is s922 which is generally available.
	// + This is not an enum because we expect other values to be added later which should be supported implicitly.
	// +kubebuilder:validation:Enum:="s922";"e880";"e980";""
	// +optional
	SystemType string `json:"systemType,omitempty"`

	// processorType is the VM instance processor type.
	// It must be set to one of the following values: Dedicated, Capped or Shared.
	// Dedicated: resources are allocated for a specific client, The hypervisor makes a 1:1 binding of a partition’s processor to a physical processor core.
	// Shared: Shared among other clients.
	// Capped: Shared, but resources do not expand beyond those that are requested, the amount of CPU time is Capped to the value specified for the entitlement.
	// if the processorType is selected as Dedicated, then processors value cannot be fractional.
	// When omitted, this means that the user has no opinion and the platform is left to choose a
	// reasonable default, which is subject to change over time. The current default is Shared.
	// +kubebuilder:validation:Enum:="Dedicated";"Shared";"Capped";""
	// +optional
	ProcessorType PowerVSProcessorType `json:"processorType,omitempty"`

	// processors is the number of virtual processors in a virtual machine.
	// when the processorType is selected as Dedicated the processors value cannot be fractional.
	// maximum value for the Processors depends on the selected SystemType.
	// when SystemType is set to e880 or e980 maximum Processors value is 143.
	// when SystemType is set to s922 maximum Processors value is 15.
	// minimum value for Processors depends on the selected ProcessorType.
	// when ProcessorType is set as Shared or Capped, The minimum processors is 0.25.
	// when ProcessorType is set as Dedicated, The minimum processors is 1.
	// When omitted, this means that the user has no opinion and the platform is left to choose a
	// reasonable default, which is subject to change over time. The default is set based on the selected ProcessorType.
	// when ProcessorType selected as Dedicated, the default is set to 1.
	// when ProcessorType selected as Shared or Capped, the default is set to 0.25.
	// +optional
	Processors intstr.IntOrString `json:"processors,omitempty"`

	// memoryGiB is the size of a virtual machine's memory, in GiB.
	// maximum value for the MemoryGiB depends on the selected SystemType.
	// when SystemType is set to e880 maximum MemoryGiB value is 7463 GiB.
	// when SystemType is set to e980 maximum MemoryGiB value is 15307 GiB.
	// when SystemType is set to s922 maximum MemoryGiB value is 942 GiB.
	// The minimum memory is 2 GiB.
	// When omitted, this means the user has no opinion and the platform is left to choose a reasonable
	// default, which is subject to change over time. The current default is 2.
	// +optional
	MemoryGiB int32 `json:"memoryGiB,omitempty"`

	// Network is the reference to the Network to use for this instance.
	// supported network identifier in IBMPowerVSResourceReference are Name, ID and RegEx and that can be obtained from IBM Cloud UI or IBM Cloud cli.
	Network IBMPowerVSResourceReference `json:"network"`

	// ProviderID is the unique identifier as specified by the cloud provider.
	// +optional
	ProviderID *string `json:"providerID,omitempty"`
}

IBMPowerVSMachineSpec defines the desired state of IBMPowerVSMachine.

func (*IBMPowerVSMachineSpec) DeepCopy

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

func (*IBMPowerVSMachineSpec) DeepCopyInto

func (in *IBMPowerVSMachineSpec) DeepCopyInto(out *IBMPowerVSMachineSpec)

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

type IBMPowerVSMachineStatus

type IBMPowerVSMachineStatus struct {
	InstanceID string `json:"instanceID,omitempty"`

	// Ready is true when the provider resource is ready.
	// +optional
	Ready bool `json:"ready"`

	// Addresses contains the vsi associated addresses.
	Addresses []corev1.NodeAddress `json:"addresses,omitempty"`

	// Health is the health of the vsi.
	// +optional
	Health string `json:"health,omitempty"`

	// InstanceState is the status of the vsi.
	// +optional
	InstanceState PowerVSInstanceState `json:"instanceState,omitempty"`

	// Fault will report if any fault messages for the vsi.
	// +optional
	Fault string `json:"fault,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"`

	// Conditions defines current service state of the IBMPowerVSMachine.
	// +optional
	Conditions capiv1beta1.Conditions `json:"conditions,omitempty"`

	// Region specifies the Power VS Service instance region.
	Region *string `json:"region,omitempty"`

	// Zone specifies the Power VS Service instance zone.
	Zone *string `json:"zone,omitempty"`
}

IBMPowerVSMachineStatus defines the observed state of IBMPowerVSMachine.

func (*IBMPowerVSMachineStatus) DeepCopy

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

func (*IBMPowerVSMachineStatus) DeepCopyInto

func (in *IBMPowerVSMachineStatus) DeepCopyInto(out *IBMPowerVSMachineStatus)

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

type IBMPowerVSMachineTemplate

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

	Spec   IBMPowerVSMachineTemplateSpec   `json:"spec,omitempty"`
	Status IBMPowerVSMachineTemplateStatus `json:"status,omitempty"`
}

IBMPowerVSMachineTemplate is the Schema for the ibmpowervsmachinetemplates API.

func (*IBMPowerVSMachineTemplate) DeepCopy

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

func (*IBMPowerVSMachineTemplate) DeepCopyInto

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

func (*IBMPowerVSMachineTemplate) DeepCopyObject

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

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

func (*IBMPowerVSMachineTemplate) Default

func (r *IBMPowerVSMachineTemplate) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type.

func (*IBMPowerVSMachineTemplate) Hub

func (*IBMPowerVSMachineTemplate) SetupWebhookWithManager

func (r *IBMPowerVSMachineTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*IBMPowerVSMachineTemplate) ValidateCreate

func (r *IBMPowerVSMachineTemplate) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSMachineTemplate) ValidateDelete

func (r *IBMPowerVSMachineTemplate) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*IBMPowerVSMachineTemplate) ValidateUpdate

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type IBMPowerVSMachineTemplateList

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

IBMPowerVSMachineTemplateList contains a list of IBMPowerVSMachineTemplate.

func (*IBMPowerVSMachineTemplateList) DeepCopy

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

func (*IBMPowerVSMachineTemplateList) DeepCopyInto

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

func (*IBMPowerVSMachineTemplateList) DeepCopyObject

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

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

func (*IBMPowerVSMachineTemplateList) Hub

type IBMPowerVSMachineTemplateResource

type IBMPowerVSMachineTemplateResource struct {
	Spec IBMPowerVSMachineSpec `json:"spec"`
}

IBMPowerVSMachineTemplateResource holds the IBMPowerVSMachine spec.

func (*IBMPowerVSMachineTemplateResource) DeepCopy

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

func (*IBMPowerVSMachineTemplateResource) DeepCopyInto

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

type IBMPowerVSMachineTemplateSpec

type IBMPowerVSMachineTemplateSpec struct {
	Template IBMPowerVSMachineTemplateResource `json:"template"`
}

IBMPowerVSMachineTemplateSpec defines the desired state of IBMPowerVSMachineTemplate.

func (*IBMPowerVSMachineTemplateSpec) DeepCopy

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

func (*IBMPowerVSMachineTemplateSpec) DeepCopyInto

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

type IBMPowerVSMachineTemplateStatus

type IBMPowerVSMachineTemplateStatus struct {
	// Capacity defines the resource capacity for this machine.
	// This value is used for autoscaling from zero operations as defined in:
	// https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/proposals/20210310-opt-in-autoscaling-from-zero.md
	// +optional
	Capacity corev1.ResourceList `json:"capacity,omitempty"`
}

IBMPowerVSMachineTemplateStatus defines the observed state of IBMPowerVSMachineTemplate.

func (*IBMPowerVSMachineTemplateStatus) DeepCopy

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

func (*IBMPowerVSMachineTemplateStatus) DeepCopyInto

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

type IBMPowerVSResourceReference

type IBMPowerVSResourceReference struct {
	// ID of resource
	// +kubebuilder:validation:MinLength=1
	// +optional
	ID *string `json:"id,omitempty"`

	// Name of resource
	// +kubebuilder:validation:MinLength=1
	// +optional
	Name *string `json:"name,omitempty"`

	// Regular expression to match resource,
	// In case of multiple resources matches the provided regular expression the first matched resource will be selected
	// +kubebuilder:validation:MinLength=1
	// +optional
	RegEx *string `json:"regex,omitempty"`
}

IBMPowerVSResourceReference is a reference to a specific PowerVS resource by ID, Name or RegEx Only one of ID, Name or RegEx may be specified. Specifying more than one will result in a validation error.

func (*IBMPowerVSResourceReference) DeepCopy

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

func (*IBMPowerVSResourceReference) DeepCopyInto

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

type IBMVPCCluster

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

	Spec   IBMVPCClusterSpec   `json:"spec,omitempty"`
	Status IBMVPCClusterStatus `json:"status,omitempty"`
}

IBMVPCCluster is the Schema for the ibmvpcclusters API.

func (*IBMVPCCluster) DeepCopy

func (in *IBMVPCCluster) DeepCopy() *IBMVPCCluster

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

func (*IBMVPCCluster) DeepCopyInto

func (in *IBMVPCCluster) DeepCopyInto(out *IBMVPCCluster)

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

func (*IBMVPCCluster) DeepCopyObject

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

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

func (*IBMVPCCluster) Default

func (r *IBMVPCCluster) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type.

func (*IBMVPCCluster) GetConditions

func (r *IBMVPCCluster) GetConditions() capiv1beta1.Conditions

GetConditions returns the observations of the operational state of the IBMVPCCluster resource.

func (*IBMVPCCluster) Hub

func (*IBMVPCCluster) Hub()

func (*IBMVPCCluster) SetConditions

func (r *IBMVPCCluster) SetConditions(conditions capiv1beta1.Conditions)

SetConditions sets the underlying service state of the IBMVPCCluster to the predescribed clusterv1.Conditions.

func (*IBMVPCCluster) SetupWebhookWithManager

func (r *IBMVPCCluster) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*IBMVPCCluster) ValidateCreate

func (r *IBMVPCCluster) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*IBMVPCCluster) ValidateDelete

func (r *IBMVPCCluster) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*IBMVPCCluster) ValidateUpdate

func (r *IBMVPCCluster) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type IBMVPCClusterList

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

IBMVPCClusterList contains a list of IBMVPCCluster.

func (*IBMVPCClusterList) DeepCopy

func (in *IBMVPCClusterList) DeepCopy() *IBMVPCClusterList

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

func (*IBMVPCClusterList) DeepCopyInto

func (in *IBMVPCClusterList) DeepCopyInto(out *IBMVPCClusterList)

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

func (*IBMVPCClusterList) DeepCopyObject

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

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

func (*IBMVPCClusterList) Hub

func (*IBMVPCClusterList) Hub()

type IBMVPCClusterSpec

type IBMVPCClusterSpec struct {

	// The IBM Cloud Region the cluster lives in.
	Region string `json:"region"`

	// The VPC resources should be created under the resource group.
	ResourceGroup string `json:"resourceGroup"`

	// The Name of VPC.
	VPC string `json:"vpc,omitempty"`

	// The Name of availability zone.
	Zone string `json:"zone,omitempty"`

	// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
	// +optional
	ControlPlaneEndpoint capiv1beta1.APIEndpoint `json:"controlPlaneEndpoint"`

	// ControlPlaneLoadBalancer is optional configuration for customizing control plane behavior.
	// +optional
	ControlPlaneLoadBalancer *VPCLoadBalancerSpec `json:"controlPlaneLoadBalancer,omitempty"`
}

IBMVPCClusterSpec defines the desired state of IBMVPCCluster.

func (*IBMVPCClusterSpec) DeepCopy

func (in *IBMVPCClusterSpec) DeepCopy() *IBMVPCClusterSpec

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

func (*IBMVPCClusterSpec) DeepCopyInto

func (in *IBMVPCClusterSpec) DeepCopyInto(out *IBMVPCClusterSpec)

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

type IBMVPCClusterStatus

type IBMVPCClusterStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	VPC VPC `json:"vpc,omitempty"`

	// Ready is true when the provider resource is ready.
	// +optional
	Ready       bool        `json:"ready"`
	Subnet      Subnet      `json:"subnet,omitempty"`
	VPCEndpoint VPCEndpoint `json:"vpcEndpoint,omitempty"`

	// ControlPlaneLoadBalancerState is the status of the load balancer.
	// +optional
	ControlPlaneLoadBalancerState VPCLoadBalancerState `json:"controlPlaneLoadBalancerState,omitempty"`

	// Conditions defines current service state of the load balancer.
	// +optional
	Conditions capiv1beta1.Conditions `json:"conditions,omitempty"`
}

IBMVPCClusterStatus defines the observed state of IBMVPCCluster.

func (*IBMVPCClusterStatus) DeepCopy

func (in *IBMVPCClusterStatus) DeepCopy() *IBMVPCClusterStatus

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

func (*IBMVPCClusterStatus) DeepCopyInto

func (in *IBMVPCClusterStatus) DeepCopyInto(out *IBMVPCClusterStatus)

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

type IBMVPCClusterTemplate added in v0.7.0

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

	Spec IBMVPCClusterTemplateSpec `json:"spec,omitempty"`
}

IBMVPCClusterTemplate is the Schema for the ibmvpcclustertemplates API.

func (*IBMVPCClusterTemplate) DeepCopy added in v0.7.0

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

func (*IBMVPCClusterTemplate) DeepCopyInto added in v0.7.0

func (in *IBMVPCClusterTemplate) DeepCopyInto(out *IBMVPCClusterTemplate)

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

func (*IBMVPCClusterTemplate) DeepCopyObject added in v0.7.0

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

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

type IBMVPCClusterTemplateList added in v0.7.0

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

IBMVPCClusterTemplateList contains a list of IBMVPCClusterTemplate.

func (*IBMVPCClusterTemplateList) DeepCopy added in v0.7.0

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

func (*IBMVPCClusterTemplateList) DeepCopyInto added in v0.7.0

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

func (*IBMVPCClusterTemplateList) DeepCopyObject added in v0.7.0

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

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

type IBMVPCClusterTemplateResource added in v0.7.0

type IBMVPCClusterTemplateResource struct {
	// Standard object's metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	// +optional
	ObjectMeta capiv1beta1.ObjectMeta `json:"metadata,omitempty"`
	Spec       IBMVPCClusterSpec      `json:"spec"`
}

IBMVPCClusterTemplateResource describes the data needed to create an IBMVPCCluster from a template.

func (*IBMVPCClusterTemplateResource) DeepCopy added in v0.7.0

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

func (*IBMVPCClusterTemplateResource) DeepCopyInto added in v0.7.0

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

type IBMVPCClusterTemplateSpec added in v0.7.0

type IBMVPCClusterTemplateSpec struct {
	Template IBMVPCClusterTemplateResource `json:"template,omitempty"`
}

IBMVPCClusterTemplateSpec defines the desired state of IBMVPCClusterTemplate.

func (*IBMVPCClusterTemplateSpec) DeepCopy added in v0.7.0

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

func (*IBMVPCClusterTemplateSpec) DeepCopyInto added in v0.7.0

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

type IBMVPCMachine

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

	Spec   IBMVPCMachineSpec   `json:"spec,omitempty"`
	Status IBMVPCMachineStatus `json:"status,omitempty"`
}

IBMVPCMachine is the Schema for the ibmvpcmachines API.

func (*IBMVPCMachine) DeepCopy

func (in *IBMVPCMachine) DeepCopy() *IBMVPCMachine

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

func (*IBMVPCMachine) DeepCopyInto

func (in *IBMVPCMachine) DeepCopyInto(out *IBMVPCMachine)

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

func (*IBMVPCMachine) DeepCopyObject

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

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

func (*IBMVPCMachine) Default

func (r *IBMVPCMachine) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type.

func (*IBMVPCMachine) Hub

func (*IBMVPCMachine) Hub()

func (*IBMVPCMachine) SetupWebhookWithManager

func (r *IBMVPCMachine) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*IBMVPCMachine) ValidateCreate

func (r *IBMVPCMachine) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*IBMVPCMachine) ValidateDelete

func (r *IBMVPCMachine) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*IBMVPCMachine) ValidateUpdate

func (r *IBMVPCMachine) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type IBMVPCMachineList

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

IBMVPCMachineList contains a list of IBMVPCMachine.

func (*IBMVPCMachineList) DeepCopy

func (in *IBMVPCMachineList) DeepCopy() *IBMVPCMachineList

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

func (*IBMVPCMachineList) DeepCopyInto

func (in *IBMVPCMachineList) DeepCopyInto(out *IBMVPCMachineList)

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

func (*IBMVPCMachineList) DeepCopyObject

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

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

func (*IBMVPCMachineList) Hub

func (*IBMVPCMachineList) Hub()

type IBMVPCMachineSpec

type IBMVPCMachineSpec struct {

	// Name of the instance.
	Name string `json:"name,omitempty"`

	// Image is the OS image which would be install on the instance.
	// ID will take higher precedence over Name if both specified.
	Image *IBMVPCResourceReference `json:"image"`

	// Zone is the place where the instance should be created. Example: us-south-3
	// TODO: Actually zone is transparent to user. The field user can access is location. Example: Dallas 2
	Zone string `json:"zone"`

	// Profile indicates the flavor of instance. Example: bx2-8x32	means 8 vCPUs	32 GB RAM	16 Gbps
	// TODO: add a reference link of profile
	// +optional
	Profile string `json:"profile,omitempty"`

	// BootVolume contains machines's boot volume configurations like size, iops etc..
	// +optional
	BootVolume *VPCVolume `json:"bootVolume,omitempty"`

	// ProviderID is the unique identifier as specified by the cloud provider.
	// +optional
	ProviderID *string `json:"providerID,omitempty"`

	// PrimaryNetworkInterface is required to specify subnet.
	PrimaryNetworkInterface NetworkInterface `json:"primaryNetworkInterface,omitempty"`

	// SSHKeys is the SSH pub keys that will be used to access VM.
	// ID will take higher precedence over Name if both specified.
	SSHKeys []*IBMVPCResourceReference `json:"sshKeys,omitempty"`
}

IBMVPCMachineSpec defines the desired state of IBMVPCMachine.

func (*IBMVPCMachineSpec) DeepCopy

func (in *IBMVPCMachineSpec) DeepCopy() *IBMVPCMachineSpec

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

func (*IBMVPCMachineSpec) DeepCopyInto

func (in *IBMVPCMachineSpec) DeepCopyInto(out *IBMVPCMachineSpec)

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

type IBMVPCMachineStatus

type IBMVPCMachineStatus struct {
	InstanceID string `json:"instanceID,omitempty"`

	// Ready is true when the provider resource is ready.
	// +optional
	Ready bool `json:"ready"`

	// Addresses contains the GCP instance associated addresses.
	Addresses []corev1.NodeAddress `json:"addresses,omitempty"`

	// InstanceStatus is the status of the GCP instance for this machine.
	// +optional
	InstanceStatus string `json:"instanceState,omitempty"`
}

IBMVPCMachineStatus defines the observed state of IBMVPCMachine.

func (*IBMVPCMachineStatus) DeepCopy

func (in *IBMVPCMachineStatus) DeepCopy() *IBMVPCMachineStatus

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

func (*IBMVPCMachineStatus) DeepCopyInto

func (in *IBMVPCMachineStatus) DeepCopyInto(out *IBMVPCMachineStatus)

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

type IBMVPCMachineTemplate

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

	Spec IBMVPCMachineTemplateSpec `json:"spec,omitempty"`
}

IBMVPCMachineTemplate is the Schema for the ibmvpcmachinetemplates API.

func (*IBMVPCMachineTemplate) DeepCopy

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

func (*IBMVPCMachineTemplate) DeepCopyInto

func (in *IBMVPCMachineTemplate) DeepCopyInto(out *IBMVPCMachineTemplate)

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

func (*IBMVPCMachineTemplate) DeepCopyObject

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

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

func (*IBMVPCMachineTemplate) Default

func (r *IBMVPCMachineTemplate) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type.

func (*IBMVPCMachineTemplate) Hub

func (*IBMVPCMachineTemplate) Hub()

func (*IBMVPCMachineTemplate) SetupWebhookWithManager

func (r *IBMVPCMachineTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*IBMVPCMachineTemplate) ValidateCreate

func (r *IBMVPCMachineTemplate) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*IBMVPCMachineTemplate) ValidateDelete

func (r *IBMVPCMachineTemplate) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*IBMVPCMachineTemplate) ValidateUpdate

func (r *IBMVPCMachineTemplate) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type IBMVPCMachineTemplateList

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

IBMVPCMachineTemplateList contains a list of IBMVPCMachineTemplate.

func (*IBMVPCMachineTemplateList) DeepCopy

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

func (*IBMVPCMachineTemplateList) DeepCopyInto

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

func (*IBMVPCMachineTemplateList) DeepCopyObject

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

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

func (*IBMVPCMachineTemplateList) Hub

type IBMVPCMachineTemplateResource

type IBMVPCMachineTemplateResource struct {
	// Spec is the specification of the desired behavior of the machine.
	Spec IBMVPCMachineSpec `json:"spec"`
}

IBMVPCMachineTemplateResource describes the data needed to create am IBMVPCMachine from a template.

func (*IBMVPCMachineTemplateResource) DeepCopy

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

func (*IBMVPCMachineTemplateResource) DeepCopyInto

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

type IBMVPCMachineTemplateSpec

type IBMVPCMachineTemplateSpec struct {
	Template IBMVPCMachineTemplateResource `json:"template"`
}

IBMVPCMachineTemplateSpec defines the desired state of IBMVPCMachineTemplate.

func (*IBMVPCMachineTemplateSpec) DeepCopy

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

func (*IBMVPCMachineTemplateSpec) DeepCopyInto

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

type IBMVPCResourceReference

type IBMVPCResourceReference struct {
	// ID of resource
	// +kubebuilder:validation:MinLength=1
	// +optional
	ID *string `json:"id,omitempty"`

	// Name of resource
	// +kubebuilder:validation:MinLength=1
	// +optional
	Name *string `json:"name,omitempty"`
}

IBMVPCResourceReference is a reference to a specific VPC resource by ID or Name Only one of ID or Name may be specified. Specifying more than one will result in a validation error.

func (*IBMVPCResourceReference) DeepCopy

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

func (*IBMVPCResourceReference) DeepCopyInto

func (in *IBMVPCResourceReference) DeepCopyInto(out *IBMVPCResourceReference)

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

type NetworkInterface

type NetworkInterface struct {
	// Subnet ID of the network interface.
	Subnet string `json:"subnet,omitempty"`
}

NetworkInterface holds the network interface information like subnet id.

func (*NetworkInterface) DeepCopy

func (in *NetworkInterface) DeepCopy() *NetworkInterface

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

func (*NetworkInterface) DeepCopyInto

func (in *NetworkInterface) DeepCopyInto(out *NetworkInterface)

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

type PowerVSImageState

type PowerVSImageState string

PowerVSImageState describes the state of an IBM Power VS image.

type PowerVSInstanceState

type PowerVSInstanceState string

PowerVSInstanceState describes the state of an IBM Power VS instance.

type PowerVSProcessorType

type PowerVSProcessorType string

PowerVSProcessorType enum attribute to identify the PowerVS instance processor type.

const (
	// IBMPowerVSMachineFinalizer allows IBMPowerVSMachineReconciler to clean up resources associated with IBMPowerVSMachine before
	// removing it from the apiserver.
	IBMPowerVSMachineFinalizer = "ibmpowervsmachine.infrastructure.cluster.x-k8s.io"
	// PowerVSProcessorTypeDedicated enum property to identify a Dedicated Power VS processor type.
	PowerVSProcessorTypeDedicated PowerVSProcessorType = "Dedicated"
	// PowerVSProcessorTypeShared enum property to identify a Shared Power VS processor type.
	PowerVSProcessorTypeShared PowerVSProcessorType = "Shared"
	// PowerVSProcessorTypeCapped enum property to identify a Capped Power VS processor type.
	PowerVSProcessorTypeCapped PowerVSProcessorType = "Capped"
)

type Subnet

type Subnet struct {
	Ipv4CidrBlock *string `json:"cidr"`
	Name          *string `json:"name"`
	ID            *string `json:"id"`
	Zone          *string `json:"zone"`
}

Subnet describes a subnet.

func (*Subnet) DeepCopy

func (in *Subnet) DeepCopy() *Subnet

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

func (*Subnet) DeepCopyInto

func (in *Subnet) DeepCopyInto(out *Subnet)

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

type VPC

type VPC struct {
	ID   string `json:"id"`
	Name string `json:"name"`
}

VPC holds the VPC information.

func (*VPC) DeepCopy

func (in *VPC) DeepCopy() *VPC

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

func (*VPC) DeepCopyInto

func (in *VPC) DeepCopyInto(out *VPC)

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

type VPCEndpoint

type VPCEndpoint struct {
	Address *string `json:"address"`
	// +optional
	// Deprecated: This field has no function and is going to be removed in the next release.
	FIPID *string `json:"floatingIPID,omitempty"`
	// +optional
	LBID *string `json:"loadBalancerIPID,omitempty"`
}

VPCEndpoint describes a VPCEndpoint.

func (*VPCEndpoint) DeepCopy

func (in *VPCEndpoint) DeepCopy() *VPCEndpoint

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

func (*VPCEndpoint) DeepCopyInto

func (in *VPCEndpoint) DeepCopyInto(out *VPCEndpoint)

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

type VPCLoadBalancerSpec

type VPCLoadBalancerSpec struct {
	// Name sets the name of the VPC load balancer.
	// +kubebuilder:validation:MaxLength:=63
	// +kubebuilder:validation:Pattern=`^([a-z]|[a-z][-a-z0-9]*[a-z0-9])$`
	// +optional
	Name string `json:"name,omitempty"`
}

VPCLoadBalancerSpec defines the desired state of an VPC load balancer.

func (*VPCLoadBalancerSpec) DeepCopy

func (in *VPCLoadBalancerSpec) DeepCopy() *VPCLoadBalancerSpec

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

func (*VPCLoadBalancerSpec) DeepCopyInto

func (in *VPCLoadBalancerSpec) DeepCopyInto(out *VPCLoadBalancerSpec)

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

type VPCLoadBalancerState

type VPCLoadBalancerState string

VPCLoadBalancerState describes the state of the load balancer.

type VPCVolume

type VPCVolume struct {
	// DeleteVolumeOnInstanceDelete If set to true, when deleting the instance the volume will also be deleted.
	// Default is set as true
	// +kubebuilder:default=true
	// +optional
	DeleteVolumeOnInstanceDelete bool `json:"deleteVolumeOnInstanceDelete,omitempty"`

	// Name is the unique user-defined name for this volume.
	// Default will be autogenerated
	// +optional
	Name string `json:"name,omitempty"`

	// SizeGiB is the size of the virtual server's boot disk in GiB.
	// Default to the size of the image's `minimum_provisioned_size`.
	// +optional
	SizeGiB int64 `json:"sizeGiB,omitempty"`

	// Profile is the volume profile for the bootdisk, refer https://cloud.ibm.com/docs/vpc?topic=vpc-block-storage-profiles
	// for more information.
	// Default to general-purpose
	// +kubebuilder:validation:Enum="general-purpose";"5iops-tier";"10iops-tier";"custom"
	// +kubebuilder:default=general-purpose
	// +optional
	Profile string `json:"profile,omitempty"`

	// Iops is the maximum I/O operations per second (IOPS) to use for the volume. Applicable only to volumes using a profile
	// family of `custom`.
	// +optional
	Iops int64 `json:"iops,omitempty"`

	// EncryptionKey is the root key to use to wrap the data encryption key for the volume and this points to the CRN
	// and possible values are as follows.
	// The CRN of the [Key Protect Root
	// Key](https://cloud.ibm.com/docs/key-protect?topic=key-protect-getting-started-tutorial) or [Hyper Protect Crypto
	// Service Root Key](https://cloud.ibm.com/docs/hs-crypto?topic=hs-crypto-get-started) for this resource.
	// If unspecified, the `encryption` type for the volume will be `provider_managed`.
	// +optional
	EncryptionKeyCRN string `json:"encryptionKeyCRN,omitempty"`
}

VPCVolume defines the volume information for the instance.

func (*VPCVolume) DeepCopy

func (in *VPCVolume) DeepCopy() *VPCVolume

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

func (*VPCVolume) DeepCopyInto

func (in *VPCVolume) DeepCopyInto(out *VPCVolume)

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

Jump to

Keyboard shortcuts

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