v1alpha1

package
v0.1.8 Latest Latest
Warning

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

Go to latest
Published: Nov 14, 2023 License: Apache-2.0 Imports: 8 Imported by: 8

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

View Source
const (
	// VMProvisionedCondition documents the status of the provisioning of the VM
	// generated by a KubevirtMachine.
	VMProvisionedCondition clusterv1.ConditionType = "VMProvisioned"

	// WaitingForClusterInfrastructureReason (Severity=Info) documents a KubevirtMachine waiting for the cluster
	// infrastructure to be ready before starting to create the container that provides the KubevirtMachine
	// infrastructure.
	WaitingForClusterInfrastructureReason = "WaitingForClusterInfrastructure"

	// WaitingForBootstrapDataReason (Severity=Info) documents a KubevirtMachine waiting for the bootstrap
	// script to be ready before starting to create the VM that provides the KubevirtMachine infrastructure.
	WaitingForBootstrapDataReason = "WaitingForBootstrapData"
)
View Source
const (
	// BootstrapExecSucceededCondition provides an observation of the KubevirtMachine bootstrap process.
	// 	It is set based on successful execution of bootstrap commands and on the existence of
	//	the /run/cluster-api/bootstrap-success.complete file.
	// The condition gets generated after VMProvisionedCondition is True.
	BootstrapExecSucceededCondition clusterv1.ConditionType = "BootstrapExecSucceeded"

	// BootstrappingReason documents (Severity=Info) a KubevirtMachine currently executing the bootstrap
	// script that creates the Kubernetes node on the newly provisioned machine infrastructure.
	BootstrappingReason = "Bootstrapping"

	// BootstrapFailedReason documents (Severity=Warning) a KubevirtMachine controller detecting an error while
	// bootstrapping the Kubernetes node on the machine just provisioned; those kind of errors are usually
	// transient and failed bootstrap are automatically re-tried by the controller.
	BootstrapFailedReason = "BootstrapFailed"
)
View Source
const (
	// LoadBalancerAvailableCondition documents the availability of the service that implements the cluster load balancer.
	LoadBalancerAvailableCondition clusterv1.ConditionType = "LoadBalancerAvailable"

	// LoadBalancerProvisioningFailedReason (Severity=Warning) documents a KubevirtCluster controller detecting
	// an error while provisioning the service that provides the cluster load balancer; those kind of
	// errors are usually transient and failed provisioning are automatically re-tried by the controller.
	LoadBalancerProvisioningFailedReason = "LoadBalancerProvisioningFailed"
)
View Source
const (
	KubevirtMachineNameLabel      = "capk.cluster.x-k8s.io/kubevirt-machine-name"
	KubevirtMachineNamespaceLabel = "capk.cluster.x-k8s.io/kubevirt-machine-namespace"

	KubevirtMachineVMTerminalLabel = "capk.cluster.x-k8s.io/vm-is-terminal"
)
View Source
const (
	VmiDeletionGraceTime       = "capk.cluster.x-k8s.io/vmi-deletion-grace-time"
	VmiDeletionGraceTimeEscape = "capk.cluster.x-k8s.io~1vmi-deletion-grace-time"
)
View Source
const (
	// ClusterFinalizer allows KubevirtClusterReconciler to clean up resources associated with KubevirtCluster before
	// removing it from the apiserver.
	ClusterFinalizer = "kubevirtcluster.infrastructure.cluster.x-k8s.io"
)
View Source
const (
	// MachineFinalizer allows ReconcileKubevirtMachine to clean up resources associated with machine before
	// removing it from the apiserver.
	MachineFinalizer = "kubevirtmachine.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: "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
)

Functions

This section is empty.

Types

type APIEndpoint

type APIEndpoint struct {
	// Host is the hostname on which the API server is serving.
	Host string `json:"host"`

	// Port is the port on which the API server is serving.
	Port int `json:"port"`
}

APIEndpoint represents a reachable Kubernetes API endpoint.

func (*APIEndpoint) DeepCopy

func (in *APIEndpoint) DeepCopy() *APIEndpoint

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

func (*APIEndpoint) DeepCopyInto

func (in *APIEndpoint) DeepCopyInto(out *APIEndpoint)

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

type ControlPlaneServiceTemplate

type ControlPlaneServiceTemplate struct {
	// Service metadata allows to set labels, annotations and namespace for the service.
	// When infraClusterSecretRef is used, ControlPlaneService take the kubeconfig namespace by default if metadata.namespace is not specified.
	// This field is optional.
	// +kubebuilder:pruning:PreserveUnknownFields
	// +nullable
	ObjectMeta metav1.ObjectMeta `json:"metadata,omitempty"`
	// Service specification allows to override some fields in the service spec.
	// Note, it does not aim cover all fields of the service spec.
	// +optional
	Spec ServiceSpecTemplate `json:"spec,omitempty"`
}

