v1alpha3

package
v0.1.3 Latest Latest
Warning

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

Go to latest
Published: Apr 28, 2026 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=unbounded-cloud.io

Index

Constants

View Source
const (
	// MachineConditionProvisioned indicates that the machine has been
	// successfully provisioned. The observedGeneration field on the
	// condition tracks which generation of the Machine spec was
	// provisioned.
	MachineConditionProvisioned = "Provisioned"

	// MachineConditionSSHReachable indicates whether the machine is
	// reachable via SSH. The lastTransitionTime and message fields are
	// updated on probe results.
	MachineConditionSSHReachable = "SSHReachable"

	// MachineConditionProvisioning indicates that the machine is
	// currently being provisioned. The lastTransitionTime records when
	// provisioning started, which is used to detect stale provisioning
	// attempts (e.g. after a controller restart).
	MachineConditionProvisioning = "Provisioning"

	// MachineConditionRepaved indicates the state of a repave operation.
	// Status is set to False (with Reason "Pending") when a repave begins,
	// and True (with Reason "Succeeded") when the repave completes.
	// The lastTransitionTime records when the repave started, which is
	// used to detect stale repave attempts.
	MachineConditionRepaved = "Repaved"

	// MachineConditionCloudInitDone indicates whether cloud-init has
	// finished on the machine. Status is True with Reason "Succeeded"
	// when cloud-init completes without errors, False with Reason
	// "Running" while cloud-init stages are still executing, and
	// False with Reason "Failed" when a cloud-init stage reports a
	// failure. On failure the message includes the stage name and the
	// error result so that operators can diagnose the problem without
	// logging into the machine.
	MachineConditionCloudInitDone = "CloudInitDone"
)

Condition types for Machine.

View Source
const (
	// AnnotationProvider associates a Machine with a provider's
	// controller for reboot/repave operations.
	AnnotationProvider = "unbounded-cloud.io/provider"
)

Annotation keys.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "unbounded-cloud.io", Version: "v1alpha3"}

	// 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 AgentDownloadsSpec added in v0.1.3

type AgentDownloadsSpec struct {
	// Kubernetes overrides the download source for kubelet/kubectl/kube-proxy
	// (upstream default: https://dl.k8s.io).
	// +optional
	Kubernetes *DownloadSource `json:"kubernetes,omitempty"`

	// Containerd overrides the download source for containerd
	// (upstream default: https://github.com/containerd/containerd).
	// +optional
	Containerd *DownloadSource `json:"containerd,omitempty"`

	// Runc overrides the download source for runc
	// (upstream default: https://github.com/opencontainers/runc).
	// +optional
	Runc *DownloadSource `json:"runc,omitempty"`

	// CNI overrides the download source for CNI plugins
	// (upstream default: https://github.com/containernetworking/plugins).
	// +optional
	CNI *DownloadSource `json:"cni,omitempty"`

	// Crictl overrides the download source for crictl
	// (upstream default: https://github.com/kubernetes-sigs/cri-tools).
	// +optional
	Crictl *DownloadSource `json:"crictl,omitempty"`
}

AgentDownloadsSpec overrides the download sources for the artifacts the agent installs into the nspawn rootfs. Each entry is optional; unset entries fall back to the upstream defaults.

func (*AgentDownloadsSpec) DeepCopy added in v0.1.3

func (in *AgentDownloadsSpec) DeepCopy() *AgentDownloadsSpec

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

func (*AgentDownloadsSpec) DeepCopyInto added in v0.1.3

func (in *AgentDownloadsSpec) DeepCopyInto(out *AgentDownloadsSpec)

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

type AgentSpec

type AgentSpec struct {
	// Image is the OCI image reference used for provisioning the
	// nspawn machine (e.g. "ghcr.io/org/repo:tag"). When empty the
	// agent falls back to its built-in default image.
	// +optional
	Image string `json:"image,omitempty"`

	// Version pins the unbounded-agent release tag that is downloaded
	// onto the host (e.g. "v0.0.10"). When empty the install script
	// tracks the latest published release.
	// +optional
	Version string `json:"version,omitempty"`

	// BaseURL overrides the base URL used to construct the
	// unbounded-agent download URL. Defaults to the upstream GitHub
	// releases URL. The layout under BaseURL must match the GitHub
	// releases layout (<base>/latest/download/<asset> and
	// <base>/download/<tag>/<asset>).
	// +optional
	BaseURL string `json:"baseURL,omitempty"`

	// URL is a fully qualified download URL for the unbounded-agent
	// tarball. When set it overrides Version and BaseURL entirely.
	// +optional
	URL string `json:"url,omitempty"`

	// Downloads overrides the download sources for the binaries the
	// agent installs into the nspawn rootfs (kubelet, containerd, runc,
	// CNI plugins, crictl). When unset the agent downloads each
	// artifact from its upstream default host.
	// +optional
	Downloads *AgentDownloadsSpec `json:"downloads,omitempty"`
}

