v1alpha2

package
v1.23.0 Latest Latest
Warning

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

Go to latest
Published: Mar 12, 2026 License: Apache-2.0 Imports: 5 Imported by: 13

Documentation

Overview

+k8s:openapi-gen=true +k8s:deepcopy-gen=package

Package v1alpha1 contains API Schema definitions for the Operations v1alpha1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=kubeedge/pkg/apis/operations +k8s:defaulter-gen=TypeMeta +groupName=operations.kubeedge.io

Index

Constants

View Source
const (
	// GroupName is the group name use in this package.
	GroupName = "operations.kubeedge.io"
	// Version is the API version.
	Version = "v1alpha2"
)
View Source
const (
	CheckItemCPU  string = "cpu"
	CheckItemMem  string = "mem"
	CheckItemDisk string = "disk"
)

Constants for node job check items.

View Source
const (
	ResourceConfigUpdateJob = "configupdatejob"

	FinalizerConfigUpdateJob = "kubeedge.io/configupdatejob-controller"
)
View Source
const (
	ResourceImagePrePullJob = "imageprepulljob"

	FinalizerImagePrePullJob = "kubeedge.io/imageprepulljob-controller"
)
View Source
const (
	ResourceNodeUpgradeJob = "nodeupgradejob"

	FinalizerNodeUpgradeJob = "kubeedge.io/nodeupgradejob-controller"
)

Variables

View Source
var (
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var (
	// SchemeGroupVersion is the group version used to register these objects.
	SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: Version}
)

Functions

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group-qualified GroupResource.

Types

type ConfigUpdateJob

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

	// Specification of the desired behavior of ConfigUpdateJob.
	// +optional
	Spec ConfigUpdateJobSpec `json:"spec,omitempty"`
	// Most recently observed status of the ConfigUpdateJob.
	// +optional
	Status ConfigUpdateJobStatus `json:"status,omitempty"`
}

ConfigUpdateJob is used to update edge configuration from cloud side. +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster +kubebuilder:storageversion

func (*ConfigUpdateJob) DeepCopy

func (in *ConfigUpdateJob) DeepCopy() *ConfigUpdateJob

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

func (*ConfigUpdateJob) DeepCopyInto

func (in *ConfigUpdateJob) DeepCopyInto(out *ConfigUpdateJob)

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

func (*ConfigUpdateJob) DeepCopyObject

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

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

type ConfigUpdateJobAction

type ConfigUpdateJobAction string
const (
	ConfigUpdateJobActionCheck    ConfigUpdateJobAction = "Check"
	ConfigUpdateJobActionBackUp   ConfigUpdateJobAction = "BackUp"
	ConfigUpdateJobActionUpdate   ConfigUpdateJobAction = "Update"
	ConfigUpdateJobActionRollBack ConfigUpdateJobAction = "RollBack"
)

type ConfigUpdateJobActionStatus

type ConfigUpdateJobActionStatus struct {
	// Action represents for the action phase of the ConfigUpdateJob
	Action ConfigUpdateJobAction `json:"action,omitempty"`

	// State represents for the status of this image pull on the edge node.
	Status metav1.ConditionStatus `json:"status,omitempty"`

	// Reason represents the reason for the failure of the action.
	// +optional
	Reason string `json:"reason,omitempty"`

	// Time represents for the running time of the node task.
	Time string `json:"time,omitempty"`
}

ConfigUpdateJobActionStatus defines the results of executing the action. +kubebuilder:validation:Type=object

func (*ConfigUpdateJobActionStatus) DeepCopy

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

func (*ConfigUpdateJobActionStatus) DeepCopyInto

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

type ConfigUpdateJobList

type ConfigUpdateJobList struct {
	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// Standard list metadata.
	metav1.ListMeta `json:"metadata,omitempty"`

	// List of ConfigUpdateJob.
	Items []ConfigUpdateJob `json:"items"`
}

ConfigUpdateJobList is a list of ConfigUpdateJob.

func (*ConfigUpdateJobList) DeepCopy

func (in *ConfigUpdateJobList) DeepCopy() *ConfigUpdateJobList

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

