v1alpha1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Apr 18, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

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

Index

Constants

This section is empty.

Variables

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

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	InstanceStatusRunning      = InstanceStatus("running")
	InstanceStatusOffline      = InstanceStatus("offline")
	InstanceStatusBooting      = InstanceStatus("booting")
	InstanceStatusRebooting    = InstanceStatus("rebooting")
	InstanceStatusShuttingDown = InstanceStatus("shutting_down")
	InstanceStatusProvisioning = InstanceStatus("provisioning")
	InstanceStatusDeleting     = InstanceStatus("deleting")
	InstanceStatusMigrating    = InstanceStatus("migrating")
	InstanceStatusRebuilding   = InstanceStatus("rebuilding")
	InstanceStatusCloning      = InstanceStatus("cloning")
	InstanceStatusRestoring    = InstanceStatus("restoring")
	InstanceStatusStopped      = InstanceStatus("stopped")
)

Functions

This section is empty.

Types

type InstanceConfigInterfaceCreateOptions

type InstanceConfigInterfaceCreateOptions struct {
	IPAMAddress string `json:"ipamAddress,omitempty"`
	// +kubebuilder:validation:MinLength=3
	// +kubebuilder:validation:MaxLength=63
	// +optional
	Label   string                          `json:"label,omitempty"`
	Purpose linodego.ConfigInterfacePurpose `json:"purpose,omitempty"`
	Primary bool                            `json:"primary,omitempty"`
	// +optional
	SubnetID *int `json:"subnetId,omitempty"`
	// +optional
	IPv4     *VPCIPv4 `json:"ipv4,omitempty"`
	IPRanges []string `json:"ipRanges,omitempty"`
}

InstanceConfigInterfaceCreateOptions defines network interface config

func (*InstanceConfigInterfaceCreateOptions) DeepCopy

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

func (*InstanceConfigInterfaceCreateOptions) DeepCopyInto

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

type InstanceDisk

type InstanceDisk struct {
	// DiskID is the linode assigned ID of the disk
	DiskID int `json:"diskID,omitempty"`
	// Size of the disk in resource.Quantity notation
	// +kubebuilder:validation:Required
	Size resource.Quantity `json:"size"`
	// Label for the instance disk, if nothing is provided it will match the device name
	Label string `json:"label,omitempty"`
	// Filesystem of disk to provision, the default disk filesystem is "ext4"
	// +kubebuilder:validation:Enum=raw;swap;ext3;ext4;initrd
	Filesystem string `json:"filesystem,omitempty"`
}

InstanceDisk defines a list of disks to use for an instance

func (*InstanceDisk) DeepCopy

func (in *InstanceDisk) DeepCopy() *InstanceDisk

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

func (*InstanceDisk) DeepCopyInto

func (in *InstanceDisk) DeepCopyInto(out *InstanceDisk)

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

type InstanceMetadataOptions

type InstanceMetadataOptions struct {
	// UserData expects a Base64-encoded string
	UserData string `json:"userData,omitempty"`
}

InstanceMetadataOptions defines metadata of instance

func (*InstanceMetadataOptions) DeepCopy

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

func (*InstanceMetadataOptions) DeepCopyInto

func (in *InstanceMetadataOptions) DeepCopyInto(out *InstanceMetadataOptions)

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

type InstanceStatus

type InstanceStatus string

type LinodeCluster

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

	Spec   LinodeClusterSpec   `json:"spec,omitempty"`
	Status LinodeClusterStatus `json:"status,omitempty"`
}

LinodeCluster is the Schema for the linodeclusters API

func (*LinodeCluster) DeepCopy

func (in *LinodeCluster) DeepCopy() *LinodeCluster

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

func (*LinodeCluster) DeepCopyInto

func (in *LinodeCluster) DeepCopyInto(out *LinodeCluster)

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

func (*LinodeCluster) DeepCopyObject

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

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

func (*LinodeCluster) GetConditions

func (lm *LinodeCluster) GetConditions() clusterv1.Conditions