AgentSpec defines settings for the unbounded node agent.

func (*AgentSpec) DeepCopy

func (in *AgentSpec) DeepCopy() *AgentSpec

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

func (*AgentSpec) DeepCopyInto

func (in *AgentSpec) DeepCopyInto(out *AgentSpec)

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

type AgentStatus

type AgentStatus struct {
	// Image is the OCI image reference that was applied to the
	// nspawn machine.
	Image string `json:"image,omitempty"`
}

AgentStatus holds the applied agent settings for the machine.

func (*AgentStatus) DeepCopy

func (in *AgentStatus) DeepCopy() *AgentStatus

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

func (*AgentStatus) DeepCopyInto

func (in *AgentStatus) DeepCopyInto(out *AgentStatus)

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

type BastionSSHSpec

type BastionSSHSpec struct {
	// Host is the hostname or IP address of the bastion, optionally
	// including the port (e.g. "1.2.3.4:2222"). When the port is
	// omitted, 22 is assumed.
	// +kubebuilder:validation:Required
	Host string `json:"host"`

	// Username is the SSH username for the bastion.
	// +kubebuilder:default=azureuser
	Username string `json:"username,omitempty"`

	// PrivateKeyRef references a secret containing the SSH private key
	// for the bastion. If not specified, uses the same key as the
	// parent SSHSpec.
	// +optional
	PrivateKeyRef *SecretKeySelector `json:"privateKeyRef,omitempty"`
}

BastionSSHSpec defines SSH connection details for a bastion host. It mirrors SSHSpec but omits the recursive Bastion field.

func (*BastionSSHSpec) DeepCopy

func (in *BastionSSHSpec) DeepCopy() *BastionSSHSpec

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

func (*BastionSSHSpec) DeepCopyInto

func (in *BastionSSHSpec) DeepCopyInto(out *BastionSSHSpec)

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

type CloudInitSpec

type CloudInitSpec struct {
	// UserDataConfigMapRef references a ConfigMap containing custom
	// cloud-init user-data. The referenced key (default "user-data")
	// must contain a valid cloud-init configuration (e.g. a
	// #cloud-config YAML document).
	// +optional
	UserDataConfigMapRef *ConfigMapKeySelector `json:"userDataConfigMapRef,omitempty"`
}

CloudInitSpec defines cloud-init customization for PXE-booted machines. Cloud-init merges vendor-data (managed by unbounded-kube) with user-data (managed by the cluster operator). This spec controls the user-data portion, allowing operators to configure SSH keys, install packages, and perform other host-level customization.

func (*CloudInitSpec) DeepCopy

func (in *CloudInitSpec) DeepCopy() *CloudInitSpec

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

func (*CloudInitSpec) DeepCopyInto

func (in *CloudInitSpec) DeepCopyInto(out *CloudInitSpec)

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

type ConfigMapKeySelector

type ConfigMapKeySelector struct {
	// Name of the ConfigMap.
	Name string `json:"name"`

	// Namespace of the ConfigMap.
	Namespace string `json:"namespace"`

	// Key within the ConfigMap.
	// +kubebuilder:default=user-data
	Key string `json:"key,omitempty"`
}

ConfigMapKeySelector selects a key from a ConfigMap.

func (*ConfigMapKeySelector) DeepCopy

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

func (*ConfigMapKeySelector) DeepCopyInto

func (in *ConfigMapKeySelector) DeepCopyInto(out *ConfigMapKeySelector)

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

type DHCPLease

type DHCPLease struct {
	// IPv4 is the IP address to assign.
	IPv4 string `json:"ipv4"`

	// MAC is the MAC address of the network interface.
	MAC string `json:"mac"`

	// SubnetMask is the subnet mask for the lease.
	SubnetMask string `json:"subnetMask"`

	// Gateway is the default gateway.
	Gateway string `json:"gateway"`

	// DNS is a list of DNS server addresses.
	// +optional
	DNS []string `json:"dns,omitempty"`
}

DHCPLease defines a static DHCP lease for PXE booting.

func (*DHCPLease) DeepCopy

