v1alpha1

package
v1.3.3 Latest Latest
Warning

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

Go to latest
Published: Jul 4, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ControllerRevisionHashLabelKey is used to record the controller revision of current resource.
	ControllerRevisionHashLabelKey = "apps.openyurt.io/controller-revision-hash"

	// PoolNameLabelKey is used to record the name of current pool.
	PoolNameLabelKey = "apps.openyurt.io/pool-name"

	// SpecifiedDeleteKey indicates this object should be deleted, and the value could be the deletion option.
	SpecifiedDeleteKey = "apps.openyurt.io/specified-delete"

	// AnnotationPatchKey indicates the patch for every sub pool
	AnnotationPatchKey = "apps.openyurt.io/patch"

	AnnotationRefNodePool = "apps.openyurt.io/ref-nodepool"
)

YurtAppSet & YurtAppDaemon related labels and annotations

View Source
const (
	// LabelDesiredNodePool indicates which nodepool the node want to join
	LabelDesiredNodePool = "apps.openyurt.io/desired-nodepool"

	// LabelCurrentNodePool indicates which nodepool the node is currently
	// belonging to
	LabelCurrentNodePool = "apps.openyurt.io/nodepool"

	// LabelCurrentYurtAppDaemon indicates which service the yurtappdaemon is currently
	// belonging to
	LabelCurrentYurtAppDaemon = "apps.openyurt.io/yurtappdaemon"

	AnnotationPrevAttrs = "nodepool.openyurt.io/previous-attributes"

	// DefaultCloudNodePoolName defines the name of the default cloud nodepool
	DefaultCloudNodePoolName = "default-nodepool"

	// DefaultEdgeNodePoolName defines the name of the default edge nodepool
	DefaultEdgeNodePoolName = "default-edge-nodepool"

	// ServiceTopologyKey is the toplogy key that will be attached to node,
	// the value will be the name of the nodepool
	ServiceTopologyKey = "topology.kubernetes.io/zone"
)

NodePool related labels and annotations

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "apps.openyurt.io", Version: "v1alpha1"}

	SchemeGroupVersion = GroupVersion

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

func Resource(resource string) schema.GroupResource

Resource is required by pkg/client/listers/...

func SetDefaultPodSpec

func SetDefaultPodSpec(in *corev1.PodSpec)

SetDefaultPodSpec sets default pod spec

func SetDefaultsNodePool

func SetDefaultsNodePool(obj *NodePool)

SetDefaultsNodePool set default values for NodePool.

func SetDefaultsYurtAppDaemon

func SetDefaultsYurtAppDaemon(obj *YurtAppDaemon)

SetDefaultsYurtAppDaemon set default values for YurtAppDaemon.

func SetDefaultsYurtAppSet

func SetDefaultsYurtAppSet(obj *YurtAppSet)

SetDefaultsYurtAppSet set default values for YurtAppSet.

func SetDefaultsYurtStaticSet

func SetDefaultsYurtStaticSet(obj *YurtStaticSet)

SetDefaultsYurtStaticSet sets default values for YurtStaticSet.

Types

type DeploymentTemplateSpec

type DeploymentTemplateSpec struct {
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	Spec appsv1.DeploymentSpec `json:"spec"`
}

DeploymentTemplateSpec defines the pool template of Deployment.

func (*DeploymentTemplateSpec) DeepCopy

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

func (*DeploymentTemplateSpec) DeepCopyInto

func (in *DeploymentTemplateSpec) DeepCopyInto(out *DeploymentTemplateSpec)

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

type NodePool

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

	Spec   NodePoolSpec   `json:"spec,omitempty"`
	Status NodePoolStatus `json:"status,omitempty"`
}

NodePool is the Schema for the nodepools API

func (*NodePool) DeepCopy

func (in *NodePool) DeepCopy() *NodePool

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

func (*NodePool) DeepCopyInto

func (in *NodePool) DeepCopyInto(out *NodePool)

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

func (*NodePool) DeepCopyObject

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

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

func (*NodePool) Hub