func (*LinodeCluster) SetConditions

func (lm *LinodeCluster) SetConditions(conditions clusterv1.Conditions)

type LinodeClusterList

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

LinodeClusterList contains a list of LinodeCluster

func (*LinodeClusterList) DeepCopy

func (in *LinodeClusterList) DeepCopy() *LinodeClusterList

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

func (*LinodeClusterList) DeepCopyInto

func (in *LinodeClusterList) DeepCopyInto(out *LinodeClusterList)

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

func (*LinodeClusterList) DeepCopyObject

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

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

type LinodeClusterSpec

type LinodeClusterSpec struct {
	// The Linode Region the LinodeCluster lives in.
	Region string `json:"region"`

	// ControlPlaneEndpoint represents the endpoint used to communicate with the LinodeCluster control plane.
	// If ControlPlaneEndpoint is unset then the Nodebalancer ip will be used.
	// +optional
	ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"`

	// NetworkSpec encapsulates all things related to Linode network.
	// +optional
	Network NetworkSpec `json:"network"`

	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +optional
	VPCRef *corev1.ObjectReference `json:"vpcRef,omitempty"`

	// CredentialsRef is a reference to a Secret that contains the credentials to use for provisioning this cluster. If not
	// supplied then the credentials of the controller will be used.
	// +optional
	CredentialsRef *corev1.SecretReference `json:"credentialsRef,omitempty"`
}

LinodeClusterSpec defines the desired state of LinodeCluster

func (*LinodeClusterSpec) DeepCopy

func (in *LinodeClusterSpec) DeepCopy() *LinodeClusterSpec

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

func (*LinodeClusterSpec) DeepCopyInto

func (in *LinodeClusterSpec) DeepCopyInto(out *LinodeClusterSpec)

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

type LinodeClusterStatus

type LinodeClusterStatus struct {
	// Ready denotes that the cluster (infrastructure) is ready.
	// +optional
	Ready bool `json:"ready"`

	// FailureReason will be set in the event that there is a terminal problem
	// reconciling the LinodeCluster and will contain a succinct value suitable
	// for machine interpretation.
	// +optional
	FailureReason *errors.ClusterStatusError `json:"failureReason,omitempty"`

	// FailureMessage will be set in the event that there is a terminal problem
	// reconciling the LinodeCluster and will contain a more verbose string suitable
	// for logging and human consumption.
	// +optional
	FailureMessage *string `json:"failureMessage,omitempty"`

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

LinodeClusterStatus defines the observed state of LinodeCluster

func (*LinodeClusterStatus) DeepCopy

func (in *LinodeClusterStatus) DeepCopy() *LinodeClusterStatus

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

func (*LinodeClusterStatus) DeepCopyInto

func (in *LinodeClusterStatus) DeepCopyInto(out *LinodeClusterStatus)

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

type LinodeClusterTemplate

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

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

LinodeClusterTemplate is the Schema for the linodeclustertemplates API

func (*LinodeClusterTemplate) DeepCopy

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

func (*LinodeClusterTemplate) DeepCopyInto

func (in *LinodeClusterTemplate) DeepCopyInto(out *LinodeClusterTemplate)

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

func (*LinodeClusterTemplate) DeepCopyObject

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

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

type LinodeClusterTemplateList

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

LinodeClusterTemplateList contains a list of LinodeClusterTemplate

func (*LinodeClusterTemplateList) DeepCopy

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

func (*LinodeClusterTemplateList) DeepCopyInto

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

func (*LinodeClusterTemplateList) DeepCopyObject

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

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

type LinodeClusterTemplateResource

type LinodeClusterTemplateResource struct {
	Spec LinodeClusterSpec `json:"spec"`
}

LinodeClusterTemplateResource describes the data needed to create a LinodeCluster from a template.

func (*LinodeClusterTemplateResource) DeepCopy

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

func (*LinodeClusterTemplateResource) DeepCopyInto

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

type LinodeClusterTemplateSpec

type LinodeClusterTemplateSpec struct {
	Template LinodeClusterTemplateResource `json:"template"`
}

LinodeClusterTemplateSpec defines the desired state of LinodeClusterTemplate

func (*LinodeClusterTemplateSpec) DeepCopy

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

func (*LinodeClusterTemplateSpec) DeepCopyInto

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

type LinodeMachine

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

	Spec   LinodeMachineSpec   `json:"spec,omitempty"`
	Status LinodeMachineStatus `json:"status,omitempty"`
}

