v1beta1

package
v0.17.0 Latest Latest
Warning

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

Go to latest
Published: Nov 19, 2025 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1beta1 contains API Schema definitions for the v1beta1 API group +kubebuilder:object:generate=true +groupName=confidentialcontainers.org

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "confidentialcontainers.org", Version: "v1beta1"}

	// 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 CcCompletedStatus

type CcCompletedStatus struct {
	// CompletedNodesCount reflects the number of nodes that have completed install operation
	CompletedNodesCount int `json:"completedNodesCount,omitempty"`

	// CompletedNodesList reflects the list of nodes that have completed install operation
	// +optional
	CompletedNodesList []string `json:"completedNodesList,omitempty"`
}

CcCompletedStatus reflects the status of nodes that have completed the installation of the confidential containers runtime

func (*CcCompletedStatus) DeepCopy

func (in *CcCompletedStatus) DeepCopy() *CcCompletedStatus

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

func (*CcCompletedStatus) DeepCopyInto

func (in *CcCompletedStatus) DeepCopyInto(out *CcCompletedStatus)

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

type CcFailedNodeStatus

type CcFailedNodeStatus struct {
	// FailedNodesCount reflects the number of nodes that have failed installation
	FailedNodesCount int `json:"failedNodesCount,omitempty"`

	// FailedNodesList reflects the list of nodes that have failed installation
	// +optional
	FailedNodesList []FailedNodeStatus `json:"failedNodesList,omitempty"`
}

CcFailedNodeStatus reflects the status of nodes that have failed installation of the confidential containers runtime

func (*CcFailedNodeStatus) DeepCopy

func (in *CcFailedNodeStatus) DeepCopy() *CcFailedNodeStatus

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

func (*CcFailedNodeStatus) DeepCopyInto

func (in *CcFailedNodeStatus) DeepCopyInto(out *CcFailedNodeStatus)

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

type CcInstallConfig

type CcInstallConfig struct {

	// This indicates whether to use native OS packaging (rpm/deb) or Container image
	// Default is bundle (container image)
	InstallType CcInstallType `json:"installType"`

	// This specifies the location of the container image with all artifacts (Cc runtime binaries, initrd, kernel, config etc)
	// when using "bundle" installType
	PayloadImage string `json:"payloadImage"`

	// This specifies the registry secret to pull of the container images
	// +optional
	ImagePullSecret *corev1.LocalObjectReference `json:"imagePullSecret,omitempty"`

	// +optional
	ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"`

	// This specifies the repo location to be used when using rpm/deb packages
	// Some examples
	//   add-apt-repository 'deb [arch=amd64] https://repo.confidential-containers.org/apt/ubuntu
	//   add-apt-repository ppa:confidential-containers/cc-bundle
	//   dnf install -y https://repo.confidential-containers.org/yum/centos/cc-bundle-repo.rpm
	// +optional
	OsNativeRepo string `json:"osNativeRepo,omitempty"`

	// This specifies the location of the container image containing the Cc runtime binaries
	// If both payloadImage and runtimeImage are specified, then runtimeImage content will override the equivalent one in payloadImage
	// +optional
	RuntimeImage string `json:"runtimeImage,omitempty"`

	// This specifies the location of the container image containing the guest kernel
	// If both bundleImage and guestKernelImage are specified, then guestKernelImage content will override the equivalent one in payloadImage
	// +optional
	GuestKernelImage string `json:"guestKernelImage,omitempty"`

	// This specifies the location of the container image containing the guest initrd
	// If both bundleImage and guestInitrdImage are specified, then guestInitrdImage content will override the equivalent one in payloadImage
	// +optional
	GuestInitrdImage string `json:"guestInitrdImage,omitempty"`

	// This specifies volume mounts required for the installer pods
	// +optional
	InstallerVolumeMounts []corev1.VolumeMount `json:"installerVolumeMounts,omitempty"`

	// This specifies volumes required for the installer pods
	// +optional
	InstallerVolumes []corev1.Volume `json:"installerVolumes,omitempty"`

	// This specifies the command for installation of the runtime on the nodes
	// +optional
	InstallCmd []string `json:"installCmd,omitempty"`

	// This specifies the command for uninstallation of the runtime on the nodes
	// +optional
	UninstallCmd []string `json:"uninstallCmd,omitempty"`

	// This specifies the command for cleanup on the nodes
	// +optional
	CleanupCmd []string `json:"cleanupCmd,omitempty"`

	// This specifies the RuntimeClasses that need to be created, with its name and an associated snapshotter to be used
	// +optional
	RuntimeClasses []RuntimeClass `json:"runtimeClasses,omitempty"`

	// This specifies the RuntimeClass to be used as the default one
	// If not set, the default "kata" runtime class will NOT be created. Otherwise, the default "kata" runtime class will be created
	// as as "alias" for the value set here
	// +optional
	DefaultRuntimeClassName string `json:"defaultRuntimeClassName,omitempty"`

	// This specifies whether the CcRuntime (kata or enclave-cc) will be running on debug mode
	// +optional
	Debug bool `json:"debug,omitempty"`

	// This specifies the environment variables required by the daemon set
	// +optional
	EnvironmentVariables []corev1.EnvVar `json:"environmentVariables,omitempty"`
	// This specifies the label that the install daemonset adds to nodes
	// when the installation is done
	InstallDoneLabel map[string]string `json:"installDoneLabel,omitempty"`

	// This specifies the label that the uninstall daemonset adds to nodes
	// when the uninstallation  is done
	UninstallDoneLabel map[string]string `json:"uninstallDoneLabel,omitempty"`

	// This specifies the configuration for the pre-install daemonset
	// +optional
	PreInstall PreInstallConfig `json:"preInstall,omitempty"`

	// This specifies the configuration for the post-uninstall daemonset
	// +optional
	PostUninstall PostUninstallConfig `json:"postUninstall,omitempty"`
}