func (*ConfigUpdateJobList) DeepCopyInto

func (in *ConfigUpdateJobList) DeepCopyInto(out *ConfigUpdateJobList)

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

func (*ConfigUpdateJobList) DeepCopyObject

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

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

type ConfigUpdateJobNodeTaskStatus

type ConfigUpdateJobNodeTaskStatus struct {
	// ActionFlow represents for the results of executing the action flow.
	ActionFlow []ConfigUpdateJobActionStatus `json:"actionFlow,omitempty"`

	// NodeName is the name of edge node.
	NodeName string `json:"nodeName,omitempty"`

	// Phase represents for the phase of the node task.
	Phase NodeTaskPhase `json:"phase,omitempty"`

	// Reason represents the reason for the failure of the node task.
	// +optional
	Reason string `json:"reason,omitempty"`
}

ConfigUpdateJobNodeTaskStatus stores the status of config update for each edge node. +kubebuilder:validation:Type=object

func (*ConfigUpdateJobNodeTaskStatus) DeepCopy

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

func (*ConfigUpdateJobNodeTaskStatus) DeepCopyInto

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

type ConfigUpdateJobSpec

type ConfigUpdateJobSpec struct {
	// NodeNames is a request to select some specific nodes. If it is non-empty,
	// the update job simply select these edge nodes to do config update operation.
	// Please note that sets of NodeNames and LabelSelector are ORed.
	// Users must set one and can only set one.
	// +optional
	NodeNames []string `json:"nodeNames,omitempty"`

	// LabelSelector is a filter to select member clusters by labels.
	// It must match a node's labels for the ConfigUpdateJob to be operated on that node.
	// Please note that sets of NodeNames and LabelSelector are ORed.
	// Users must set one and can only set one.
	// +optional
	LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`

	// TimeoutSeconds limits the duration of the config update job.
	// Default to 300.
	// If set to 0, we'll use the default value 300.
	// +optional
	TimeoutSeconds *uint32 `json:"timeoutSeconds,omitempty"`

	// Concurrency specifies the maximum number of concurrent that edge nodes associated with
	// each CloudCore instance can be updated at the same time.
	// The default Concurrency value is 1.
	// +optional
	Concurrency int32 `json:"concurrency,omitempty"`

	// UpdateFields specify certain fields in EdgeCore configuration to update
	// +required
	UpdateFields map[string]string `json:"updateFields,omitempty"`

	// FailureTolerate specifies the task tolerance failure ratio.
	// The default FailureTolerate value is 0.1.
	// +optional
	FailureTolerate string `json:"failureTolerate,omitempty"`
}

ConfigUpdateJobSpec represents the specification of the desired behavior of ConfigUpdateJob.

func (*ConfigUpdateJobSpec) DeepCopy

func (in *ConfigUpdateJobSpec) DeepCopy() *ConfigUpdateJobSpec

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

func (*ConfigUpdateJobSpec) DeepCopyInto

func (in *ConfigUpdateJobSpec) DeepCopyInto(out *ConfigUpdateJobSpec)

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

type ConfigUpdateJobStatus

type ConfigUpdateJobStatus struct {
	// Phase represents for the phase of the ConfigUpdateJob
	Phase JobPhase `json:"phase"`

	// NodeStatus contains config update status for each edge node.
	NodeStatus []ConfigUpdateJobNodeTaskStatus `json:"nodeStatus,omitempty"`

	// Reason represents for the reason of the ConfigUpdateJob.
	// +optional
	Reason string `json:"reason,omitempty"`
}

ConfigUpdateJobStatus stores the status of ConfigUpdateJob. contains multiple edge nodes config update status. +kubebuilder:validation:Type=object

func (*ConfigUpdateJobStatus) DeepCopy

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

func (*ConfigUpdateJobStatus) DeepCopyInto

func (in *ConfigUpdateJobStatus) DeepCopyInto(out *ConfigUpdateJobStatus)

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

type ImageDigestGetter

type ImageDigestGetter struct {
	// ARM64 indicates the image digest of the arm64 platform for verification.
	// E.g., sha256:0738039541234567890123456789012345678901234567890123456789012345
	// +optional
	ARM64 string `json:"arm64,omitempty"`

	// AMD64 indicates the image digest of the amd64 platform for verification.
	// E.g., sha256:0738039541234567890123456789012345678901234567890123456789012345
	// +optional
	AMD64 string `json:"amd64,omitempty"`

	// RegistryAPI define registry v2 interface access configuration.
	// Used to automatically gets multiple platform image digests from a remote registry
	// to set values into ARM64 and AMD64 fields.
	// +optional
	RegistryAPI *RegistryAPI `json:"registryAPI,omitempty"`
}

ImageDigestGetter used to define a method for getting the image digest.

func (*ImageDigestGetter) DeepCopy

func (in *ImageDigestGetter) DeepCopy() *ImageDigestGetter

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

func (*ImageDigestGetter) DeepCopyInto

func (in *ImageDigestGetter) DeepCopyInto(out *ImageDigestGetter)

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

type ImagePrePullJob

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

	// Spec represents the specification of the desired behavior of ImagePrePullJob.
	// +required
	Spec ImagePrePullJobSpec `json:"spec"`

	// Status represents the status of ImagePrePullJob.
	// +optional
	Status ImagePrePullJobStatus `json:"status,omitempty"`
}

ImagePrePullJob is used to prepull images on edge node. +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster +kubebuilder:storageversion

func (*ImagePrePullJob) DeepCopy

func (in *ImagePrePullJob) DeepCopy() *ImagePrePullJob

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

func (*ImagePrePullJob) DeepCopyInto

func (in *ImagePrePullJob) DeepCopyInto(out *ImagePrePullJob)

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

func (*ImagePrePullJob) DeepCopyObject

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

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

type ImagePrePullJobAction

type ImagePrePullJobAction string
const (
	ImagePrePullJobActionCheck ImagePrePullJobAction = "Check"
	ImagePrePullJobActionPull  ImagePrePullJobAction = "Pull"
)

type ImagePrePullJobActionStatus

type ImagePrePullJobActionStatus struct {
	// Action represents for the action name
	Action ImagePrePullJobAction `json:"action,omitempty"`

	// State represents for the status of this image pull on the edge node.
	Status metav1.ConditionStatus `json:"status,omitempty"`

	// Reason represents the reason for the failure of the action.
	// +optional
	Reason string `json:"reason,omitempty"`

	// Time represents for the running time of the node task.
	Time string `json:"time,omitempty"`
}

ImagePrePullJobActionStatus defines the results of executing the action. +kubebuilder:validation:Type=object

func (*ImagePrePullJobActionStatus) DeepCopy

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

func (*ImagePrePullJobActionStatus) DeepCopyInto

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

type ImagePrePullJobList

type ImagePrePullJobList struct {
	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// Standard list metadata.
	metav1.ListMeta `json:"metadata,omitempty"`

	// List of ImagePrePullJob.
	Items []ImagePrePullJob `json:"items"`
}

ImagePrePullJobList is a list of ImagePrePullJob.

func (*ImagePrePullJobList) DeepCopy

func (in *ImagePrePullJobList) DeepCopy() *ImagePrePullJobList

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

func (*ImagePrePullJobList) DeepCopyInto

func (in *ImagePrePullJobList) DeepCopyInto(out *ImagePrePullJobList)

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

func (*ImagePrePullJobList) DeepCopyObject

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

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

type ImagePrePullJobSpec

type ImagePrePullJobSpec struct {
	// ImagePrepullTemplate represents original templates of imagePrePull
	ImagePrePullTemplate ImagePrePullTemplate `json:"imagePrePullTemplate,omitempty"`
}

ImagePrePullSpec represents the specification of the desired behavior of ImagePrePullJob.

func (*ImagePrePullJobSpec) DeepCopy

func (in *ImagePrePullJobSpec) DeepCopy() *ImagePrePullJobSpec

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

func (*ImagePrePullJobSpec) DeepCopyInto

func (in *ImagePrePullJobSpec) DeepCopyInto(out *ImagePrePullJobSpec)

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

type ImagePrePullJobStatus

type ImagePrePullJobStatus struct {
	// Phase represents for the phase of the NodeUpgradeJob
	Phase JobPhase `json:"phase"`

	// NodeStatus contains image prepull status for each edge node.
	NodeStatus []ImagePrePullNodeTaskStatus `json:"nodeStatus,omitempty"`

	// Reason represents for the reason of the ImagePrePullJob.
	// +optional
	Reason string `json:"reason,omitempty"`

	// State represents for the state phase of the ImagePrePullJob.
	// There are several possible state values: "", Upgrading, BackingUp, RollingBack and Checking.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	State fsmv1alpha1.State `json:"state,omitempty"`

	// Time represents for the running time of the ImagePrePullJob.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	Time string `json:"time,omitempty"`

	// Event represents for the event of the ImagePrePullJob.
	// There are four possible event values: Init, Check, Pull, TimeOut.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	Event string `json:"event,omitempty"`

	// Action represents for the action of the ImagePrePullJob.
	// There are two possible action values: Success, Failure.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	Action fsmv1alpha1.Action `json:"action,omitempty"`

	// Status contains image prepull status for each edge node.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	Status []opsv1alpha1.ImagePrePullStatus `json:"status,omitempty"`
}

ImagePrePullJobStatus stores the status of ImagePrePullJob. contains images prepull status on multiple edge nodes. +kubebuilder:validation:Type=object

func (*ImagePrePullJobStatus) DeepCopy

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

func (*ImagePrePullJobStatus) DeepCopyInto

func (in *ImagePrePullJobStatus) DeepCopyInto(out *ImagePrePullJobStatus)

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

type ImagePrePullNodeTaskStatus

type ImagePrePullNodeTaskStatus struct {
	// ActionFlow represents for the results of executing the action flow.
	ActionFlow []ImagePrePullJobActionStatus `json:"actionFlow,omitempty"`

	// ImageStatus represents the prepull status for each image
	ImageStatus []ImageStatus `json:"imageStatus,omitempty"`

	// NodeName is the name of edge node.
	NodeName string `json:"nodeName,omitempty"`

	// Phase represents for the phase of the node task.
	Phase NodeTaskPhase `json:"phase,omitempty"`

	// Reason represents the reason for the failure of the node task.
	// +optional
	Reason string `json:"reason,omitempty"`
}

ImagePrePullNodeTaskStatus stores image prepull status for each edge node. +kubebuilder:validation:Type=object

func (*ImagePrePullNodeTaskStatus) DeepCopy

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

func (*ImagePrePullNodeTaskStatus) DeepCopyInto

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

type ImagePrePullTemplate

type ImagePrePullTemplate struct {
	// Images is the image list to be prepull
	Images []string `json:"images,omitempty"`

	// NodeNames is a request to select some specific nodes. If it is non-empty,
	// the upgrade job simply select these edge nodes to do upgrade operation.
	// Please note that sets of NodeNames and LabelSelector are ORed.
	// Users must set one and can only set one.
	// +optional
	NodeNames []string `json:"nodeNames,omitempty"`
	// LabelSelector is a filter to select member clusters by labels.
	// It must match a node's labels for the NodeUpgradeJob to be operated on that node.
	// Please note that sets of NodeNames and LabelSelector are ORed.
	// Users must set one and can only set one.
	// +optional
	LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`

	// CheckItems specifies the items need to be checked before the task is executed.
	// The default CheckItems value is disk.
	// +optional
	CheckItems []string `json:"checkItems,omitempty"`

	// FailureTolerate specifies the task tolerance failure ratio.
	// The default FailureTolerate value is 0.1.
	// +optional
	FailureTolerate string `json:"failureTolerate,omitempty"`

	// Concurrency specifies the maximum number of concurrent that edge nodes associated with
	// each CloudCore instance can pull images at the same time.
	// The default Concurrency value is 1.
	// +optional
	Concurrency int32 `json:"concurrency,omitempty"`

	// TimeoutSeconds limits the duration of the node prepull job on each edgenode.
	// Default to 300.
	// If set to 0, we'll use the default value 300.
	// +optional
	TimeoutSeconds *uint32 `json:"timeoutSeconds,omitempty"`

	// ImageSecret specifies the secret for image pull if private registry used.
	// Use {namespace}/{secretName} in format.
	// +optional
	ImageSecret string `json:"imageSecrets,omitempty"`

	// RetryTimes specifies the retry times if image pull failed on each edgenode.
	// Default to 0
	// +optional
	RetryTimes int32 `json:"retryTimes,omitempty"`
}