LinodeMachine is the Schema for the linodemachines API

func (*LinodeMachine) DeepCopy

func (in *LinodeMachine) DeepCopy() *LinodeMachine

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

func (*LinodeMachine) DeepCopyInto

func (in *LinodeMachine) DeepCopyInto(out *LinodeMachine)

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

func (*LinodeMachine) DeepCopyObject

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

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

func (*LinodeMachine) GetConditions

func (lm *LinodeMachine) GetConditions() clusterv1.Conditions

func (*LinodeMachine) SetConditions

func (lm *LinodeMachine) SetConditions(conditions clusterv1.Conditions)

type LinodeMachineList

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

LinodeMachineList contains a list of LinodeMachine

func (*LinodeMachineList) DeepCopy

func (in *LinodeMachineList) DeepCopy() *LinodeMachineList

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

func (*LinodeMachineList) DeepCopyInto

func (in *LinodeMachineList) DeepCopyInto(out *LinodeMachineList)

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

func (*LinodeMachineList) DeepCopyObject

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

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

type LinodeMachineSpec

type LinodeMachineSpec struct {
	// ProviderID is the unique identifier as specified by the cloud provider.
	// +optional
	ProviderID *string `json:"providerID,omitempty"`
	// InstanceID is the Linode instance ID for this machine.
	// +optional
	InstanceID *int `json:"instanceID,omitempty"`

	// +kubebuilder:validation:Required
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	Region string `json:"region"`
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	Type string `json:"type"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	Group string `json:"group,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	RootPass string `json:"rootPass,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	AuthorizedKeys []string `json:"authorizedKeys,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	AuthorizedUsers []string `json:"authorizedUsers,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	BackupID int `json:"backupID,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	Image string `json:"image,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	Interfaces []InstanceConfigInterfaceCreateOptions `json:"interfaces,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	BackupsEnabled bool `json:"backupsEnabled,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	PrivateIP *bool `json:"privateIP,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	Tags []string `json:"tags,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	FirewallID int `json:"firewallID,omitempty"`
	// OSDisk is configuration for the root disk that includes the OS,
	// if not specified this defaults to whatever space is not taken up by the DataDisks
	OSDisk *InstanceDisk `json:"osDisk,omitempty"`
	// DataDisks is a map of any additional disks to add to an instance,
	// The sum of these disks + the OSDisk must not be more than allowed on a linodes plan
	DataDisks map[string]*InstanceDisk `json:"dataDisks,omitempty"`

	// CredentialsRef is a reference to a Secret that contains the credentials
	// to use for provisioning this machine. If not supplied then these
	// credentials will be used in-order:
	//   1. LinodeMachine
	//   2. Owner LinodeCluster
	//   3. Controller
	// +optional
	CredentialsRef *corev1.SecretReference `json:"credentialsRef,omitempty"`
}

LinodeMachineSpec defines the desired state of LinodeMachine

func (*LinodeMachineSpec) DeepCopy

func (in *LinodeMachineSpec) DeepCopy() *LinodeMachineSpec

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

func (*LinodeMachineSpec) DeepCopyInto

func (in *LinodeMachineSpec) DeepCopyInto(out *LinodeMachineSpec)

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

type LinodeMachineStatus