ControlPlaneServiceTemplate describes the template for the control plane service.

func (*ControlPlaneServiceTemplate) DeepCopy

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

func (*ControlPlaneServiceTemplate) DeepCopyInto

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

type KubevirtCluster

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

	Spec   KubevirtClusterSpec   `json:"spec,omitempty"`
	Status KubevirtClusterStatus `json:"status,omitempty"`
}

KubevirtCluster is the Schema for the kubevirtclusters API.

func (*KubevirtCluster) DeepCopy

func (in *KubevirtCluster) DeepCopy() *KubevirtCluster

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

func (*KubevirtCluster) DeepCopyInto

func (in *KubevirtCluster) DeepCopyInto(out *KubevirtCluster)

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

func (*KubevirtCluster) DeepCopyObject

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

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

func (*KubevirtCluster) GetConditions

func (c *KubevirtCluster) GetConditions() clusterv1.Conditions

func (*KubevirtCluster) SetConditions

func (c *KubevirtCluster) SetConditions(conditions clusterv1.Conditions)

type KubevirtClusterList

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

KubevirtClusterList contains a list of KubevirtCluster.

func (*KubevirtClusterList) DeepCopy

func (in *KubevirtClusterList) DeepCopy() *KubevirtClusterList

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

func (*KubevirtClusterList) DeepCopyInto

func (in *KubevirtClusterList) DeepCopyInto(out *KubevirtClusterList)

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

func (*KubevirtClusterList) DeepCopyObject

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

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

type KubevirtClusterSpec

type KubevirtClusterSpec struct {

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

	// ControlPlaneServiceTemplate can be used to modify service that fronts the control plane nodes to handle the
	// api-server traffic (port 6443). This field is optional, by default control plane nodes will use a service
	// of type ClusterIP, which will make workload cluster only accessible within the same cluster. Note, this does
	// not aim to expose the entire Service spec to users, but only provides capability to modify the service metadata
	// and the service type.
	// +optional
	ControlPlaneServiceTemplate ControlPlaneServiceTemplate `json:"controlPlaneServiceTemplate,omitempty"`

	// SSHKeys is a reference to a local struct for SSH keys persistence.
	// +optional
	SshKeys SSHKeys `json:"sshKeys,omitempty"`

	// InfraClusterSecretRef is a reference to a secret with a kubeconfig for external cluster used for infra.
	// +optional
	InfraClusterSecretRef *corev1.ObjectReference `json:"infraClusterSecretRef,omitempty"`
}

KubevirtClusterSpec defines the desired state of KubevirtCluster.

func (*KubevirtClusterSpec) DeepCopy

func (in *KubevirtClusterSpec) DeepCopy() *KubevirtClusterSpec

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

func (*KubevirtClusterSpec) DeepCopyInto

func (in *KubevirtClusterSpec) DeepCopyInto(out *KubevirtClusterSpec)

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

type KubevirtClusterStatus

type KubevirtClusterStatus struct {
	// Ready denotes that the infrastructure is ready.
	// +kubebuilder:default:=false
	Ready bool `json:"ready"`

	// FailureDomains don't mean much in CAPD since it's all local, but we can see how the rest of cluster API
	// will use this if we populate it.
	FailureDomains clusterv1.FailureDomains `json:"failureDomains,omitempty"`

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

KubevirtClusterStatus defines the observed state of KubevirtCluster.

func (*KubevirtClusterStatus) DeepCopy

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

func (*KubevirtClusterStatus) DeepCopyInto

func (in *KubevirtClusterStatus) DeepCopyInto(out *KubevirtClusterStatus)

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

type KubevirtClusterTemplate added in v0.1.8

type KubevirtClusterTemplate struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              KubevirtClusterTemplateSpec `json:"spec,omitempty"`
}

KubevirtClusterTemplate is the Schema for the kubevirtclustertemplates API.

func (*KubevirtClusterTemplate) DeepCopy added in v0.1.8

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

func (*KubevirtClusterTemplate) DeepCopyInto added in v0.1.8

func (in *KubevirtClusterTemplate) DeepCopyInto(out *KubevirtClusterTemplate)

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

func (*KubevirtClusterTemplate) DeepCopyObject added in v0.1.8

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

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

type KubevirtClusterTemplateList added in v0.1.8

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

KubevirtClusterTemplateList contains a list of KubevirtClusterTemplates.