func (*NodePool) Hub()

Hub marks this type as a conversion hub.

type NodePoolList

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

NodePoolList contains a list of NodePool

func (*NodePoolList) DeepCopy

func (in *NodePoolList) DeepCopy() *NodePoolList

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

func (*NodePoolList) DeepCopyInto

func (in *NodePoolList) DeepCopyInto(out *NodePoolList)

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

func (*NodePoolList) DeepCopyObject

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

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

type NodePoolSpec

type NodePoolSpec struct {
	// The type of the NodePool
	// +optional
	Type NodePoolType `json:"type,omitempty"`

	// A label query over nodes to consider for adding to the pool
	// +optional
	Selector *metav1.LabelSelector `json:"selector,omitempty"`

	// If specified, the Labels will be added to all nodes.
	// NOTE: existing labels with samy keys on the nodes will be overwritten.
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// If specified, the Annotations will be added to all nodes.
	// NOTE: existing labels with samy keys on the nodes will be overwritten.
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`

	// If specified, the Taints will be added to all nodes.
	// +optional
	Taints []v1.Taint `json:"taints,omitempty"`
}

NodePoolSpec defines the desired state of NodePool

func (*NodePoolSpec) DeepCopy

func (in *NodePoolSpec) DeepCopy() *NodePoolSpec

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

func (*NodePoolSpec) DeepCopyInto

func (in *NodePoolSpec) DeepCopyInto(out *NodePoolSpec)

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

type NodePoolStatus

type NodePoolStatus struct {
	// Total number of ready nodes in the pool.
	// +optional
	ReadyNodeNum int32 `json:"readyNodeNum"`

	// Total number of unready nodes in the pool.
	// +optional
	UnreadyNodeNum int32 `json:"unreadyNodeNum"`

	// The list of nodes' names in the pool
	// +optional
	Nodes []string `json:"nodes,omitempty"`
}

NodePoolStatus defines the observed state of NodePool

func (*NodePoolStatus) DeepCopy

func (in *NodePoolStatus) DeepCopy() *NodePoolStatus

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

func (*NodePoolStatus) DeepCopyInto

func (in *NodePoolStatus) DeepCopyInto(out *NodePoolStatus)

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

type NodePoolType

type NodePoolType string
const (
	Edge  NodePoolType = "Edge"
	Cloud NodePoolType = "Cloud"
)

type Pool

type Pool struct {
	// Indicates pool name as a DNS_LABEL, which will be used to generate
	// pool workload name prefix in the format '<deployment-name>-<pool-name>-'.
	// Name should be unique between all of the pools under one YurtAppSet.
	// Name is NodePool Name
	Name string `json:"name"`

	// Indicates the node selector to form the pool. Depending on the node selector,
	// pods provisioned could be distributed across multiple groups of nodes.
	// A pool's nodeSelectorTerm is not allowed to be updated.
	// +optional
	NodeSelectorTerm corev1.NodeSelectorTerm `json:"nodeSelectorTerm,omitempty"`

	// Indicates the tolerations the pods under this pool have.
	// A pool's tolerations is not allowed to be updated.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`

	// Indicates the number of the pod to be created under this pool.
	// +required
	Replicas *int32 `json:"replicas,omitempty"`

	// Indicates the patch for the templateSpec
	// Now support strategic merge path :https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/#notes-on-the-strategic-merge-patch
	// Patch takes precedence over Replicas fields
	// If the Patch also modifies the Replicas, use the Replicas value in the Patch
	// +optional
	// +kubebuilder:pruning:PreserveUnknownFields
	Patch *runtime.RawExtension `json:"patch,omitempty"`
}

Pool defines the detail of a pool.

func (*Pool) DeepCopy

func (in *Pool) DeepCopy() *Pool

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

func (*Pool) DeepCopyInto

func (in *Pool) DeepCopyInto(out *Pool)

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

type StatefulSetTemplateSpec

type StatefulSetTemplateSpec struct {
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	Spec appsv1.StatefulSetSpec `json:"spec"`
}