type LinodeMachineStatus struct {
	// Ready is true when the provider resource is ready.
	// +optional
	// +kubebuilder:default=false
	Ready bool `json:"ready"`

	// Addresses contains the Linode instance associated addresses.
	Addresses []clusterv1.MachineAddress `json:"addresses,omitempty"`

	// InstanceState is the state of the Linode instance for this machine.
	// +optional
	InstanceState *linodego.InstanceStatus `json:"instanceState,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 LinodeMachine.
	// +optional
	Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}

LinodeMachineStatus defines the observed state of LinodeMachine

func (*LinodeMachineStatus) DeepCopy

func (in *LinodeMachineStatus) DeepCopy() *LinodeMachineStatus

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

func (*LinodeMachineStatus) DeepCopyInto

func (in *LinodeMachineStatus) DeepCopyInto(out *LinodeMachineStatus)

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

type LinodeMachineTemplate

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

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

LinodeMachineTemplate is the Schema for the linodemachinetemplates API

func (*LinodeMachineTemplate) DeepCopy

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

func (*LinodeMachineTemplate) DeepCopyInto

func (in *LinodeMachineTemplate) DeepCopyInto(out *LinodeMachineTemplate)

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

func (*LinodeMachineTemplate) DeepCopyObject

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

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

type LinodeMachineTemplateList

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

LinodeMachineTemplateList contains a list of LinodeMachineTemplate

func (*LinodeMachineTemplateList) DeepCopy

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

func (*LinodeMachineTemplateList) DeepCopyInto

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

func (*LinodeMachineTemplateList) DeepCopyObject

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

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

type LinodeMachineTemplateResource

type LinodeMachineTemplateResource struct {
	Spec LinodeMachineSpec `json:"spec"`
}

LinodeMachineTemplateResource describes the data needed to create a LinodeMachine from a template.

func (*LinodeMachineTemplateResource) DeepCopy

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

func (*LinodeMachineTemplateResource) DeepCopyInto

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

type LinodeMachineTemplateSpec

type LinodeMachineTemplateSpec struct {
	Template LinodeMachineTemplateResource `json:"template"`
}

LinodeMachineTemplateSpec defines the desired state of LinodeMachineTemplate

func (*LinodeMachineTemplateSpec) DeepCopy

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

func (*LinodeMachineTemplateSpec) DeepCopyInto

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

type LinodeObjectStorageBucket

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

	Spec   LinodeObjectStorageBucketSpec   `json:"spec,omitempty"`
	Status LinodeObjectStorageBucketStatus `json:"status,omitempty"`
}

LinodeObjectStorageBucket is the Schema for the linodeobjectstoragebuckets API

func (*LinodeObjectStorageBucket) DeepCopy

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

func (*LinodeObjectStorageBucket) DeepCopyInto

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

func (*LinodeObjectStorageBucket) DeepCopyObject

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

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

func (*LinodeObjectStorageBucket) GetConditions

func (b *LinodeObjectStorageBucket) GetConditions() clusterv1.Conditions

func (*LinodeObjectStorageBucket) SetConditions

func (b *LinodeObjectStorageBucket) SetConditions(conditions clusterv1.Conditions)

type LinodeObjectStorageBucketList

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

LinodeObjectStorageBucketList contains a list of LinodeObjectStorageBucket

func (*LinodeObjectStorageBucketList) DeepCopy

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

func (*LinodeObjectStorageBucketList) DeepCopyInto

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

func (*LinodeObjectStorageBucketList) DeepCopyObject

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

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

type LinodeObjectStorageBucketSpec

type LinodeObjectStorageBucketSpec struct {

	// Cluster is the ID of the Object Storage cluster for the bucket.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	Cluster string `json:"cluster"`

	// CredentialsRef is a reference to a Secret that contains the credentials to use for provisioning the bucket.
	// If not supplied then the credentials of the controller will be used.
	// +optional
	CredentialsRef *corev1.SecretReference `json:"credentialsRef"`

	// KeyGeneration may be modified to trigger rotations of access keys created for the bucket.
	// +optional
	// +kubebuilder:default=0
	KeyGeneration *int `json:"keyGeneration,omitempty"`

	// SecretType sets the type for the bucket-details secret that will be generated by the controller.
	// +optional
	// +kubebuilder:default=addons.cluster.x-k8s.io/resource-set
	SecretType string `json:"secretType,omitempty"`
}

LinodeObjectStorageBucketSpec defines the desired state of LinodeObjectStorageBucket

func (*LinodeObjectStorageBucketSpec) DeepCopy

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

func (*LinodeObjectStorageBucketSpec) DeepCopyInto

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

type LinodeObjectStorageBucketStatus

type LinodeObjectStorageBucketStatus struct {

	// Ready denotes that the bucket has been provisioned along with access keys.
	// +optional
	// +kubebuilder:default=false
	Ready bool `json:"ready"`

	// FailureMessage will be set in the event that there is a terminal problem
	// reconciling the Object Storage Bucket and will contain a verbose string
	// suitable for logging and human consumption.
	// +optional
	FailureMessage *string `json:"failureMessage,omitempty"`

	// Conditions specify the service state of the LinodeObjectStorageBucket.
	// +optional
	Conditions clusterv1.Conditions `json:"conditions,omitempty"`

	// Hostname is the address assigned to the bucket.
	// +optional
	Hostname *string `json:"hostname,omitempty"`

	// CreationTime specifies the creation timestamp for the bucket.
	// +optional
	CreationTime *metav1.Time `json:"creationTime,omitempty"`

	// LastKeyGeneration tracks the last known value of .spec.keyGeneration.
	// +optional
	LastKeyGeneration *int `json:"lastKeyGeneration,omitempty"`

	// KeySecretName specifies the name of the Secret containing access keys for the bucket.
	// +optional
	KeySecretName *string `json:"keySecretName,omitempty"`

	// AccessKeyRefs stores IDs for Object Storage keys provisioned along with the bucket.
	// +optional
	AccessKeyRefs []int `json:"accessKeyRefs,omitempty"`
}

LinodeObjectStorageBucketStatus defines the observed state of LinodeObjectStorageBucket

func (*LinodeObjectStorageBucketStatus) DeepCopy

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

func (*LinodeObjectStorageBucketStatus) DeepCopyInto

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

type LinodeVPC

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

	Spec   LinodeVPCSpec   `json:"spec,omitempty"`
	Status LinodeVPCStatus `json:"status,omitempty"`
}

LinodeVPC is the Schema for the linodemachines API

func (*LinodeVPC) DeepCopy

func (in *LinodeVPC) DeepCopy() *LinodeVPC

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

func (*LinodeVPC) DeepCopyInto

func (in *LinodeVPC) DeepCopyInto(out *LinodeVPC)

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

func (*LinodeVPC) DeepCopyObject

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

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

func (*LinodeVPC) GetConditions

func (lm *LinodeVPC) GetConditions() clusterv1.Conditions

func (*LinodeVPC) SetConditions

func (lm *LinodeVPC) SetConditions(conditions clusterv1.Conditions)

type LinodeVPCList

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

LinodeVPCList contains a list of LinodeVPC

func (*LinodeVPCList) DeepCopy

func (in *LinodeVPCList) DeepCopy() *LinodeVPCList

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

func (*LinodeVPCList) DeepCopyInto

func (in *LinodeVPCList) DeepCopyInto(out *LinodeVPCList)

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

func (*LinodeVPCList) DeepCopyObject

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

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

type LinodeVPCSpec

type LinodeVPCSpec struct {
	// +optional
	VPCID *int `json:"vpcID,omitempty"`
	// +optional
	Description string `json:"description,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	Region string `json:"region"`
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +optional
	Subnets []VPCSubnetCreateOptions `json:"subnets,omitempty"`

	// CredentialsRef is a reference to a Secret that contains the credentials to use for provisioning this VPC. If not
	// supplied then the credentials of the controller will be used.
	// +optional
	CredentialsRef *corev1.SecretReference `json:"credentialsRef,omitempty"`
}