func (*KubevirtClusterTemplateList) DeepCopy added in v0.1.8

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

func (*KubevirtClusterTemplateList) DeepCopyInto added in v0.1.8

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

func (*KubevirtClusterTemplateList) DeepCopyObject added in v0.1.8

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

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

type KubevirtClusterTemplateResource added in v0.1.8

type KubevirtClusterTemplateResource struct {
	ObjectMeta clusterv1.ObjectMeta `json:"metadata,omitempty"`
	Spec       KubevirtClusterSpec  `json:"spec"`
}

KubevirtClusterTemplateResource describes the data needed to create a KubevirtCluster from a template.

func (*KubevirtClusterTemplateResource) DeepCopy added in v0.1.8

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

func (*KubevirtClusterTemplateResource) DeepCopyInto added in v0.1.8

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

type KubevirtClusterTemplateSpec added in v0.1.8

type KubevirtClusterTemplateSpec struct {
	Template KubevirtClusterTemplateResource `json:"template"`
}

KubevirtClusterTemplateSpec defines the desired state of KubevirtClusterTemplate.

func (*KubevirtClusterTemplateSpec) DeepCopy added in v0.1.8

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

func (*KubevirtClusterTemplateSpec) DeepCopyInto added in v0.1.8

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

type KubevirtMachine

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

	Spec   KubevirtMachineSpec   `json:"spec,omitempty"`
	Status KubevirtMachineStatus `json:"status,omitempty"`
}

KubevirtMachine is the Schema for the kubevirtmachines API.

func (*KubevirtMachine) DeepCopy

func (in *KubevirtMachine) DeepCopy() *KubevirtMachine

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

func (*KubevirtMachine) DeepCopyInto

func (in *KubevirtMachine) DeepCopyInto(out *KubevirtMachine)

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

func (*KubevirtMachine) DeepCopyObject

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

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

func (*KubevirtMachine) GetConditions

func (c *KubevirtMachine) GetConditions() clusterv1.Conditions

func (*KubevirtMachine) SetConditions

func (c *KubevirtMachine) SetConditions(conditions clusterv1.Conditions)

type KubevirtMachineList

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

KubevirtMachineList contains a list of KubevirtMachine.

func (*KubevirtMachineList) DeepCopy

func (in *KubevirtMachineList) DeepCopy() *KubevirtMachineList

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

func (*KubevirtMachineList) DeepCopyInto

func (in *KubevirtMachineList) DeepCopyInto(out *KubevirtMachineList)

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

func (*KubevirtMachineList) DeepCopyObject

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

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

type KubevirtMachineSpec

type KubevirtMachineSpec struct {
	VirtualMachineTemplate VirtualMachineTemplateSpec `json:"virtualMachineTemplate,omitempty"`

	// ProviderID TBD what to use for Kubevirt
	// +optional
	ProviderID *string `json:"providerID,omitempty"`

	// BootstrapCheckSpec defines how the CAPK controller is checking CAPI Sentinel file inside the VM.
	// +optional
	BootstrapCheckSpec VirtualMachineBootstrapCheckSpec `json:"virtualMachineBootstrapCheck,omitempty"`

	// InfraClusterSecretRef is a reference to a secret with a kubeconfig for external cluster used for infra.
	// When nil, this defaults to the value present in the KubevirtCluster object's spec associated with this machine.
	// +optional
	InfraClusterSecretRef *corev1.ObjectReference `json:"infraClusterSecretRef,omitempty"`
}

KubevirtMachineSpec defines the desired state of KubevirtMachine.

func (*KubevirtMachineSpec) DeepCopy

func (in *KubevirtMachineSpec) DeepCopy() *KubevirtMachineSpec

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

func (*KubevirtMachineSpec) DeepCopyInto

func (in *KubevirtMachineSpec) DeepCopyInto(out *KubevirtMachineSpec)

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

type KubevirtMachineStatus

type KubevirtMachineStatus struct {
	// Ready denotes that the machine is ready
	// +optional
	Ready bool `json:"ready"`

	// LoadBalancerConfigured denotes that the machine has been
	// added to the load balancer
	// +optional
	LoadBalancerConfigured bool `json:"loadBalancerConfigured,omitempty"`

	// Addresses contains the associated addresses for the machine.
	// +optional
	Addresses []clusterv1.MachineAddress `json:"addresses,omitempty"`

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

	// NodeUpdated denotes that the ProviderID is updated on Node of this KubevirtMachine
	// +optional
	NodeUpdated bool `json:"nodeupdated"`

	// 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"`
}

KubevirtMachineStatus defines the observed state of KubevirtMachine.

func (*KubevirtMachineStatus) DeepCopy

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

