v1alpha4

package
v0.0.0-...-003fa6a Latest Latest
Warning

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

Go to latest
Published: Aug 4, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the provider v1alpha1 API group +kubebuilder:object:generate=true +groupName=provider.giantswarm.io

Index

Constants

View Source
const (
	// ClusterFinalizer allows ReconcileKVMCluster to clean up resources associated with KVMCluster before
	// removing it from the apiserver.
	ClusterFinalizer = "kvmcluster.infrastructure.cluster.x-k8s.io"
)

Variables

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

	// 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 (
	// MachineStatePending is the string representing a virtual machine in a pending state.
	MachineStatePending = MachineState("pending")

	// MachineStateRunning is the string representing a virtual machine in a running state.
	MachineStateRunning = MachineState("running")

	// MachineStateShuttingDown is the string representing a virtual machine shutting down.
	MachineStateShuttingDown = MachineState("shutting-down")

	// MachineStateTerminated is the string representing a virtual machine that has been terminated.
	MachineStateTerminated = MachineState("terminated")

	// MachineRunningStates defines the set of states in which a virtual machine is
	// running or going to be running soon.
	MachineRunningStates = sets.NewString(
		string(MachineStatePending),
		string(MachineStateRunning),
	)
)

Functions

This section is empty.

Types

type DockerNetwork

type DockerNetwork struct {
	// CIDR is the subnet to be used by the docker bridge network on each machine.
	CIDR string `json:"cidr"`
}

func (*DockerNetwork) DeepCopy

func (in *DockerNetwork) DeepCopy() *DockerNetwork

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

func (*DockerNetwork) DeepCopyInto

func (in *DockerNetwork) DeepCopyInto(out *DockerNetwork)

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

type HostVolume

type HostVolume struct {
	// MountTag is the value of the mount tag label which will be used to select the PV to mount to the machine.
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:MaxLength=31
	MountTag string `json:"mountTag"`

	// HostPath is the path of the directory in the management cluster machine to be mounted into the workload cluster machine.
	// +kubebuilder:validation:MinLength=1
	HostPath string `json:"hostPath"`
}

func (*HostVolume) DeepCopy

func (in *HostVolume) DeepCopy() *HostVolume

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

func (*HostVolume) DeepCopyInto

func (in *HostVolume) DeepCopyInto(out *HostVolume)

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

type KVMCluster

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

	Spec   KVMClusterSpec   `json:"spec,omitempty"`
	Status KVMClusterStatus `json:"status,omitempty"`
}

KVMCluster is the Schema for the kvmclusters API

func (*KVMCluster) DeepCopy

func (in *KVMCluster) DeepCopy() *KVMCluster

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

func (*KVMCluster) DeepCopyInto

func (in *KVMCluster) DeepCopyInto(out *KVMCluster)

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

func (*KVMCluster) DeepCopyObject

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

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

func (*KVMCluster) GetConditions

func (r *KVMCluster) GetConditions() clusterv1.Conditions

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

func (*KVMCluster) SetConditions

func (r *KVMCluster) SetConditions(conditions clusterv1.Conditions)

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

type KVMClusterList

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

KVMClusterList contains a list of KVMCluster

func (*KVMClusterList) DeepCopy

func (in *KVMClusterList) DeepCopy() *KVMClusterList

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

func (*KVMClusterList) DeepCopyInto

func (in *KVMClusterList) DeepCopyInto(out *KVMClusterList)

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

func (*KVMClusterList) DeepCopyObject

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

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

type KVMClusterSpec

type KVMClusterSpec struct {
	// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
	// +optional
	ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"`
}

KVMClusterSpec defines the desired state of KVMCluster

func (*KVMClusterSpec) DeepCopy

func (in *KVMClusterSpec) DeepCopy() *KVMClusterSpec

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

func (*KVMClusterSpec) DeepCopyInto

func (in *KVMClusterSpec) DeepCopyInto(out *KVMClusterSpec)

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

type KVMClusterStatus

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

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

KVMClusterStatus defines the observed state of KVMCluster

func (*KVMClusterStatus) DeepCopy

func (in *KVMClusterStatus) DeepCopy() *KVMClusterStatus

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

func (*KVMClusterStatus) DeepCopyInto

func (in *KVMClusterStatus) DeepCopyInto(out *KVMClusterStatus)

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

type KVMMachine

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

	Spec   KVMMachineSpec   `json:"spec,omitempty"`
	Status KVMMachineStatus `json:"status,omitempty"`
}

KVMMachine is the Schema for the kvmmachines API

func (*KVMMachine) DeepCopy

func (in *KVMMachine) DeepCopy() *KVMMachine

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

func (*KVMMachine) DeepCopyInto

func (in *KVMMachine) DeepCopyInto(out *KVMMachine)

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