LinodeVPCSpec defines the desired state of LinodeVPC

func (*LinodeVPCSpec) DeepCopy

func (in *LinodeVPCSpec) DeepCopy() *LinodeVPCSpec

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

func (*LinodeVPCSpec) DeepCopyInto

func (in *LinodeVPCSpec) DeepCopyInto(out *LinodeVPCSpec)

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

type LinodeVPCStatus

type LinodeVPCStatus struct {
	// Ready is true when the provider resource is ready.
	// +optional
	// +kubebuilder:default=false
	Ready bool `json:"ready"`

	// FailureReason will be set in the event that there is a terminal problem
	// reconciling the VPC 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 VPC'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 VPCs
	// can be added as events to the VPC object and/or logged in the
	// controller's output.
	// +optional
	FailureReason *VPCStatusError `json:"failureReason,omitempty"`

	// FailureMessage will be set in the event that there is a terminal problem
	// reconciling the VPC 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 VPC'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 VPCs
	// can be added as events to the VPC object and/or logged in the
	// controller's output.
	// +optional
	FailureMessage *string `json:"failureMessage,omitempty"`

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

LinodeVPCStatus defines the observed state of LinodeVPC

func (*LinodeVPCStatus) DeepCopy

func (in *LinodeVPCStatus) DeepCopy() *LinodeVPCStatus

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

func (*LinodeVPCStatus) DeepCopyInto

func (in *LinodeVPCStatus) DeepCopyInto(out *LinodeVPCStatus)

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

type NetworkSpec

type NetworkSpec struct {
	// LoadBalancerType is the type of load balancer to use, defaults to NodeBalancer if not otherwise set
	// +kubebuilder:validation:Enum=NodeBalancer
	// +optional
	LoadBalancerType string `json:"loadBalancerType,omitempty"`
	// LoadBalancerPort used by the api server. It must be valid ports range (1-65535). If omitted, default value is 6443.
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=65535
	// +optional
	LoadBalancerPort int `json:"loadBalancerPort,omitempty"`
	// NodeBalancerID is the id of api server NodeBalancer.
	// +optional
	NodeBalancerID *int `json:"nodeBalancerID,omitempty"`
	// NodeBalancerConfigID is the config ID of api server NodeBalancer.
	// +optional
	NodeBalancerConfigID *int `json:"nodeBalancerConfigID,omitempty"`
}

NetworkSpec encapsulates Linode networking resources.

func (*NetworkSpec) DeepCopy

func (in *NetworkSpec) DeepCopy() *NetworkSpec

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

func (*NetworkSpec) DeepCopyInto

func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)

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