StatefulSetTemplateSpec defines the pool template of StatefulSet.

func (*StatefulSetTemplateSpec) DeepCopy

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

func (*StatefulSetTemplateSpec) DeepCopyInto

func (in *StatefulSetTemplateSpec) DeepCopyInto(out *StatefulSetTemplateSpec)

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

type TemplateType

type TemplateType string
const (
	StatefulSetTemplateType TemplateType = "StatefulSet"
	DeploymentTemplateType  TemplateType = "Deployment"
)

type Topology

type Topology struct {
	// Contains the details of each pool. Each element in this array represents one pool
	// which will be provisioned and managed by YurtAppSet.
	// +optional
	Pools []Pool `json:"pools,omitempty"`
}

Topology defines the spread detail of each pool under YurtAppSet. A YurtAppSet manages multiple homogeneous workloads which are called pool. Each of pools under the YurtAppSet is described in Topology.

func (*Topology) DeepCopy

func (in *Topology) DeepCopy() *Topology

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

func (*Topology) DeepCopyInto

func (in *Topology) DeepCopyInto(out *Topology)

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

type WorkloadTemplate

type WorkloadTemplate struct {
	// StatefulSet template
	// +optional
	StatefulSetTemplate *StatefulSetTemplateSpec `json:"statefulSetTemplate,omitempty"`

	// Deployment template
	// +optional
	DeploymentTemplate *DeploymentTemplateSpec `json:"deploymentTemplate,omitempty"`
}

WorkloadTemplate defines the pool template under the YurtAppSet. YurtAppSet will provision every pool based on one workload templates in WorkloadTemplate. WorkloadTemplate now support statefulset and deployment Only one of its members may be specified.

func (*WorkloadTemplate) DeepCopy

func (in *WorkloadTemplate) DeepCopy() *WorkloadTemplate

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

func (*WorkloadTemplate) DeepCopyInto

func (in *WorkloadTemplate) DeepCopyInto(out *WorkloadTemplate)

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

type YurtAppDaemon

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

	Spec   YurtAppDaemonSpec   `json:"spec,omitempty"`
	Status YurtAppDaemonStatus `json:"status,omitempty"`
}

YurtAppDaemon is the Schema for the samples API

func (*YurtAppDaemon) DeepCopy

func (in *YurtAppDaemon) DeepCopy() *YurtAppDaemon

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

func (*YurtAppDaemon) DeepCopyInto

func (in *YurtAppDaemon) DeepCopyInto(out *YurtAppDaemon)

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

func (*YurtAppDaemon) DeepCopyObject

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

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

type YurtAppDaemonCondition

type YurtAppDaemonCondition struct {
	// Type of in place set condition.
	Type YurtAppDaemonConditionType `json:"type,omitempty"`

	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus `json:"status,omitempty"`

	// Last time the condition transitioned from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`

	// The reason for the condition's last transition.
	Reason string `json:"reason,omitempty"`

	// A human readable message indicating details about the transition.
	Message string `json:"message,omitempty"`
}

YurtAppDaemonCondition describes current state of a YurtAppDaemon.

func (*YurtAppDaemonCondition) DeepCopy

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

func (*YurtAppDaemonCondition) DeepCopyInto

func (in *YurtAppDaemonCondition) DeepCopyInto(out *YurtAppDaemonCondition)

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

type YurtAppDaemonConditionType

type YurtAppDaemonConditionType string

YurtAppDaemonConditionType indicates valid conditions type of a YurtAppDaemon.

const (
	// WorkLoadProvisioned means all the expected workload are provisioned
	WorkLoadProvisioned YurtAppDaemonConditionType = "WorkLoadProvisioned"
	// WorkLoadUpdated means all the workload are updated.
	WorkLoadUpdated YurtAppDaemonConditionType = "WorkLoadUpdated"
	// WorkLoadFailure is added to a YurtAppSet when one of its workload has failure during its own reconciling.
	WorkLoadFailure YurtAppDaemonConditionType = "WorkLoadFailure"
)