func (in *DHCPLease) DeepCopy() *DHCPLease

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

func (*DHCPLease) DeepCopyInto

func (in *DHCPLease) DeepCopyInto(out *DHCPLease)

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

type DownloadSource added in v0.1.3

type DownloadSource struct {
	// BaseURL replaces the upstream host + path prefix used to
	// construct the download URL. Version and arch substitution are
	// preserved so mirrors need to publish assets under the same
	// layout as the upstream project.
	// +optional
	BaseURL string `json:"baseURL,omitempty"`

	// URL is a fully qualified download URL template. Version/arch
	// substitution via fmt directives is preserved. When set it
	// overrides BaseURL entirely.
	// +optional
	URL string `json:"url,omitempty"`

	// Version overrides the version of the artifact that would
	// otherwise be derived from the cluster Kubernetes version or the
	// agent's compiled-in defaults.
	// +optional
	Version string `json:"version,omitempty"`
}

DownloadSource configures an override for a binary download source. Exactly one of URL or BaseURL should typically be set; when both are set URL wins. Version overrides the version that would otherwise be derived from the cluster Kubernetes version or agent defaults.

func (*DownloadSource) DeepCopy added in v0.1.3

func (in *DownloadSource) DeepCopy() *DownloadSource

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

func (*DownloadSource) DeepCopyInto added in v0.1.3

func (in *DownloadSource) DeepCopyInto(out *DownloadSource)

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

type KubernetesSpec

type KubernetesSpec struct {
	// Version is the Kubernetes version to install (e.g., "v1.34.0").
	// When omitted the controller falls back to the cluster's
	// Kubernetes version.
	// +optional
	Version string `json:"version,omitempty"`

	// NodeRef references the Node that corresponds to this Machine.
	// +optional
	NodeRef *LocalObjectReference `json:"nodeRef,omitempty"`

	// NodeLabels are labels passed to kubelet's --node-labels flag.
	// +optional
	NodeLabels map[string]string `json:"nodeLabels,omitempty"`

	// RegisterWithTaints are taints passed to kubelet's --register-with-taints flag.
	// Each entry uses the standard Kubernetes taint format: key=value:Effect.
	// +optional
	RegisterWithTaints []string `json:"registerWithTaints,omitempty"`

	// BootstrapTokenRef references a bootstrap token Secret in
	// kube-system. The secret must be of type
	// bootstrap.kubernetes.io/token with the well-known keys
	// "token-id" and "token-secret".
	// +kubebuilder:validation:Required
	BootstrapTokenRef LocalObjectReference `json:"bootstrapTokenRef"`
}

KubernetesSpec defines Kubernetes-specific configuration for a Machine.

func (*KubernetesSpec) DeepCopy

func (in *KubernetesSpec) DeepCopy() *KubernetesSpec

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

func (*KubernetesSpec) DeepCopyInto

func (in *KubernetesSpec) DeepCopyInto(out *KubernetesSpec)

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

type LocalObjectReference

type LocalObjectReference struct {
	// Name of the referenced resource.
	Name string `json:"name"`
}

LocalObjectReference contains enough information to locate the referenced resource.

func (*LocalObjectReference) DeepCopy

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

func (*LocalObjectReference) DeepCopyInto

func (in *LocalObjectReference) DeepCopyInto(out *LocalObjectReference)

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

type Machine

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

	Spec   MachineSpec   `json:"spec,omitempty"`
	Status MachineStatus `json:"status,omitempty"`
}

Machine represents a machine that can be managed by machina.

func (*Machine) DeepCopy

func (in *Machine) DeepCopy() *Machine

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

func (*Machine) DeepCopyInto

func (in *Machine) DeepCopyInto(out *Machine)

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

func (*Machine) DeepCopyObject

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

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

type MachineList

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

MachineList contains a list of Machine.

func (*MachineList) DeepCopy

func (in *MachineList) DeepCopy() *MachineList

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

func (*MachineList) DeepCopyInto

func (in *MachineList) DeepCopyInto(out *MachineList)

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

func (*MachineList) DeepCopyObject

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

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

type MachinePhase

type MachinePhase string

MachinePhase represents the current phase of a Machine.

const (
	MachinePhasePending      MachinePhase = "Pending"
	MachinePhaseRebooting    MachinePhase = "Rebooting"
	MachinePhaseProvisioning MachinePhase = "Provisioning"
	MachinePhaseJoining      MachinePhase = "Joining"
	MachinePhaseReady        MachinePhase = "Ready"
	MachinePhaseFailed       MachinePhase = "Failed"
)