ImagePrePullTemplate represents original templates of imagePrePull

func (*ImagePrePullTemplate) DeepCopy

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

func (*ImagePrePullTemplate) DeepCopyInto

func (in *ImagePrePullTemplate) DeepCopyInto(out *ImagePrePullTemplate)

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

type ImageStatus

type ImageStatus struct {
	// Image is the name of the image
	Image string `json:"image,omitempty"`

	// State represents for the status of this image pull on the edge node.
	Status metav1.ConditionStatus `json:"status,omitempty"`

	// Reason represents the fail reason if image pull failed
	// +optional
	Reason string `json:"reason,omitempty"`
}

ImageStatus stores the prepull status for each image. +kubebuilder:validation:Type=object

func (*ImageStatus) DeepCopy

func (in *ImageStatus) DeepCopy() *ImageStatus

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

func (*ImageStatus) DeepCopyInto

func (in *ImageStatus) DeepCopyInto(out *ImageStatus)

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

type JobPhase

type JobPhase string
const (
	JobPhaseInit       JobPhase = "Init"
	JobPhaseInProgress JobPhase = "InProgress"
	JobPhaseCompleted  JobPhase = "Completed"
	JobPhaseFailure    JobPhase = "Failure"
)

Constants for job phase

type NodeTaskPhase