type YurtAppDaemonList

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

YurtAppDaemonList contains a list of YurtAppDaemon

func (*YurtAppDaemonList) DeepCopy

func (in *YurtAppDaemonList) DeepCopy() *YurtAppDaemonList

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

func (*YurtAppDaemonList) DeepCopyInto

func (in *YurtAppDaemonList) DeepCopyInto(out *YurtAppDaemonList)

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

func (*YurtAppDaemonList) DeepCopyObject

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

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

type YurtAppDaemonSpec

type YurtAppDaemonSpec struct {
	// Selector is a label query over pods that should match the replica count.
	// It must match the pod template's labels.
	Selector *metav1.LabelSelector `json:"selector"`

	// WorkloadTemplate describes the pool that will be created.
	// +optional
	WorkloadTemplate WorkloadTemplate `json:"workloadTemplate,omitempty"`

	// NodePoolSelector is a label query over nodepool that should match the replica count.
	// It must match the nodepool's labels.
	NodePoolSelector *metav1.LabelSelector `json:"nodepoolSelector"`

	// Indicates the number of histories to be conserved.
	// If unspecified, defaults to 10.
	// +optional
	RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty"`
}

YurtAppDaemonSpec defines the desired state of YurtAppDaemon

func (*YurtAppDaemonSpec) DeepCopy

func (in *YurtAppDaemonSpec) DeepCopy() *YurtAppDaemonSpec

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

func (*YurtAppDaemonSpec) DeepCopyInto

func (in *YurtAppDaemonSpec) DeepCopyInto(out *YurtAppDaemonSpec)

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

type YurtAppDaemonStatus

type YurtAppDaemonStatus struct {
	// ObservedGeneration is the most recent generation observed for this YurtAppDaemon. It corresponds to the
	// YurtAppDaemon's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// Count of hash collisions for the YurtAppDaemon. The YurtAppDaemon controller
	// uses this field as a collision avoidance mechanism when it needs to
	// create the name for the newest ControllerRevision.
	// +optional
	CollisionCount *int32 `json:"collisionCount,omitempty"`

	// CurrentRevision, if not empty, indicates the current version of the YurtAppDaemon.
	CurrentRevision string `json:"currentRevision"`

	// Represents the latest available observations of a YurtAppDaemon's current state.
	// +optional
	Conditions []YurtAppDaemonCondition `json:"conditions,omitempty"`

	// TemplateType indicates the type of PoolTemplate
	TemplateType TemplateType `json:"templateType"`

	// NodePools indicates the list of node pools selected by YurtAppDaemon
	NodePools []string `json:"nodepools,omitempty"`
}

YurtAppDaemonStatus defines the observed state of YurtAppDaemon

func (*YurtAppDaemonStatus) DeepCopy

func (in *YurtAppDaemonStatus) DeepCopy() *YurtAppDaemonStatus

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

func (*YurtAppDaemonStatus) DeepCopyInto

func (in *YurtAppDaemonStatus) DeepCopyInto(out *YurtAppDaemonStatus)

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

type YurtAppSet

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

	Spec   YurtAppSetSpec   `json:"spec,omitempty"`
	Status YurtAppSetStatus `json:"status,omitempty"`
}

YurtAppSet is the Schema for the yurtAppSets API

func (*YurtAppSet) DeepCopy

func (in *YurtAppSet) DeepCopy() *YurtAppSet

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

func (*YurtAppSet) DeepCopyInto

func (in *YurtAppSet) DeepCopyInto(out *YurtAppSet)

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

func (*YurtAppSet) DeepCopyObject

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

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

type YurtAppSetCondition

type YurtAppSetCondition struct {
	// Type of in place set condition.
	Type YurtAppSetConditionType `json:"type,omitempty"`

	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus `json:"status,omitempty"`

	// Last time the condition transitioned from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`

	// The reason for the condition's last transition.
	Reason string `json:"reason,omitempty"`

	// A human readable message indicating details about the transition.
	Message string `json:"message,omitempty"`
}