type VPCIPv4

type VPCIPv4 struct {
	VPC     string `json:"vpc,omitempty"`
	NAT1To1 string `json:"nat1to1,omitempty"`
}

VPCIPv4 defines VPC IPV4 settings

func (*VPCIPv4) DeepCopy

func (in *VPCIPv4) DeepCopy() *VPCIPv4

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

func (*VPCIPv4) DeepCopyInto

func (in *VPCIPv4) DeepCopyInto(out *VPCIPv4)

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

type VPCStatusError

type VPCStatusError string

VPCStatusError defines errors states for VPC objects.

const (
	// CreateVPCError indicates that an error was encountered
	// when trying to create the VPC.
	CreateVPCError VPCStatusError = "CreateError"

	// UpdateVPCError indicates that an error was encountered
	// when trying to update the VPC.
	UpdateVPCError VPCStatusError = "UpdateError"

	// DeleteVPCError indicates that an error was encountered
	// when trying to delete the VPC.
	DeleteVPCError VPCStatusError = "DeleteError"
)

type VPCSubnetCreateOptions

type VPCSubnetCreateOptions struct {
	// +kubebuilder:validation:MinLength=3
	// +kubebuilder:validation:MaxLength=63
	// +optional
	Label string `json:"label,omitempty"`
	// +optional
	IPv4 string `json:"ipv4,omitempty"`
}

VPCSubnetCreateOptions defines subnet options

func (*VPCSubnetCreateOptions) DeepCopy

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

func (*VPCSubnetCreateOptions) DeepCopyInto

func (in *VPCSubnetCreateOptions) DeepCopyInto(out *VPCSubnetCreateOptions)

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