func (*KVMMachine) DeepCopyObject

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

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

func (*KVMMachine) GetConditions

func (r *KVMMachine) GetConditions() clusterv1.Conditions

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

func (*KVMMachine) SetConditions

func (r *KVMMachine) SetConditions(conditions clusterv1.Conditions)

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

type KVMMachineList

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

KVMMachineList contains a list of KVMMachine

func (*KVMMachineList) DeepCopy

func (in *KVMMachineList) DeepCopy() *KVMMachineList

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

func (*KVMMachineList) DeepCopyInto

func (in *KVMMachineList) DeepCopyInto(out *KVMMachineList)

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

func (*KVMMachineList) DeepCopyObject

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

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

type KVMMachineSpec

type KVMMachineSpec struct {
	// ProviderID is the unique identifier of the machine assigned by the provider.
	ProviderID *string `json:"providerID,omitempty"`

	// ResourceRequirements defines the compute and storage requirements of the machine.
	ResourceRequirements MachineResources `json:"resourceRequirements,omitempty"`

	// HostVolumes defines the host volumes (PV) to be mounted into the workload cluster machine.
	// +optional
	// +nullable
	HostVolumes []HostVolume `json:"hostVolumes,omitempty"`
}

KVMMachineSpec defines the desired state of KVMMachine

func (*KVMMachineSpec) DeepCopy

func (in *KVMMachineSpec) DeepCopy() *KVMMachineSpec

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

func (*KVMMachineSpec) DeepCopyInto

func (in *KVMMachineSpec) DeepCopyInto(out *KVMMachineSpec)

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

type KVMMachineStatus

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

	// MachineState is the state of the underlying virtual machine.
	// +optional
	MachineState *MachineState `json:"machineState,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 KVMMachine.
	// +optional
	Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}

KVMMachineStatus defines the observed state of KVMMachine

func (*KVMMachineStatus) DeepCopy

func (in *KVMMachineStatus) DeepCopy() *KVMMachineStatus

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

func (*KVMMachineStatus) DeepCopyInto

func (in *KVMMachineStatus) DeepCopyInto(out *KVMMachineStatus)

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

type KVMMachineTemplate

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

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

KVMMachineTemplate is the Schema for the kvmmachinetemplates API

func (*KVMMachineTemplate) DeepCopy

func (in *KVMMachineTemplate) DeepCopy() *KVMMachineTemplate

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

func (*KVMMachineTemplate) DeepCopyInto

func (in *KVMMachineTemplate) DeepCopyInto(out *KVMMachineTemplate)

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

func (*KVMMachineTemplate) DeepCopyObject

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

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

type KVMMachineTemplateList

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

KVMMachineTemplateList contains a list of KVMMachineTemplate.

func (*KVMMachineTemplateList) DeepCopy

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

func (*KVMMachineTemplateList) DeepCopyInto

func (in *KVMMachineTemplateList) DeepCopyInto(out *KVMMachineTemplateList)

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

func (*KVMMachineTemplateList) DeepCopyObject

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

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

type KVMMachineTemplateResource

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

KVMMachineTemplateResource describes the data needed to create am KVMMachine from a template

func (*KVMMachineTemplateResource) DeepCopy

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

func (*KVMMachineTemplateResource) DeepCopyInto

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

type KVMMachineTemplateSpec

type KVMMachineTemplateSpec struct {
	Template KVMMachineTemplateResource `json:"template"`
}

KVMMachineTemplateSpec defines the desired state of KVMMachineTemplate

func (*KVMMachineTemplateSpec) DeepCopy

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

func (*KVMMachineTemplateSpec) DeepCopyInto

func (in *KVMMachineTemplateSpec) DeepCopyInto(out *KVMMachineTemplateSpec)

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

type MachineResources

type MachineResources struct {
	// CPU is the amount of CPU (whole or partial) reserved for the virtual machine.
	CPU resource.Quantity `json:"cpu"`

	// Disk is the amount of disk storage reserved for the virtual machine.
	Disk resource.Quantity `json:"disk"`

	// Memory is the amount of memory reserved for the virtual machine.
	Memory resource.Quantity `json:"memory"`

	// DockerVolumeSize is the size of the docker volume used for for the virtual machine container.
	DockerVolumeSize resource.Quantity `json:"dockerVolumeSize"`
}

MachineResources describes the compute, memory, and storage requirements for a KVM machine and its host container.

func (*MachineResources) DeepCopy

func (in *MachineResources) DeepCopy() *MachineResources

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

func (*MachineResources) DeepCopyInto

func (in *MachineResources) DeepCopyInto(out *MachineResources)

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

type MachineState

type MachineState string

MachineState describes the state of a KVM virtual machine.

Jump to

Keyboard shortcuts

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