type NodeTaskPhase string
const (
	NodeTaskPhasePending    NodeTaskPhase = "Pending"
	NodeTaskPhaseInProgress NodeTaskPhase = "InProgress"
	NodeTaskPhaseSuccessful NodeTaskPhase = "Successful"
	NodeTaskPhaseFailure    NodeTaskPhase = "Failure"
	NodeTaskPhaseUnknown    NodeTaskPhase = "Unknown"
)

Constants for node task status.

type NodeUpgradeJob

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

	// Specification of the desired behavior of NodeUpgradeJob.
	// +optional
	Spec NodeUpgradeJobSpec `json:"spec,omitempty"`
	// Most recently observed status of the NodeUpgradeJob.
	// +optional
	Status NodeUpgradeJobStatus `json:"status,omitempty"`
}

NodeUpgradeJob is used to upgrade edge node from cloud side. +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster +kubebuilder:storageversion

func (*NodeUpgradeJob) DeepCopy

func (in *NodeUpgradeJob) DeepCopy() *NodeUpgradeJob

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

func (*NodeUpgradeJob) DeepCopyInto

func (in *NodeUpgradeJob) DeepCopyInto(out *NodeUpgradeJob)

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

func (*NodeUpgradeJob) DeepCopyObject

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

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

type NodeUpgradeJobAction

type NodeUpgradeJobAction string
const (
	NodeUpgradeJobActionCheck               NodeUpgradeJobAction = "Check"
	NodeUpgradeJobActionWaitingConfirmation NodeUpgradeJobAction = "WaitingConfirmation"
	NodeUpgradeJobActionBackUp              NodeUpgradeJobAction = "BackUp"
	NodeUpgradeJobActionUpgrade             NodeUpgradeJobAction = "Upgrade"
	NodeUpgradeJobActionRollBack            NodeUpgradeJobAction = "RollBack"
)

type NodeUpgradeJobActionStatus

type NodeUpgradeJobActionStatus struct {
	// Action represents for the action name
	Action NodeUpgradeJobAction `json:"action,omitempty"`

	// State represents for the status of this image pull on the edge node.
	Status metav1.ConditionStatus `json:"status,omitempty"`

	// Reason represents the reason for the failure of the action.
	// +optional
	Reason string `json:"reason,omitempty"`

	// Time represents for the running time of the node task.
	Time string `json:"time,omitempty"`
}

NodeUpgradeJobActionStatus defines the results of executing the action. +kubebuilder:validation:Type=object

func (*NodeUpgradeJobActionStatus) DeepCopy

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

func (*NodeUpgradeJobActionStatus) DeepCopyInto

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