func (*KubevirtMachineStatus) DeepCopyInto

func (in *KubevirtMachineStatus) DeepCopyInto(out *KubevirtMachineStatus)

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

type KubevirtMachineTemplate

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

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

KubevirtMachineTemplate is the Schema for the kubevirtmachinetemplates API.

func (*KubevirtMachineTemplate) DeepCopy

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

func (*KubevirtMachineTemplate) DeepCopyInto

func (in *KubevirtMachineTemplate) DeepCopyInto(out *KubevirtMachineTemplate)

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

func (*KubevirtMachineTemplate) DeepCopyObject

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

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

type KubevirtMachineTemplateList

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

KubevirtMachineTemplateList contains a list of KubevirtMachineTemplate.

func (*KubevirtMachineTemplateList) DeepCopy

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

func (*KubevirtMachineTemplateList) DeepCopyInto

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

func (*KubevirtMachineTemplateList) DeepCopyObject

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

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

type KubevirtMachineTemplateResource

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

KubevirtMachineTemplateResource describes the data needed to create a KubevirtMachine from a template.

func (*KubevirtMachineTemplateResource) DeepCopy

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

func (*KubevirtMachineTemplateResource) DeepCopyInto

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

type KubevirtMachineTemplateSpec

type KubevirtMachineTemplateSpec struct {
	Template KubevirtMachineTemplateResource `json:"template"`
}

KubevirtMachineTemplateSpec defines the desired state of KubevirtMachineTemplate.

func (*KubevirtMachineTemplateSpec) DeepCopy

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

func (*KubevirtMachineTemplateSpec) DeepCopyInto

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

type SSHKeys

type SSHKeys struct {
	// ConfigRef is a reference to a resource containing the keys.
	// The reference is optional to allow users/operators to specify
	// Bootstrap.DataSecretName without the need of a controller.
	// +optional
	ConfigRef *corev1.ObjectReference `json:"configRef,omitempty"`

	// DataSecretName is the name of the secret that stores ssh keys.
	// +optional
	DataSecretName *string `json:"dataSecretName,omitempty"`
}

SSHKeys encapsulates fields for SSH keys persistence.

func (*SSHKeys) DeepCopy

func (in *SSHKeys) DeepCopy() *SSHKeys

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

func (*SSHKeys) DeepCopyInto

func (in *SSHKeys) DeepCopyInto(out *SSHKeys)

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

type ServiceSpecTemplate

type ServiceSpecTemplate struct {
	// Type determines how the Service is exposed. Defaults to ClusterIP. Valid
	// options are ExternalName, ClusterIP, NodePort, and LoadBalancer.
	// More info: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types
	// +optional
	Type corev1.ServiceType `json:"type,omitempty"`
}

ServiceSpecTemplate describes the service spec template.

func (*ServiceSpecTemplate) DeepCopy

func (in *ServiceSpecTemplate) DeepCopy() *ServiceSpecTemplate

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

func (*ServiceSpecTemplate) DeepCopyInto

func (in *ServiceSpecTemplate) DeepCopyInto(out *ServiceSpecTemplate)

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

type VirtualMachineBootstrapCheckSpec added in v0.1.7

type VirtualMachineBootstrapCheckSpec struct {
	// CheckStrategy describes how CAPK controller will validate a successful CAPI bootstrap.
	// Following specified method, CAPK will try to retrieve the state of the CAPI Sentinel file from the VM.
	// Possible values are: "none" or "ssh" (default is "ssh") and this value is validated by apiserver.
	// +optional
	// +kubebuilder:validation:Enum=none;ssh
	// +kubebuilder:default:=ssh
	CheckStrategy string `json:"checkStrategy,omitempty"`
}

VirtualMachineBootstrapCheckSpec defines how the controller will remotely check CAPI Sentinel file content.

func (*VirtualMachineBootstrapCheckSpec) DeepCopy added in v0.1.7

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

func (*VirtualMachineBootstrapCheckSpec) DeepCopyInto added in v0.1.7

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

type VirtualMachineTemplateSpec

type VirtualMachineTemplateSpec struct {
	// +kubebuilder:pruning:PreserveUnknownFields
	// +nullable
	ObjectMeta metav1.ObjectMeta `json:"metadata,omitempty"`
	// VirtualMachineSpec contains the VirtualMachine specification.
	Spec kubevirtv1.VirtualMachineSpec `json:"spec,omitempty" valid:"required"`
}

VirtualMachineTemplateSpec defines the desired state of the kubevirt VM.

func (*VirtualMachineTemplateSpec) DeepCopy

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

func (*VirtualMachineTemplateSpec) DeepCopyInto

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