CcInstallConfig is a placeholder struct

func (*CcInstallConfig) DeepCopy

func (in *CcInstallConfig) DeepCopy() *CcInstallConfig

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

func (*CcInstallConfig) DeepCopyInto

func (in *CcInstallConfig) DeepCopyInto(out *CcInstallConfig)

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

type CcInstallType

type CcInstallType string

+kubebuilder:validation:Enum=bundle;osnative

const (
	// Use container image with all installation artifacts
	BundleInstallType CcInstallType = "bundle"

	// Use native OS packages (rpm/deb)
	OsNativeInstallType CcInstallType = "osnative"
)

type CcInstallationInProgressStatus

type CcInstallationInProgressStatus struct {
	// InProgressNodesCount reflects the number of nodes that are in the process of installation
	InProgressNodesCount int `json:"inProgressNodesCount,omitempty"`
	// +optional
	BinariesInstalledNodesList []string `json:"binariesInstallNodesList,omitempty"`
}

CcInstallationInProgressStatus reflects the status of nodes that are in the process of installing the confidential containers runtime

func (*CcInstallationInProgressStatus) DeepCopy

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

func (*CcInstallationInProgressStatus) DeepCopyInto

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

type CcInstallationStatus

type CcInstallationStatus struct {
	// InProgress reflects the status of nodes that are in the process of installation
	InProgress CcInstallationInProgressStatus `json:"inProgress,omitempty"`

	// Completed reflects the status of nodes that have completed the installation
	Completed CcCompletedStatus `json:"completed,omitempty"`

	// Failed reflects the status of nodes that have failed installation
	Failed CcFailedNodeStatus `json:"failed,omitempty"`
}

CcInstallationStatus reflects the status of the ongoing confidential containers runtime installation

func (*CcInstallationStatus) DeepCopy

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

func (*CcInstallationStatus) DeepCopyInto

func (in *CcInstallationStatus) DeepCopyInto(out *CcInstallationStatus)

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

type CcRuntime

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

	Spec   CcRuntimeSpec   `json:"spec,omitempty"`
	Status CcRuntimeStatus `json:"status,omitempty"`
}

CcRuntime is the Schema for the ccruntimes API

func (*CcRuntime) DeepCopy

func (in *CcRuntime) DeepCopy() *CcRuntime

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

func (*CcRuntime) DeepCopyInto

func (in *CcRuntime) DeepCopyInto(out *CcRuntime)

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

func (*CcRuntime) DeepCopyObject

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

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

type CcRuntimeList

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

CcRuntimeList contains a list of CcRuntime

func (*CcRuntimeList) DeepCopy

func (in *CcRuntimeList) DeepCopy() *CcRuntimeList

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

func (*CcRuntimeList) DeepCopyInto

func (in *CcRuntimeList) DeepCopyInto(out *CcRuntimeList)

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

func (*CcRuntimeList) DeepCopyObject

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

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

type CcRuntimeName

type CcRuntimeName string

+kubebuilder:validation:Enum=kata;enclave-cc

type CcRuntimeSpec

type CcRuntimeSpec struct {
	// CcNodeSelector is used to select the worker nodes to deploy the runtime
	// if not specified, all worker nodes are selected
	// +optional
	// +nullable
	CcNodeSelector *metav1.LabelSelector `json:"ccNodeSelector"`

	CcTolerations []corev1.Toleration `json:"ccTolerations,omitempty"`

	RuntimeName CcRuntimeName `json:"runtimeName"`

	Config CcInstallConfig `json:"config"`
}

CcRuntimeSpec defines the desired state of CcRuntime

func (*CcRuntimeSpec) DeepCopy

func (in *CcRuntimeSpec) DeepCopy() *CcRuntimeSpec

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

func (*CcRuntimeSpec) DeepCopyInto

func (in *CcRuntimeSpec) DeepCopyInto(out *CcRuntimeSpec)

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

type CcRuntimeStatus

type CcRuntimeStatus struct {
	// RuntimeClass is the name of the runtime class as used in container runtime configuration
	RuntimeClass string `json:"runtimeClass"`

	// Cc Runtime Name
	RuntimeName CcRuntimeName `json:"runtimeName"`

	// TotalNodesCounts is the total number of worker nodes targeted by this CR
	TotalNodesCount int `json:"totalNodesCount"`

	// InstallationStatus reflects the status of the ongoing runtime installation
	// +optional
	InstallationStatus CcInstallationStatus `json:"installationStatus,omitempty"`

	// UnInstallationStatus reflects the status of the ongoing runtime uninstallation
	// +optional
	UnInstallationStatus CcUnInstallationStatus `json:"unInstallationStatus,omitempty"`

	// Upgradestatus reflects the status of the ongoing runtime upgrade
	// +optional
	Upgradestatus CcUpgradeStatus `json:"upgradeStatus,omitempty"`
}

CcRuntimeStatus defines the observed state of CcRuntime

func (*CcRuntimeStatus) DeepCopy

func (in *CcRuntimeStatus) DeepCopy() *CcRuntimeStatus

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

func (*CcRuntimeStatus) DeepCopyInto

func (in *CcRuntimeStatus) DeepCopyInto(out *CcRuntimeStatus)

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

type CcUnInstallationInProgressStatus

type CcUnInstallationInProgressStatus struct {
	// InProgressNodesCount reflects the number of nodes that are in the process of uninstallation
	InProgressNodesCount int `json:"inProgressNodesCount,omitempty"`
	// +optional
	BinariesUnInstalledNodesList []string `json:"binariesUninstallNodesList,omitempty"`
}

CcUnInstallationInProgressStatus reflects the status of nodes that are in the process of uninstalling the confidential containers runtime

func (*CcUnInstallationInProgressStatus) DeepCopy

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

func (*CcUnInstallationInProgressStatus) DeepCopyInto

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

type CcUnInstallationStatus

type CcUnInstallationStatus struct {
	// InProgress reflects the status of nodes that are in the process of uninstallation
	InProgress CcUnInstallationInProgressStatus `json:"inProgress,omitempty"`

	// Completed reflects the status of nodes that have completed the uninstallation operation
	Completed CcCompletedStatus `json:"completed,omitempty"`

	// Failed reflects the status of nodes that have failed uninstallation
	Failed CcFailedNodeStatus `json:"failed,omitempty"`
}