type NodeUpgradeJobList

type NodeUpgradeJobList struct {
	// Standard type metadata.
	metav1.TypeMeta `json:",inline"`

	// Standard list metadata.
	metav1.ListMeta `json:"metadata,omitempty"`

	// List of NodeUpgradeJobs.
	Items []NodeUpgradeJob `json:"items"`
}

NodeUpgradeJobList is a list of NodeUpgradeJob.

func (*NodeUpgradeJobList) DeepCopy

func (in *NodeUpgradeJobList) DeepCopy() *NodeUpgradeJobList

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

func (*NodeUpgradeJobList) DeepCopyInto

func (in *NodeUpgradeJobList) DeepCopyInto(out *NodeUpgradeJobList)

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

func (*NodeUpgradeJobList) DeepCopyObject

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

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

type NodeUpgradeJobNodeTaskStatus

type NodeUpgradeJobNodeTaskStatus struct {
	// ActionFlow represents for the results of executing the action flow.
	ActionFlow []NodeUpgradeJobActionStatus `json:"actionFlow,omitempty"`

	// CurrentVersion represents for the current status of the EdgeCore.
	CurrentVersion string `json:"currentVersion,omitempty"`

	// HistoricVersion represents for the historic status of the EdgeCore.
	HistoricVersion string `json:"historicVersion,omitempty"`

	// NodeName is the name of edge node.
	NodeName string `json:"nodeName,omitempty"`

	// Phase represents for the phase of the node task.
	Phase NodeTaskPhase `json:"phase,omitempty"`

	// Reason represents the reason for the failure of the node task.
	// +optional
	Reason string `json:"reason,omitempty"`

	// State represents for the upgrade state phase of the edge node.
	// There are several possible state values: "", Upgrading, BackingUp, RollingBack and Checking.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	State fsmv1alpha1.State `json:"state,omitempty"`

	// Event represents for the event of the ImagePrePullJob.
	// There are three possible event values: Init, Check, Pull.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	Event string `json:"event,omitempty"`
}

NodeUpgradeJobNodeTaskStatus stores the status of Upgrade for each edge node. +kubebuilder:validation:Type=object

func (*NodeUpgradeJobNodeTaskStatus) DeepCopy

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

func (*NodeUpgradeJobNodeTaskStatus) DeepCopyInto

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

type NodeUpgradeJobSpec

type NodeUpgradeJobSpec struct {
	// +Required: Version is the EdgeCore version to upgrade.
	Version string `json:"version,omitempty"`

	// TimeoutSeconds limits the duration of the node upgrade job.
	// Default to 300.
	// If set to 0, we'll use the default value 300.
	// +optional
	TimeoutSeconds *uint32 `json:"timeoutSeconds,omitempty"`

	// NodeNames is a request to select some specific nodes. If it is non-empty,
	// the upgrade job simply select these edge nodes to do upgrade operation.
	// Please note that sets of NodeNames and LabelSelector are ORed.
	// Users must set one and can only set one.
	// +optional
	NodeNames []string `json:"nodeNames,omitempty"`

	// LabelSelector is a filter to select member clusters by labels.
	// It must match a node's labels for the NodeUpgradeJob to be operated on that node.
	// Please note that sets of NodeNames and LabelSelector are ORed.
	// Users must set one and can only set one.
	// +optional
	LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`

	// Image specifies a container image name, the image contains: keadm and edgecore.
	// keadm is used as upgradetool, to install the new version of edgecore.
	// The image name consists of registry hostname and repository name,
	// if it includes the tag or digest, the tag or digest will be overwritten by Version field above.
	// If the registry hostname is empty, docker.io will be used as default.
	// The default image name is: kubeedge/installation-package.
	// +optional
	Image string `json:"image,omitempty"`

	// ImageDigestGetter define registry v2 interface access configuration.
	// As a transition, it is not required at first, and the image digest is checked when this field is set.
	// +optional
	ImageDigestGetter *ImageDigestGetter `json:"imageDigestGatter"`

	// Concurrency specifies the maximum number of concurrent that edge nodes associated with
	// each CloudCore instance can be upgraded at the same time.
	// The default Concurrency value is 1.
	// +optional
	Concurrency int32 `json:"concurrency,omitempty"`

	// CheckItems specifies the items need to be checked before the task is executed.
	// The default CheckItems value is nil.
	// +optional
	CheckItems []string `json:"checkItems,omitempty"`

	// FailureTolerate specifies the task tolerance failure ratio.
	// The default FailureTolerate value is 0.1.
	// +optional
	FailureTolerate string `json:"failureTolerate,omitempty"`

	// RequireConfirmation specifies whether you need to confirm the upgrade.
	// The default RequireConfirmation value is false.
	// +optional
	RequireConfirmation bool `json:"requireConfirmation,omitempty"`
}

NodeUpgradeJobSpec is the specification of the desired behavior of the NodeUpgradeJob.

func (*NodeUpgradeJobSpec) DeepCopy

func (in *NodeUpgradeJobSpec) DeepCopy() *NodeUpgradeJobSpec

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

func (*NodeUpgradeJobSpec) DeepCopyInto

func (in *NodeUpgradeJobSpec) DeepCopyInto(out *NodeUpgradeJobSpec)

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

type NodeUpgradeJobStatus

type NodeUpgradeJobStatus struct {
	// Phase represents for the phase of the NodeUpgradeJob
	Phase JobPhase `json:"phase"`

	// NodeStatus contains upgrade Status for each edge node.
	NodeStatus []NodeUpgradeJobNodeTaskStatus `json:"nodeStatus,omitempty"`

	// Reason represents for the reason of the NodeUpgradeJob.
	// +optional
	Reason string `json:"reason,omitempty"`

	// State represents for the state phase of the NodeUpgradeJob.
	// There are several possible state values: "", Upgrading, BackingUp, RollingBack and Checking.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	State fsmv1alpha1.State `json:"state,omitempty"`

	// CurrentVersion represents for the current status of the EdgeCore.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	CurrentVersion string `json:"currentVersion,omitempty"`

	// HistoricVersion represents for the historic status of the EdgeCore.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	HistoricVersion string `json:"historicVersion,omitempty"`

	// Time represents for the running time of the ImagePrePullJob.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	Time string `json:"time,omitempty"`

	// Event represents for the event of the ImagePrePullJob.
	// There are six possible event values: Init, Check, BackUp, Upgrade, TimeOut, Rollback.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	Event string `json:"event,omitempty"`

	// Action represents for the action of the ImagePrePullJob.
	// There are two possible action values: Success, Failure.
	// +optional
	// Deprecated: For compatibility with v1alpha1 version, It will be removed in v1.23
	Action fsmv1alpha1.Action `json:"action,omitempty"`
}

NodeUpgradeJobStatus stores the status of NodeUpgradeJob. contains multiple edge nodes upgrade status. +kubebuilder:validation:Type=object

func (*NodeUpgradeJobStatus) DeepCopy

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

func (*NodeUpgradeJobStatus) DeepCopyInto

func (in *NodeUpgradeJobStatus) DeepCopyInto(out *NodeUpgradeJobStatus)

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

type RegistryAPI

type RegistryAPI struct {
	Host  string `json:"host"`
	Token string `json:"token"`
}

RegistryAPI used to define registry v2 interface access configuration.

func (*RegistryAPI) DeepCopy

func (in *RegistryAPI) DeepCopy() *RegistryAPI

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

func (*RegistryAPI) DeepCopyInto

func (in *RegistryAPI) DeepCopyInto(out *RegistryAPI)

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