type MachineSpec

type MachineSpec struct {
	// SSH contains the SSH connection and credential details for the
	// machine.
	// +optional
	SSH *SSHSpec `json:"ssh,omitempty"`

	// PXE contains PXE boot configuration for the machine.
	// +optional
	PXE *PXESpec `json:"pxe,omitempty"`

	// Kubernetes contains Kubernetes-specific configuration.
	// +optional
	Kubernetes *KubernetesSpec `json:"kubernetes,omitempty"`

	// Agent contains settings for the unbounded node agent.
	// +optional
	Agent *AgentSpec `json:"agent,omitempty"`

	// Operations contains counter-based operation triggers.
	// +optional
	Operations *OperationsSpec `json:"operations,omitempty"`
}

MachineSpec defines the desired state of a Machine.

func (*MachineSpec) DeepCopy

func (in *MachineSpec) DeepCopy() *MachineSpec

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

func (*MachineSpec) DeepCopyInto

func (in *MachineSpec) DeepCopyInto(out *MachineSpec)

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

type MachineStatus

type MachineStatus struct {
	// Phase is the current phase of the machine. Intended for human
	// consumption; follows the state machine rather than driving it.
	Phase MachinePhase `json:"phase,omitempty"`

	// Message provides additional status information.
	Message string `json:"message,omitempty"`

	// SSH holds observed SSH state.
	// +optional
	SSH *SSHStatus `json:"ssh,omitempty"`

	// Redfish holds observed Redfish state.
	// +optional
	Redfish *RedfishStatus `json:"redfish,omitempty"`

	// TPM holds observed TPM state.
	// +optional
	TPM *TPMStatus `json:"tpm,omitempty"`

	// Agent holds the applied agent settings.
	// +optional
	Agent *AgentStatus `json:"agent,omitempty"`

	// Operations holds the last-observed operation counters.
	// +optional
	Operations *OperationsStatus `json:"operations,omitempty"`

	// Conditions represent the latest available observations of the
	// machine's state.
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

MachineStatus defines the observed state of a Machine.

func (*MachineStatus) DeepCopy

func (in *MachineStatus) DeepCopy() *MachineStatus

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

func (*MachineStatus) DeepCopyInto

func (in *MachineStatus) DeepCopyInto(out *MachineStatus)

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

type OperationsSpec

type OperationsSpec struct {
	// RebootCounter triggers a reboot when it exceeds the status
	// reboot counter.
	// +optional
	RebootCounter int64 `json:"rebootCounter,omitempty"`

	// RepaveCounter triggers a repave when it exceeds the status
	// repave counter.
	// +optional
	RepaveCounter int64 `json:"repaveCounter,omitempty"`
}

OperationsSpec defines counter-based operation triggers. Controllers compare spec counters against status counters to determine if an operation is needed.

func (*OperationsSpec) DeepCopy

func (in *OperationsSpec) DeepCopy() *OperationsSpec

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

func (*OperationsSpec) DeepCopyInto

func (in *OperationsSpec) DeepCopyInto(out *OperationsSpec)

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

type OperationsStatus

type OperationsStatus struct {
	// RebootCounter is the last reboot counter value that was acted on.
	RebootCounter int64 `json:"rebootCounter,omitempty"`

	// RepaveCounter is the last repave counter value that was acted on.
	RepaveCounter int64 `json:"repaveCounter,omitempty"`
}

OperationsStatus holds the last-observed operation counters.

func (*OperationsStatus) DeepCopy

func (in *OperationsStatus) DeepCopy() *OperationsStatus

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

func (*OperationsStatus) DeepCopyInto

func (in *OperationsStatus) DeepCopyInto(out *OperationsStatus)

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

type PXESpec

type PXESpec struct {
	// Image is an OCI image reference containing netboot artifacts.
	// Example: "ghcr.io/azure/images/host-ubuntu2404:v1"
	// +kubebuilder:validation:Required
	Image string `json:"image"`

	// DHCPLeases defines static DHCP leases for PXE booting.
	// +optional
	DHCPLeases []DHCPLease `json:"dhcpLeases,omitempty"`

	// Redfish configures optional Redfish BMC access.
	// +optional
	Redfish *RedfishSpec `json:"redfish,omitempty"`

	// CloudInit contains optional cloud-init customization for PXE-booted
	// machines.
	// +optional
	CloudInit *CloudInitSpec `json:"cloudInit,omitempty"`
}

PXESpec defines PXE boot configuration for a Machine.

func (*PXESpec) DeepCopy

func (in *PXESpec) DeepCopy() *PXESpec

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

func (*PXESpec) DeepCopyInto

func (in *PXESpec) DeepCopyInto(out *PXESpec)

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

type RedfishSpec

type RedfishSpec struct {
	// URL is the Redfish endpoint URL.
	// +kubebuilder:validation:Required
	URL string `json:"url"`

	// Username is the Redfish username.
	// +kubebuilder:validation:Required
	Username string `json:"username"`

	// DeviceID is the Redfish system device ID. Defaults to "1".
	// +kubebuilder:default="1"
	DeviceID string `json:"deviceID,omitempty"`

	// PasswordRef references a secret containing the Redfish password.
	// +kubebuilder:validation:Required
	PasswordRef SecretKeySelector `json:"passwordRef"`
}

RedfishSpec defines Redfish BMC connection details.

func (*RedfishSpec) DeepCopy

func (in *RedfishSpec) DeepCopy() *RedfishSpec

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

func (*RedfishSpec) DeepCopyInto

func (in *RedfishSpec) DeepCopyInto(out *RedfishSpec)

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

type RedfishStatus

type RedfishStatus struct {
	// CertFingerprint is the TLS certificate fingerprint for the
	// Redfish endpoint, pinned on first connection.
	CertFingerprint string `json:"certFingerprint,omitempty"`
}

RedfishStatus holds observed Redfish state.

func (*RedfishStatus) DeepCopy

func (in *RedfishStatus) DeepCopy() *RedfishStatus

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

func (*RedfishStatus) DeepCopyInto

func (in *RedfishStatus) DeepCopyInto(out *RedfishStatus)

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

type SSHSpec

type SSHSpec struct {
	// Host is the hostname or IP address of the machine, optionally
	// including the port (e.g. "1.2.3.4:2222"). When the port is
	// omitted, 22 is assumed.
	// +kubebuilder:validation:Required
	Host string `json:"host"`

	// Username is the SSH username.
	// +kubebuilder:default=azureuser
	Username string `json:"username,omitempty"`

	// PrivateKeyRef references a secret containing the SSH private key.
	// +kubebuilder:validation:Required
	PrivateKeyRef SecretKeySelector `json:"privateKeyRef"`

	// Bastion configures an optional SSH jump host (bastion) for proxy
	// connections. Its structure is identical to SSHSpec minus the
	// bastion field itself.
	// +optional
	Bastion *BastionSSHSpec `json:"bastion,omitempty"`
}

SSHSpec defines SSH connection details. The same structure is reused for both the target machine and the optional bastion host.

func (*SSHSpec) DeepCopy

func (in *SSHSpec) DeepCopy() *SSHSpec

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

func (*SSHSpec) DeepCopyInto

func (in *SSHSpec) DeepCopyInto(out *SSHSpec)

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

type SSHStatus

type SSHStatus struct {
	// Fingerprint is the SSH host key fingerprint discovered on
	// first connection. Subsequent connections must match this value.
	Fingerprint string `json:"fingerprint,omitempty"`
}

SSHStatus holds observed SSH state.

func (*SSHStatus) DeepCopy

func (in *SSHStatus) DeepCopy() *SSHStatus

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

func (*SSHStatus) DeepCopyInto

func (in *SSHStatus) DeepCopyInto(out *SSHStatus)

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

type SecretKeySelector

type SecretKeySelector struct {
	// Name of the secret.
	Name string `json:"name"`

	// Namespace of the secret.
	Namespace string `json:"namespace"`

	// Key within the secret.
	// +kubebuilder:default=ssh-privatekey
	Key string `json:"key,omitempty"`
}

SecretKeySelector selects a key from a Secret.

func (*SecretKeySelector) DeepCopy

func (in *SecretKeySelector) DeepCopy() *SecretKeySelector

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

func (*SecretKeySelector) DeepCopyInto

func (in *SecretKeySelector) DeepCopyInto(out *SecretKeySelector)

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

type TPMStatus

type TPMStatus struct {
	// EKPublicKey is the TPM endorsement key public key, written
	// when the PXE boot image requests a bootstrap token.
	EKPublicKey string `json:"ekPublicKey,omitempty"`
}

TPMStatus holds observed TPM state.

func (*TPMStatus) DeepCopy

func (in *TPMStatus) DeepCopy() *TPMStatus

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

func (*TPMStatus) DeepCopyInto

func (in *TPMStatus) DeepCopyInto(out *TPMStatus)

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