CcUnInstallationStatus reflects the status of the ongoing uninstallation of the confidential containers runtime

func (*CcUnInstallationStatus) DeepCopy

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

func (*CcUnInstallationStatus) DeepCopyInto

func (in *CcUnInstallationStatus) DeepCopyInto(out *CcUnInstallationStatus)

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

type CcUpgradeStatus

type CcUpgradeStatus struct {
}

CcUpgradeStatus reflects the status of the ongoing upgrade of the confidential containers runtime

func (*CcUpgradeStatus) DeepCopy

func (in *CcUpgradeStatus) DeepCopy() *CcUpgradeStatus

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

func (*CcUpgradeStatus) DeepCopyInto

func (in *CcUpgradeStatus) DeepCopyInto(out *CcUpgradeStatus)

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

type FailedNodeStatus

type FailedNodeStatus struct {
	// Name of the failed node
	Name string `json:"name"`
	// Error message of the failed node reported by the installation daemon
	Error string `json:"error"`
}

FailedNodeStatus holds the name and the error message of the failed node

func (*FailedNodeStatus) DeepCopy

func (in *FailedNodeStatus) DeepCopy() *FailedNodeStatus

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

func (*FailedNodeStatus) DeepCopyInto

func (in *FailedNodeStatus) DeepCopyInto(out *FailedNodeStatus)

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

type PostUninstallConfig

type PostUninstallConfig struct {
	// This specifies the command executes before UnInstallCmd
	// +optional
	Cmd []string `json:"cmd,omitempty"`

	// This specifies the pull spec for the postuninstall daemonset image
	// +optional
	Image string `json:"image,omitempty"`

	// This specifies the env variables for the post-uninstall daemon set
	// +optional
	EnvironmentVariables []corev1.EnvVar `json:"environmentVariables,omitempty"`

	// This specifies the volumes for the post-uninstall daemon set
	// +optional
	Volumes []corev1.Volume `json:"volumes,omitempty"`

	// This specifies the volumeMounts for the post-uninstall daemon set
	// +optional
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
}

func (*PostUninstallConfig) DeepCopy

func (in *PostUninstallConfig) DeepCopy() *PostUninstallConfig

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

func (*PostUninstallConfig) DeepCopyInto

func (in *PostUninstallConfig) DeepCopyInto(out *PostUninstallConfig)

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

type PreInstallConfig

type PreInstallConfig struct {
	// This specifies the command executes before InstallCmd
	// +optional
	Cmd []string `json:"cmd,omitempty"`

	// This specifies the image for the pre-install scripts
	// +optional
	Image string `json:"image,omitempty"`

	// This specifies the env variables for the pre-install daemon set
	// +optional
	EnvironmentVariables []corev1.EnvVar `json:"environmentVariables,omitempty"`

	// This specifies the volumes for the pre-install daemon set
	// +optional
	Volumes []corev1.Volume `json:"volumes,omitempty"`
	// This specifies the volumeMounts for the pre-install daemon set
	// +optional
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
}

func (*PreInstallConfig) DeepCopy

func (in *PreInstallConfig) DeepCopy() *PreInstallConfig

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

func (*PreInstallConfig) DeepCopyInto

func (in *PreInstallConfig) DeepCopyInto(out *PreInstallConfig)

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

type RuntimeClass added in v0.8.0

type RuntimeClass struct {
	// Name of the runtime class
	Name string `json:"name"`
	// The snapshotter to be used by the runtime class
	Snapshotter string `json:"snapshotter"`
	// The pulling image method to be used by the runtime class
	PullType string `json:"pulltype"`
}

RuntimeClass holds the name and basic customizations to be used by a runtime class

func (*RuntimeClass) DeepCopy added in v0.8.0

func (in *RuntimeClass) DeepCopy() *RuntimeClass

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

func (*RuntimeClass) DeepCopyInto added in v0.8.0

func (in *RuntimeClass) DeepCopyInto(out *RuntimeClass)

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