YurtAppSetCondition describes current state of a YurtAppSet.

func (*YurtAppSetCondition) DeepCopy

func (in *YurtAppSetCondition) DeepCopy() *YurtAppSetCondition

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

func (*YurtAppSetCondition) DeepCopyInto

func (in *YurtAppSetCondition) DeepCopyInto(out *YurtAppSetCondition)

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

type YurtAppSetConditionType

type YurtAppSetConditionType string

YurtAppSetConditionType indicates valid conditions type of a YurtAppSet.

const (
	// PoolProvisioned means all the expected pools are provisioned and unexpected pools are deleted.
	PoolProvisioned YurtAppSetConditionType = "PoolProvisioned"
	// PoolUpdated means all the pools are updated.
	PoolUpdated YurtAppSetConditionType = "PoolUpdated"
	// PoolFailure is added to a YurtAppSet when one of its pools has failure during its own reconciling.
	PoolFailure YurtAppSetConditionType = "PoolFailure"
)

type YurtAppSetList

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

YurtAppSetList contains a list of YurtAppSet

func (*YurtAppSetList) DeepCopy

func (in *YurtAppSetList) DeepCopy() *YurtAppSetList

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

func (*YurtAppSetList) DeepCopyInto

func (in *YurtAppSetList) DeepCopyInto(out *YurtAppSetList)

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

func (*YurtAppSetList) DeepCopyObject

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

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

type YurtAppSetSpec

type YurtAppSetSpec struct {
	// Selector is a label query over pods that should match the replica count.
	// It must match the pod template's labels.
	Selector *metav1.LabelSelector `json:"selector"`

	// WorkloadTemplate describes the pool that will be created.
	// +optional
	WorkloadTemplate WorkloadTemplate `json:"workloadTemplate,omitempty"`

	// Topology describes the pods distribution detail between each of pools.
	// +optional
	Topology Topology `json:"topology,omitempty"`

	// Indicates the number of histories to be conserved.
	// If unspecified, defaults to 10.
	// +optional
	RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty"`
}

YurtAppSetSpec defines the desired state of YurtAppSet.

func (*YurtAppSetSpec) DeepCopy

func (in *YurtAppSetSpec) DeepCopy() *YurtAppSetSpec

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

func (*YurtAppSetSpec) DeepCopyInto

func (in *YurtAppSetSpec) DeepCopyInto(out *YurtAppSetSpec)

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

type YurtAppSetStatus

type YurtAppSetStatus struct {
	// ObservedGeneration is the most recent generation observed for this YurtAppSet. It corresponds to the
	// YurtAppSet's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// Count of hash collisions for the YurtAppSet. The YurtAppSet controller
	// uses this field as a collision avoidance mechanism when it needs to
	// create the name for the newest ControllerRevision.
	// +optional
	CollisionCount *int32 `json:"collisionCount,omitempty"`

	// CurrentRevision, if not empty, indicates the current version of the YurtAppSet.
	CurrentRevision string `json:"currentRevision"`

	// Represents the latest available observations of a YurtAppSet's current state.
	// +optional
	Conditions []YurtAppSetCondition `json:"conditions,omitempty"`

	// Records the topology detail information of the replicas of each pool.
	// +optional
	PoolReplicas map[string]int32 `json:"poolReplicas,omitempty"`

	// The number of ready replicas.
	// +optional
	ReadyReplicas int32 `json:"readyReplicas"`

	// Replicas is the most recently observed number of replicas.
	Replicas int32 `json:"replicas"`

	// TemplateType indicates the type of PoolTemplate
	TemplateType TemplateType `json:"templateType"`
}

YurtAppSetStatus defines the observed state of YurtAppSet.

func (*YurtAppSetStatus) DeepCopy

func (in *YurtAppSetStatus) DeepCopy() *YurtAppSetStatus

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

func (*YurtAppSetStatus) DeepCopyInto

func (in *YurtAppSetStatus) DeepCopyInto(out *YurtAppSetStatus)

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

