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
- Variables
- func RegisterDefaults(scheme *runtime.Scheme) error
- func SetDefaults_NetworkInterface(obj *microvm.NetworkInterface)
- func SetObjectDefaults_MicrovmMachine(in *MicrovmMachine)
- func SetObjectDefaults_MicrovmMachineTemplate(in *MicrovmMachineTemplate)
- type MicrovmCluster
- func (in *MicrovmCluster) DeepCopy() *MicrovmCluster
- func (in *MicrovmCluster) DeepCopyInto(out *MicrovmCluster)
- func (in *MicrovmCluster) DeepCopyObject() runtime.Object
- func (r *MicrovmCluster) Default()
- func (r *MicrovmCluster) GetConditions() clusterv1.Conditions
- func (r *MicrovmCluster) SetConditions(conditions clusterv1.Conditions)
- func (r *MicrovmCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *MicrovmCluster) ValidateCreate() error
- func (r *MicrovmCluster) ValidateDelete() error
- func (r *MicrovmCluster) ValidateUpdate(old runtime.Object) error
- type MicrovmClusterList
- type MicrovmClusterSpec
- type MicrovmClusterStatus
- type MicrovmHost
- type MicrovmMachine
- func (in *MicrovmMachine) DeepCopy() *MicrovmMachine
- func (in *MicrovmMachine) DeepCopyInto(out *MicrovmMachine)
- func (in *MicrovmMachine) DeepCopyObject() runtime.Object
- func (r *MicrovmMachine) Default()
- func (r *MicrovmMachine) GetConditions() clusterv1.Conditions
- func (r *MicrovmMachine) SetConditions(conditions clusterv1.Conditions)
- func (r *MicrovmMachine) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *MicrovmMachine) ValidateCreate() error
- func (r *MicrovmMachine) ValidateDelete() error
- func (r *MicrovmMachine) ValidateUpdate(old runtime.Object) error
- type MicrovmMachineList
- type MicrovmMachineSpec
- type MicrovmMachineStatus
- type MicrovmMachineTemplate
- func (in *MicrovmMachineTemplate) DeepCopy() *MicrovmMachineTemplate
- func (in *MicrovmMachineTemplate) DeepCopyInto(out *MicrovmMachineTemplate)
- func (in *MicrovmMachineTemplate) DeepCopyObject() runtime.Object
- func (r *MicrovmMachineTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *MicrovmMachineTemplate) ValidateCreate() error
- func (r *MicrovmMachineTemplate) ValidateDelete() error
- func (r *MicrovmMachineTemplate) ValidateUpdate(old runtime.Object) error
- type MicrovmMachineTemplateList
- type MicrovmMachineTemplateResource
- type MicrovmMachineTemplateSpec
- type Placement
- type SSHPublicKey
- type StaticPoolPlacement
- type TLSConfig
Constants ¶
const ( // LoadBalancerAvailableCondition is a condition that indicates that the API server // load balancer is available. LoadBalancerAvailableCondition clusterv1.ConditionType = "LoadBalancerAvailable" // LoadBalancerFailedReason is used to indicate any error with the // availability of the load balancer. LoadBalancerFailedReason = "LoadBalancerAvailabilityFailed" // LoadBalancerNotAvailableReason is used to indicate that the load balancer isn't available. LoadBalancerNotAvailableReason = "LoadBalancerNotAvailable" )
const ( // MicrovmReadyCondition indicates that the microvm is in a running state. MicrovmReadyCondition clusterv1.ConditionType = "MicrovmReady" // MicrovmProvisionFailedReason indicates that the microvm failed to provision. MicrovmProvisionFailedReason = "MicrovmProvisionFailed" // MicrovmPendingReason indicates the microvm is in a pending state. MicrovmPendingReason = "MicrovmPending" // MicrovmDeletingReason indicates the microvm is in a deleted state. MicrovmDeletingReason = "MicrovmDeleting" // MicrovmDeletedFailedReason indicates the microvm failed to deleted cleanly. MicrovmDeleteFailedReason = "MicrovmDeleteFailed" // MicrovmUnknownStateReason indicates that the microvm in in an unknown or unsupported state // for reconciliation. MicrovmUnknownStateReason = "MicrovmUnknownState" // WaitingForClusterInfraReason indicates that the microvm reconciliation is waiting for // the cluster infrastructure to be ready before proceeding. WaitingForClusterInfraReason = "WaitingForClusterInfra" // WaitingForBootstrapDataReason indicates that microvm is waiting for the bootstrap data // to be available before proceeding. WaitingForBootstrapDataReason = "WaitingForBoostrapData" )
const ( // MachineFinalizer allows ReconcileMicrovmMachine to clean up resources associated with MicrovmMachine // before removing it from the apiserver. MachineFinalizer = "microvmmachine.infrastructure.cluster.x-k8s.io" )
Variables ¶
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 ¶
func RegisterDefaults ¶
RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.
func SetDefaults_NetworkInterface ¶
func SetDefaults_NetworkInterface(obj *microvm.NetworkInterface)
func SetObjectDefaults_MicrovmMachine ¶
func SetObjectDefaults_MicrovmMachine(in *MicrovmMachine)
func SetObjectDefaults_MicrovmMachineTemplate ¶
func SetObjectDefaults_MicrovmMachineTemplate(in *MicrovmMachineTemplate)
Types ¶
type MicrovmCluster ¶
type MicrovmCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec MicrovmClusterSpec `json:"spec,omitempty"` Status MicrovmClusterStatus `json:"status,omitempty"` }
MicrovmCluster is the Schema for the microvmclusters API.
func (*MicrovmCluster) DeepCopy ¶
func (in *MicrovmCluster) DeepCopy() *MicrovmCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmCluster.
func (*MicrovmCluster) DeepCopyInto ¶
func (in *MicrovmCluster) DeepCopyInto(out *MicrovmCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MicrovmCluster) DeepCopyObject ¶
func (in *MicrovmCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MicrovmCluster) Default ¶
func (r *MicrovmCluster) Default()
Default satisfies the defaulting webhook interface.
func (*MicrovmCluster) GetConditions ¶
func (r *MicrovmCluster) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the MicrovmCluster resource.
func (*MicrovmCluster) SetConditions ¶
func (r *MicrovmCluster) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the underlying service state of the MicrovmCluster to the predescribed clusterv1.Conditions.
func (*MicrovmCluster) SetupWebhookWithManager ¶
func (r *MicrovmCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*MicrovmCluster) ValidateCreate ¶
func (r *MicrovmCluster) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*MicrovmCluster) ValidateDelete ¶
func (r *MicrovmCluster) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*MicrovmCluster) ValidateUpdate ¶
func (r *MicrovmCluster) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type MicrovmClusterList ¶
type MicrovmClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []MicrovmCluster `json:"items"` }
MicrovmClusterList contains a list of MicrovmCluster. +k8s:defaulter-gen=true
func (*MicrovmClusterList) DeepCopy ¶
func (in *MicrovmClusterList) DeepCopy() *MicrovmClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmClusterList.
func (*MicrovmClusterList) DeepCopyInto ¶
func (in *MicrovmClusterList) DeepCopyInto(out *MicrovmClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MicrovmClusterList) DeepCopyObject ¶
func (in *MicrovmClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MicrovmClusterSpec ¶
type MicrovmClusterSpec struct { // ControlPlaneEndpoint represents the endpoint used to communicate with the control plane. // // See https://cluster-api.sigs.k8s.io/developer/architecture/controllers/cluster.html // for more details. // // +optional ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"` // SSHPublicKeys is a list of SSHPublicKeys and their associated users. // If specified these keys will be applied to all machine created unless you // specify different keys at the machine level. // +optional SSHPublicKeys []microvm.SSHPublicKey `json:"sshPublicKeys,omitempty"` // Placement specifies how machines for the cluster should be placed onto hosts (i.e. where the microvms are created). // +kubebuilder:validation:Required Placement Placement `json:"placement"` // MicrovmProxy is the proxy server details to use when calling the microvm service. This is an // alteranative to using the http proxy environment variables and applied purely to the grpc service. MicrovmProxy *flclient.Proxy `json:"microvmProxy,omitempty"` // mTLS Configuration: // // It is recommended that each flintlock host is configured with its own cert // signed by a common CA, and set to use mTLS. // The CAPMVM client should be provided with the CA, and a client cert and key // signed by that CA. // TLSSecretRef is a reference to the name of a secret which contains TLS cert information // for connecting to Flintlock hosts. // The secret should be created in the same namespace as the MicroVMCluster. // The secret should be of type Opaque // with the addition of a ca.crt key. // // apiVersion: v1 // kind: Secret // metadata: // name: secret-tls // namespace: default <- same as Cluster // type: Opaque // data: // tls.crt: | // -----BEGIN CERTIFICATE----- // MIIC2DCCAcCgAwIBAgIBATANBgkqh ... // -----END CERTIFICATE----- // tls.key: | // -----BEGIN EC PRIVATE KEY----- // MIIEpgIBAAKCAQEA7yn3bRHQ5FHMQ ... // -----END EC PRIVATE KEY----- // ca.crt: | // -----BEGIN CERTIFICATE----- // MIIEpgIBAAKCAQEA7yn3bRHQ5FHMQ ... // -----END CERTIFICATE----- // +optional TLSSecretRef string `json:"tlsSecretRef,omitempty"` }
MicrovmClusterSpec defines the desired state of MicrovmCluster.
func (*MicrovmClusterSpec) DeepCopy ¶
func (in *MicrovmClusterSpec) DeepCopy() *MicrovmClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmClusterSpec.
func (*MicrovmClusterSpec) DeepCopyInto ¶
func (in *MicrovmClusterSpec) DeepCopyInto(out *MicrovmClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicrovmClusterStatus ¶
type MicrovmClusterStatus struct { // Ready indicates that the cluster is ready. // +optional // +kubebuilder:default=false Ready bool `json:"ready"` // Conditions defines current service state of the MicrovmCluster. // +optional Conditions clusterv1.Conditions `json:"conditions,omitempty"` // FailureDomains is a list of the failure domains that CAPI should spread the machines across. For // the CAPMVM provider this equates to host machines that can run microvms using Flintlock. FailureDomains clusterv1.FailureDomains `json:"failureDomains,omitempty"` }
MicrovmClusterStatus defines the observed state of MicrovmCluster.
func (*MicrovmClusterStatus) DeepCopy ¶
func (in *MicrovmClusterStatus) DeepCopy() *MicrovmClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmClusterStatus.
func (*MicrovmClusterStatus) DeepCopyInto ¶
func (in *MicrovmClusterStatus) DeepCopyInto(out *MicrovmClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicrovmHost ¶
type MicrovmHost struct { // Name is an optional name for the host. // +optional Name string `json:"name,omitempty"` // Endpoint is the API endpoint for the microvm service (i.e. flintlock) // including the port. // +kubebuilder:validation:Required Endpoint string `json:"endpoint"` // ControlPlaneAllowed marks this host as suitable for running control plane nodes in // addition to worker nodes. // +kubebuilder:default=true ControlPlaneAllowed bool `json:"controlplaneAllowed"` }
func (*MicrovmHost) DeepCopy ¶
func (in *MicrovmHost) DeepCopy() *MicrovmHost
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmHost.
func (*MicrovmHost) DeepCopyInto ¶
func (in *MicrovmHost) DeepCopyInto(out *MicrovmHost)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicrovmMachine ¶
type MicrovmMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec MicrovmMachineSpec `json:"spec,omitempty"` Status MicrovmMachineStatus `json:"status,omitempty"` }
MicrovmMachine is the Schema for the microvmmachines API.
func (*MicrovmMachine) DeepCopy ¶
func (in *MicrovmMachine) DeepCopy() *MicrovmMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmMachine.
func (*MicrovmMachine) DeepCopyInto ¶
func (in *MicrovmMachine) DeepCopyInto(out *MicrovmMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MicrovmMachine) DeepCopyObject ¶
func (in *MicrovmMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MicrovmMachine) Default ¶
func (r *MicrovmMachine) Default()
Default satisfies the defaulting webhook interface.
func (*MicrovmMachine) GetConditions ¶
func (r *MicrovmMachine) GetConditions() clusterv1.Conditions
GetConditions returns the observations of the operational state of the MicrovmMachine resource.
func (*MicrovmMachine) SetConditions ¶
func (r *MicrovmMachine) SetConditions(conditions clusterv1.Conditions)
SetConditions sets the underlying service state of the MicrovmMachine to the predescribed clusterv1.Conditions.
func (*MicrovmMachine) SetupWebhookWithManager ¶
func (r *MicrovmMachine) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*MicrovmMachine) ValidateCreate ¶
func (r *MicrovmMachine) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*MicrovmMachine) ValidateDelete ¶
func (r *MicrovmMachine) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*MicrovmMachine) ValidateUpdate ¶
func (r *MicrovmMachine) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type MicrovmMachineList ¶
type MicrovmMachineList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []MicrovmMachine `json:"items"` }
MicrovmMachineList contains a list of MicrovmMachine.
func (*MicrovmMachineList) DeepCopy ¶
func (in *MicrovmMachineList) DeepCopy() *MicrovmMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmMachineList.
func (*MicrovmMachineList) DeepCopyInto ¶
func (in *MicrovmMachineList) DeepCopyInto(out *MicrovmMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MicrovmMachineList) DeepCopyObject ¶
func (in *MicrovmMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MicrovmMachineSpec ¶
type MicrovmMachineSpec struct { microvm.VMSpec `json:",inline"` // SSHPublicKeys is list of SSH public keys that will be used with stated users // on this machine. // If specified they will take precedence over any SSH keys specified at // the cluster level. // +optional SSHPublicKeys []microvm.SSHPublicKey `json:"sshPublicKeys,omitempty"` // ProviderID is the unique identifier as specified by the cloud provider. ProviderID *string `json:"providerID,omitempty"` }
MicrovmMachineSpec defines the desired state of MicrovmMachine.
func (*MicrovmMachineSpec) DeepCopy ¶
func (in *MicrovmMachineSpec) DeepCopy() *MicrovmMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmMachineSpec.
func (*MicrovmMachineSpec) DeepCopyInto ¶
func (in *MicrovmMachineSpec) DeepCopyInto(out *MicrovmMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicrovmMachineStatus ¶
type MicrovmMachineStatus struct { // Ready is true when the provider resource is ready. // +optional // +kubebuilder:default=false Ready bool `json:"ready"` // VMState indicates the state of the microvm. VMState *microvm.VMState `json:"vmState,omitempty"` // Addresses contains the microvm associated addresses. Addresses []clusterv1.MachineAddress `json:"addresses,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 MicrovmMachine. // +optional Conditions clusterv1.Conditions `json:"conditions,omitempty"` }
MicrovmMachineStatus defines the observed state of MicrovmMachine.
func (*MicrovmMachineStatus) DeepCopy ¶
func (in *MicrovmMachineStatus) DeepCopy() *MicrovmMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmMachineStatus.
func (*MicrovmMachineStatus) DeepCopyInto ¶
func (in *MicrovmMachineStatus) DeepCopyInto(out *MicrovmMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicrovmMachineTemplate ¶
type MicrovmMachineTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec MicrovmMachineTemplateSpec `json:"spec,omitempty"` }
MicrovmMachineTemplate is the Schema for the microvmmachinetemplates API.
func (*MicrovmMachineTemplate) DeepCopy ¶
func (in *MicrovmMachineTemplate) DeepCopy() *MicrovmMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmMachineTemplate.
func (*MicrovmMachineTemplate) DeepCopyInto ¶
func (in *MicrovmMachineTemplate) DeepCopyInto(out *MicrovmMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MicrovmMachineTemplate) DeepCopyObject ¶
func (in *MicrovmMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MicrovmMachineTemplate) SetupWebhookWithManager ¶
func (r *MicrovmMachineTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*MicrovmMachineTemplate) ValidateCreate ¶
func (r *MicrovmMachineTemplate) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*MicrovmMachineTemplate) ValidateDelete ¶
func (r *MicrovmMachineTemplate) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*MicrovmMachineTemplate) ValidateUpdate ¶
func (r *MicrovmMachineTemplate) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type MicrovmMachineTemplateList ¶
type MicrovmMachineTemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []MicrovmMachineTemplate `json:"items"` }
MicrovmMachineTemplateList contains a list of MicrovmMachineTemplate.
func (*MicrovmMachineTemplateList) DeepCopy ¶
func (in *MicrovmMachineTemplateList) DeepCopy() *MicrovmMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmMachineTemplateList.
func (*MicrovmMachineTemplateList) DeepCopyInto ¶
func (in *MicrovmMachineTemplateList) DeepCopyInto(out *MicrovmMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MicrovmMachineTemplateList) DeepCopyObject ¶
func (in *MicrovmMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MicrovmMachineTemplateResource ¶
type MicrovmMachineTemplateResource struct { // Standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata // +optional ObjectMeta clusterv1.ObjectMeta `json:"metadata,omitempty"` // Spec is the specification of the machine. Spec MicrovmMachineSpec `json:"spec"` }
MicrovmMachineTemplateResource describes the data needed to create a MicrovmMachine from a template.
func (*MicrovmMachineTemplateResource) DeepCopy ¶
func (in *MicrovmMachineTemplateResource) DeepCopy() *MicrovmMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmMachineTemplateResource.
func (*MicrovmMachineTemplateResource) DeepCopyInto ¶
func (in *MicrovmMachineTemplateResource) DeepCopyInto(out *MicrovmMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicrovmMachineTemplateSpec ¶
type MicrovmMachineTemplateSpec struct {
Template MicrovmMachineTemplateResource `json:"template"`
}
MicrovmMachineTemplateSpec defines the desired state of MicrovmMachineTemplate.
func (*MicrovmMachineTemplateSpec) DeepCopy ¶
func (in *MicrovmMachineTemplateSpec) DeepCopy() *MicrovmMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrovmMachineTemplateSpec.
func (*MicrovmMachineTemplateSpec) DeepCopyInto ¶
func (in *MicrovmMachineTemplateSpec) DeepCopyInto(out *MicrovmMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Placement ¶
type Placement struct { // StaticPool is used to specify that static pool placement should be used. StaticPool *StaticPoolPlacement `json:"staticPool,omitempty"` }
Placement represents configuration relating to the placement of the microvms. The number of placement options will grow and so we need to ensure in the validation webhook that only 1 placement types is configured.
func (*Placement) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Placement.
func (*Placement) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SSHPublicKey ¶ added in v0.6.0
type SSHPublicKey struct { // User is the name of the user to add keys for (eg root, ubuntu). // +kubebuilder:validation:Required User string `json:"user,omitempty"` // AuthorizedKeys is a list of public keys to add to the user // +kubebuilder:validation:Required AuthorizedKeys []string `json:"authorizedKeys,omitempty"` }
func (*SSHPublicKey) DeepCopy ¶ added in v0.6.0
func (in *SSHPublicKey) DeepCopy() *SSHPublicKey
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKey.
func (*SSHPublicKey) DeepCopyInto ¶ added in v0.6.0
func (in *SSHPublicKey) DeepCopyInto(out *SSHPublicKey)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StaticPoolPlacement ¶
type StaticPoolPlacement struct { // Hosts defines the pool of hosts that should be used when creating microvms. The hosts will // be supplied to CAPI (as fault domains) and it will place machines across them. // +kubebuilder:validation:Required // +kubebuilder:validation:MinItems:=1 Hosts []MicrovmHost `json:"hosts"` // BasicAuthSecret is the name of the secret containing basic auth info for each // host listed in Hosts. // The secret should be created in the same namespace as the Cluster. // The secret should contain a data entry for each host Endpoint without the port: // // apiVersion: v1 // kind: Secret // metadata: // name: mybasicauthsecret // namespace: same-as-cluster // type: Opaque // data: // 1.2.4.5: YWRtaW4= // myhost: MWYyZDFlMmU2N2Rm BasicAuthSecret string `json:"basicAuthSecret,omitempty"` }
StaticPoolPlacement represents the configuration for placing microvms across a pool of predefined servers.
func (*StaticPoolPlacement) DeepCopy ¶
func (in *StaticPoolPlacement) DeepCopy() *StaticPoolPlacement
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaticPoolPlacement.
func (*StaticPoolPlacement) DeepCopyInto ¶
func (in *StaticPoolPlacement) DeepCopyInto(out *StaticPoolPlacement)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSConfig ¶ added in v0.6.0
type TLSConfig struct { Cert []byte `json:"cert"` Key []byte `json:"key"` CACert []byte `json:"caCert"` }
TLSConfig represents config for connecting to TLS enabled hosts.
func (*TLSConfig) DeepCopy ¶ added in v0.6.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSConfig.
func (*TLSConfig) DeepCopyInto ¶ added in v0.6.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- condition_consts.go
- defaults.go
- groupversion_info.go
- microvmcluster_types.go
- microvmcluster_webhook.go
- microvmmachine_types.go
- microvmmachine_webhook.go
- microvmmachinetemplate_types.go
- microvmmachinetemplate_webhook.go
- types.go
- validate.go
- webhooks.go
- zz_generated.deepcopy.go
- zz_generated.defaults.go