Documentation
¶
Overview ¶
Package v1 contains API Schema definitions for the kataconfiguration v1 API group +kubebuilder:object:generate=true +groupName=kataconfiguration.openshift.io
Index ¶
- Variables
- type FailedNodeStatus
- type KataConfig
- type KataConfigCompletedStatus
- type KataConfigList
- type KataConfigSpec
- type KataConfigStatus
- type KataFailedNodeStatus
- type KataInstallationInProgressStatus
- type KataInstallationStatus
- type KataUnInstallationInProgressStatus
- type KataUnInstallationStatus
- type KataUpgradeStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "kataconfiguration.openshift.io", Version: "v1"} // 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 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
type KataConfig ¶
type KataConfig struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
// +nullable
Spec KataConfigSpec `json:"spec,omitempty"`
Status KataConfigStatus `json:"status,omitempty"`
}
KataConfig is the Schema for the kataconfigs API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:path=kataconfigs,scope=Cluster +kubebuilder:printcolumn:name="InProgress",type=string,JSONPath=".status.installationStatus.IsInProgress",description="Status of Kata runtime installation" +kubebuilder:printcolumn:name="Completed",type=integer,JSONPath=".status.installationStatus.completed.completedNodesCount",description="Number of nodes with Kata runtime installed" +kubebuilder:printcolumn:name="Total",type=integer,JSONPath=".status.totalNodesCount",description="Total number of nodes" +kubebuilder:printcolumn:name="Age",type=date,JSONPath=".metadata.creationTimestamp",description="Age of the KataConfig Custom Resource"
func (*KataConfig) SetupWebhookWithManager ¶ added in v1.3.2
func (r *KataConfig) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*KataConfig) ValidateCreate ¶ added in v1.3.2
func (r *KataConfig) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*KataConfig) ValidateDelete ¶ added in v1.3.2
func (r *KataConfig) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*KataConfig) ValidateUpdate ¶ added in v1.3.2
func (r *KataConfig) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type KataConfigCompletedStatus ¶
type KataConfigCompletedStatus struct {
// CompletedNodesCount reflects the number of nodes that have completed kata operation
CompletedNodesCount int `json:"completedNodesCount,omitempty"`
// CompletedNodesList reflects the list of nodes that have completed kata operation
// +optional
CompletedNodesList []string `json:"completedNodesList,omitempty"`
}
KataConfigCompletedStatus reflects the status of nodes that have completed kata operation
type KataConfigList ¶
type KataConfigList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []KataConfig `json:"items"`
}
KataConfigList contains a list of KataConfig
type KataConfigSpec ¶
type KataConfigSpec struct {
// KataConfigPoolSelector is used to filter the worker nodes
// if not specified, all worker nodes are selected
// +optional
// +nullable
KataConfigPoolSelector *metav1.LabelSelector `json:"kataConfigPoolSelector"`
// CheckNodeEligibility is used to detect the node(s) eligibility to run Kata containers.
// This is currently done through the use of the Node Feature Discovery Operator (NFD).
// For more information on how the check works, please refer to the sandboxed containers documentation - https://docs.openshift.com/container-platform/latest/sandboxed_containers/deploying-sandboxed-container-workloads.html
// +kubebuilder:default:=false
CheckNodeEligibility bool `json:"checkNodeEligibility"`
// Sets log level on kata-equipped nodes. Valid values are the same as for `crio --log-level`.
// +kubebuilder:default:="info"
LogLevel string `json:"logLevel,omitempty"`
}
KataConfigSpec defines the desired state of KataConfig
type KataConfigStatus ¶
type KataConfigStatus struct {
// RuntimeClass is the name of the runtime class used in CRIO configuration
RuntimeClass string `json:"runtimeClass"`
// TotalNodesCounts is the total number of worker nodes targeted by this CR
TotalNodesCount int `json:"totalNodesCount"`
// InstallationStatus reflects the status of the ongoing kata installation
// +optional
InstallationStatus KataInstallationStatus `json:"installationStatus,omitempty"`
// UnInstallationStatus reflects the status of the ongoing kata uninstallation
// +optional
UnInstallationStatus KataUnInstallationStatus `json:"unInstallationStatus,omitempty"`
// Upgradestatus reflects the status of the ongoing kata upgrade
// +optional
Upgradestatus KataUpgradeStatus `json:"upgradeStatus,omitempty"`
BaseMcpGeneration int64 `json:"prevMcpGeneration"`
}
KataConfigStatus defines the observed state of KataConfig
type KataFailedNodeStatus ¶
type KataFailedNodeStatus struct {
// FailedNodesCount reflects the number of nodes that have failed kata operation
FailedNodesCount int `json:"failedNodesCount,omitempty"`
FailedReason string `json:"failedNodesReason,omitempty"`
// FailedNodesList reflects the list of nodes that have failed kata operation
// +optional
FailedNodesList []FailedNodeStatus `json:"failedNodesList,omitempty"`
}
KataFailedNodeStatus reflects the status of nodes that have failed kata operation
type KataInstallationInProgressStatus ¶
type KataInstallationInProgressStatus struct {
// InProgressNodesCount reflects the number of nodes that are in the process of kata installation
InProgressNodesCount int `json:"inProgressNodesCount,omitempty"`
// IsInProgress reflects if installation is still in progress
IsInProgress bool `json:"isInProgress,omitempty"`
// +optional
BinariesInstalledNodesList []string `json:"binariesInstallNodesList,omitempty"`
}
KataInstallationInProgressStatus reflects the status of nodes that are in the process of kata installation
type KataInstallationStatus ¶
type KataInstallationStatus struct {
// InProgress reflects the status of nodes that are in the process of kata installation
InProgress KataInstallationInProgressStatus `json:"inprogress,omitempty"`
// IsInProgress reflects the current state of installing or not installing
IsInProgress corev1.ConditionStatus `json:"IsInProgress,omit"`
// Completed reflects the status of nodes that have completed kata installation
Completed KataConfigCompletedStatus `json:"completed,omitempty"`
// Failed reflects the status of nodes that have failed kata installation
Failed KataFailedNodeStatus `json:"failed,omitempty"`
}
KataInstallationStatus reflects the status of the ongoing kata installation
type KataUnInstallationInProgressStatus ¶
type KataUnInstallationInProgressStatus struct {
InProgressNodesCount int `json:"inProgressNodesCount,omitempty"`
IsInProgress corev1.ConditionStatus `json:"status"`
// +optional
BinariesUnInstalledNodesList []string `json:"binariesUninstallNodesList,omitempty"`
}
KataUnInstallationInProgressStatus reflects the status of nodes that are in the process of kata installation
type KataUnInstallationStatus ¶
type KataUnInstallationStatus struct {
// InProgress reflects the status of nodes that are in the process of kata uninstallation
InProgress KataUnInstallationInProgressStatus `json:"inProgress,omitempty"`
// Completed reflects the status of nodes that have completed kata uninstallation
Completed KataConfigCompletedStatus `json:"completed,omitempty"`
// Failed reflects the status of nodes that have failed kata uninstallation
Failed KataFailedNodeStatus `json:"failed,omitempty"`
// Stores an error message if any. Note that this is currently meant for a single
// failure source when kata uninstallation is blocked by existing kata-based pods, so
// handling of this field in the controller code is correspondingly simple. A review
// might be necessary if this field were ever to store messages coming from another
// source.
ErrorMessage string `json:"errorMessage,omitempty"`
}
KataUnInstallationStatus reflects the status of the ongoing kata uninstallation
type KataUpgradeStatus ¶
type KataUpgradeStatus struct {
}
KataUpgradeStatus reflects the status of the ongoing kata upgrade