type YurtStaticSet

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

	Spec   YurtStaticSetSpec   `json:"spec,omitempty"`
	Status YurtStaticSetStatus `json:"status,omitempty"`
}

YurtStaticSet is the Schema for the yurtstaticsets API

func (*YurtStaticSet) DeepCopy

func (in *YurtStaticSet) DeepCopy() *YurtStaticSet

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

func (*YurtStaticSet) DeepCopyInto

func (in *YurtStaticSet) DeepCopyInto(out *YurtStaticSet)

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

func (*YurtStaticSet) DeepCopyObject

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

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

type YurtStaticSetList

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

YurtStaticSetList contains a list of YurtStaticSet

func (*YurtStaticSetList) DeepCopy

func (in *YurtStaticSetList) DeepCopy() *YurtStaticSetList

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

func (*YurtStaticSetList) DeepCopyInto

func (in *YurtStaticSetList) DeepCopyInto(out *YurtStaticSetList)

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

func (*YurtStaticSetList) DeepCopyObject

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

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

type YurtStaticSetSpec

type YurtStaticSetSpec struct {
	// StaticPodManifest indicates the file name of static pod manifest.
	// The corresponding manifest file name is `StaticPodManifest.yaml`.
	StaticPodManifest string `json:"staticPodManifest,omitempty"`

	// An upgrade strategy to replace existing static pods with new ones.
	UpgradeStrategy YurtStaticSetUpgradeStrategy `json:"upgradeStrategy,omitempty"`

	// The number of old history to retain to allow rollback.
	// Defaults to 10.
	// +optional
	RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty"`

	// An object that describes the desired spec of static pod.
	// +optional
	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	Template corev1.PodTemplateSpec `json:"template,omitempty"`
}

YurtStaticSetSpec defines the desired state of YurtStaticSet

func (*YurtStaticSetSpec) DeepCopy

func (in *YurtStaticSetSpec) DeepCopy() *YurtStaticSetSpec

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

func (*YurtStaticSetSpec) DeepCopyInto

func (in *YurtStaticSetSpec) DeepCopyInto(out *YurtStaticSetSpec)

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

type YurtStaticSetStatus

type YurtStaticSetStatus struct {
	// The total number of nodes that are running the static pod.
	TotalNumber int32 `json:"totalNumber"`

	// The number of ready static pods.
	ReadyNumber int32 `json:"readyNumber"`

	// The number of nodes that are running updated static pod.
	UpgradedNumber int32 `json:"upgradedNumber"`

	// The most recent generation observed by the static pod controller.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration"`
}

YurtStaticSetStatus defines the observed state of YurtStaticSet

func (*YurtStaticSetStatus) DeepCopy

func (in *YurtStaticSetStatus) DeepCopy() *YurtStaticSetStatus

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

func (*YurtStaticSetStatus) DeepCopyInto

func (in *YurtStaticSetStatus) DeepCopyInto(out *YurtStaticSetStatus)

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

type YurtStaticSetUpgradeStrategy

type YurtStaticSetUpgradeStrategy struct {
	// Type of YurtStaticSet upgrade. Can be "AdvancedRollingUpdate" or "OTA".
	Type YurtStaticSetUpgradeStrategyType `json:"type,omitempty"`

	// AdvancedRollingUpdate upgrade config params. Present only if type = "AdvancedRollingUpdate".
	//+optional
	MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"`
}

YurtStaticSetUpgradeStrategy defines a strategy to upgrade static pods.

func (*YurtStaticSetUpgradeStrategy) DeepCopy

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

func (*YurtStaticSetUpgradeStrategy) DeepCopyInto

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

type YurtStaticSetUpgradeStrategyType

type YurtStaticSetUpgradeStrategyType string

YurtStaticSetUpgradeStrategyType is a strategy according to which static pods gets upgraded.

const (
	AdvancedRollingUpdateUpgradeStrategyType YurtStaticSetUpgradeStrategyType = "AdvancedRollingUpdate"
	OTAUpgradeStrategyType                   YurtStaticSetUpgradeStrategyType = "OTA"
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL