Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the workload v1beta1 API group +kubebuilder:object:generate=true +groupName=workload.dmall.domain
Index ¶
- Variables
- type AdvDeployment
- func (in *AdvDeployment) DeepCopy() *AdvDeployment
- func (in *AdvDeployment) DeepCopyInto(out *AdvDeployment)
- func (in *AdvDeployment) DeepCopyObject() runtime.Object
- func (in *AdvDeployment) Default()
- func (in *AdvDeployment) ValidateCreate() error
- func (in *AdvDeployment) ValidateUpdate(old runtime.Object) error
- type AdvDeploymentAggrStatus
- type AdvDeploymentCondition
- type AdvDeploymentConditionType
- type AdvDeploymentList
- type AdvDeploymentSpec
- type AdvDeploymentStatus
- type AdvDeploymentUpdateStrategy
- type AggrAppSetStatus
- type AppSet
- type AppSetCondition
- type AppSetConditionType
- type AppSetList
- type AppSetSpec
- type AppSetStatus
- type AppSetUpdateStrategy
- type AppStatus
- type ChartSpec
- type ChartURL
- type ClusterAppActual
- type ClusterTopology
- type DeployState
- type Endpoint
- type Event
- type Pod
- type PodSet
- type PodSetStatusInfo
- type PodSpec
- type PodUpdateStrategyType
- type Service
- type ServicePort
- type StatefulSetStrategy
- type TargetCluster
- type Topology
- type UpdatePriorityOrderTerm
- type UpdatePriorityStrategy
- type UpdatePriorityWeightTerm
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "workload.dmall.com", 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 AdvDeployment ¶
type AdvDeployment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AdvDeploymentSpec `json:"spec,omitempty"` Status AdvDeploymentStatus `json:"status,omitempty"` }
AdvDeployment is the Schema for the advdeployments API +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=ad +kubebuilder:printcolumn:name="DESIRED",type="integer",JSONPath=".status.aggrStatus.desired",description="The desired number of pods." +kubebuilder:printcolumn:name="AVAILABLE",type="integer",JSONPath=".status.aggrStatus.available",description="The number of pods ready." +kubebuilder:printcolumn:name="UNAVAILABLE",type="integer",JSONPath=".status.aggrStatus.unAvailable",description="The number of pods unAvailable." +kubebuilder:printcolumn:name="VERSION",type="string",JSONPath=".status.aggrStatus.version",description="The image version." +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.aggrStatus.status",description="The app run status." +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp",description="CreationTimestamp is a timestamp representing the server time when this object was created. "
func (*AdvDeployment) DeepCopy ¶
func (in *AdvDeployment) DeepCopy() *AdvDeployment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvDeployment.
func (*AdvDeployment) DeepCopyInto ¶
func (in *AdvDeployment) DeepCopyInto(out *AdvDeployment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AdvDeployment) DeepCopyObject ¶
func (in *AdvDeployment) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AdvDeployment) Default ¶
func (in *AdvDeployment) Default()
Default makes AdvDeployment an mutating webhook When delete, if error occurs, finalizer is a good options for us to retry and record the events.
func (*AdvDeployment) ValidateCreate ¶
func (in *AdvDeployment) ValidateCreate() error
ValidateCreate implements webhook.Validator 1. check filed regex
func (*AdvDeployment) ValidateUpdate ¶
func (in *AdvDeployment) ValidateUpdate(old runtime.Object) error
ValidateUpdate validate HelmRequest update request immutable fields: 1. ...
type AdvDeploymentAggrStatus ¶
type AdvDeploymentAggrStatus struct { OwnerResource []string `json:"ownerResource,omitempty"` Status AppStatus `json:"status,omitempty"` Version string `json:"version,omitempty"` Desired int32 `json:"desired"` Available int32 `json:"available"` UnAvailable int32 `json:"unAvailable"` PodSets []*PodSetStatusInfo `json:"podSets,omitempty"` }
AdvDeploymentAggrStatus advdeployment aggrestatus info
func (*AdvDeploymentAggrStatus) DeepCopy ¶
func (in *AdvDeploymentAggrStatus) DeepCopy() *AdvDeploymentAggrStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvDeploymentAggrStatus.
func (*AdvDeploymentAggrStatus) DeepCopyInto ¶
func (in *AdvDeploymentAggrStatus) DeepCopyInto(out *AdvDeploymentAggrStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdvDeploymentCondition ¶
type AdvDeploymentCondition struct { // Type of deployment condition. Type AdvDeploymentConditionType `json:"type"` // Status of the condition, one of True, False, Unknown. Status corev1.ConditionStatus `json:"status"` // The last time this condition was updated. LastUpdateTime metav1.Time `json:"lastUpdateTime,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"` }
AdvDeploymentCondition describes the state of a adv deployment at a certain point.
func (*AdvDeploymentCondition) DeepCopy ¶
func (in *AdvDeploymentCondition) DeepCopy() *AdvDeploymentCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvDeploymentCondition.
func (*AdvDeploymentCondition) DeepCopyInto ¶
func (in *AdvDeploymentCondition) DeepCopyInto(out *AdvDeploymentCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdvDeploymentConditionType ¶
type AdvDeploymentConditionType string
AdvDeploymentConditionType advdeployment condition type
const ( // Available means the deployment is available, ie. at least the minimum available // replicas required are up and running for at least minReadySeconds. DeploymentAvailable AdvDeploymentConditionType = "Available" // Progressing means the deployment is progressing. Progress for a deployment is // considered when a new replica set is created or adopted, and when new pods scale // up or old pods scale down. Progress is not estimated for paused deployments or // when progressDeadlineSeconds is not specified. DeploymentProgressing AdvDeploymentConditionType = "Progressing" // ReplicaFailure is added in a deployment when one of its pods fails to be created // or deleted. DeploymentReplicaFailure AdvDeploymentConditionType = "ReplicaFailure" )
These are valid conditions of a deployment.
type AdvDeploymentList ¶
type AdvDeploymentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AdvDeployment `json:"items"` }
AdvDeploymentList contains a list of AdvDeployment
func (*AdvDeploymentList) DeepCopy ¶
func (in *AdvDeploymentList) DeepCopy() *AdvDeploymentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvDeploymentList.
func (*AdvDeploymentList) DeepCopyInto ¶
func (in *AdvDeploymentList) DeepCopyInto(out *AdvDeploymentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AdvDeploymentList) DeepCopyObject ¶
func (in *AdvDeploymentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AdvDeploymentSpec ¶
type AdvDeploymentSpec struct { // Replicas is the total desired replicas of all the subsets. // If unspecified, defaults to 1. // +optional Replicas *int32 `json:"replicas,omitempty"` ServiceName *string `json:"serviceName,omitempty"` // template is the object that describes the pod that will be created if // insufficient replicas are detected. Each pod stamped out by the workload // will fulfill this Template, but have a unique identity from the rest // of the workload. PodSpec PodSpec `json:"podSpec,omitempty"` // UpdateStrategy indicates the strategy the advDeployment use to preform the update, // when template is changed. // +optional UpdateStrategy AdvDeploymentUpdateStrategy `json:"updateStrategy,omitempty"` // Topology describes the pods distribution detail between each of subsets. // +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"` }
AdvDeploymentSpec defines the desired state of AdvDeployment
func (*AdvDeploymentSpec) DeepCopy ¶
func (in *AdvDeploymentSpec) DeepCopy() *AdvDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvDeploymentSpec.
func (*AdvDeploymentSpec) DeepCopyInto ¶
func (in *AdvDeploymentSpec) DeepCopyInto(out *AdvDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdvDeploymentStatus ¶
type AdvDeploymentStatus struct { // observedGeneration is the most recent generation observed for this workload. It corresponds to the // StatefulSet's generation, which is updated on mutation by the API Server. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions []AdvDeploymentCondition `json:"conditions,omitempty"` // currentRevision, if not empty, indicates the version of the workload used to generate Pods in the // sequence [0,currentReplicas). CurrentRevision string `json:"currentRevision,omitempty"` // updateRevision, if not empty, indicates the version of the workload used to generate Pods in the sequence // [replicas-updatedReplicas,replicas) UpdateRevision string `json:"updateRevision,omitempty"` // LastUpdateTime *metav1.Time `json:"lastUpdateTime,omitempty"` // collisionCount is the count of hash collisions for the workload. The workload 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"` // AggrStatus AdvDeploymentAggrStatus `json:"aggrStatus,omitempty"` }
AdvDeploymentStatus defines the observed state of AdvDeployment
func (*AdvDeploymentStatus) DeepCopy ¶
func (in *AdvDeploymentStatus) DeepCopy() *AdvDeploymentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvDeploymentStatus.
func (*AdvDeploymentStatus) DeepCopyInto ¶
func (in *AdvDeploymentStatus) DeepCopyInto(out *AdvDeploymentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdvDeploymentUpdateStrategy ¶
type AdvDeploymentUpdateStrategy struct { // canary, blue, green UpgradeType string `json:"upgradeType,omitempty"` StatefulSetStrategy *StatefulSetStrategy `json:"statefulSetStrategy,omitempty"` MinReadySeconds int32 `json:"minReadySeconds,omitempty"` Meta map[string]string `json:"meta,omitempty"` // Priorities are the rules for calculating the priority of updating pods. // Each pod to be updated, will pass through these terms and get a sum of weights. // Also, priorityStrategy can just be allowed to work with Parallel podManagementPolicy. // +optional PriorityStrategy *UpdatePriorityStrategy `json:"priorityStrategy,omitempty"` Paused bool `json:"paused,omitempty"` NeedWaitingForConfirm bool `json:"needWaitingForConfirm,omitempty"` }
AdvDeploymentUpdateStrategy advdeployment update strategy
func (*AdvDeploymentUpdateStrategy) DeepCopy ¶
func (in *AdvDeploymentUpdateStrategy) DeepCopy() *AdvDeploymentUpdateStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvDeploymentUpdateStrategy.
func (*AdvDeploymentUpdateStrategy) DeepCopyInto ¶
func (in *AdvDeploymentUpdateStrategy) DeepCopyInto(out *AdvDeploymentUpdateStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AggrAppSetStatus ¶
type AggrAppSetStatus struct { Status AppStatus `json:"status,omitempty"` Version string `json:"version,omitempty"` Desired int32 `json:"desired"` Available int32 `json:"available"` UnAvailable int32 `json:"unAvailable"` Clusters []*ClusterAppActual `json:"clusters,omitempty"` Pods []*Pod `json:"pods,omitempty"` WarnEvents []*Event `json:"warnEvents,omitempty"` Service *Service `json:"service,omitempty"` }
AggrAppSetStatus represent the app status
func (*AggrAppSetStatus) DeepCopy ¶
func (in *AggrAppSetStatus) DeepCopy() *AggrAppSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AggrAppSetStatus.
func (*AggrAppSetStatus) DeepCopyInto ¶
func (in *AggrAppSetStatus) DeepCopyInto(out *AggrAppSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppSet ¶
type AppSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AppSetSpec `json:"spec,omitempty"` Status AppSetStatus `json:"status,omitempty"` }
+k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:shortName=as +kubebuilder:printcolumn:name="DESIRED",type="integer",JSONPath=".status.aggrStatus.desired",description="The desired number of pods." +kubebuilder:printcolumn:name="AVAILABLE",type="integer",JSONPath=".status.aggrStatus.available",description="The number of pods ready." +kubebuilder:printcolumn:name="UNAVAILABLE",type="integer",JSONPath=".status.aggrStatus.unAvailable",description="The number of pods unAvailable." +kubebuilder:printcolumn:name="VERSION",type="string",JSONPath=".status.aggrStatus.version",description="The image version." +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.aggrStatus.status",description="The app run status." +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp",description="CreationTimestamp is a timestamp representing the server time when this object was created. "
func (*AppSet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppSet.
func (*AppSet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AppSet) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AppSetCondition ¶
type AppSetCondition struct { // Type of in place set condition. Type AppSetConditionType `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"` }
UnitedDeploymentCondition describes current state of a UnitedDeployment.
func (*AppSetCondition) DeepCopy ¶
func (in *AppSetCondition) DeepCopy() *AppSetCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppSetCondition.
func (*AppSetCondition) DeepCopyInto ¶
func (in *AppSetCondition) DeepCopyInto(out *AppSetCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppSetConditionType ¶
type AppSetConditionType string
AppSetConditionType indicates valid conditions type of a UnitedDeployment.
type AppSetList ¶
type AppSetList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AppSet `json:"items"` }
+kubebuilder:object:root=true AppStatusList implements list of AppStatus. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*AppSetList) DeepCopy ¶
func (in *AppSetList) DeepCopy() *AppSetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppSetList.
func (*AppSetList) DeepCopyInto ¶
func (in *AppSetList) DeepCopyInto(out *AppSetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AppSetList) DeepCopyObject ¶
func (in *AppSetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AppSetSpec ¶
type AppSetSpec struct { Labels map[string]string `json:"labels,omitempty"` Meta map[string]string `json:"meta,omitempty"` Replicas *int32 `json:"replicas,omitempty"` ServiceName *string `json:"serviceName,omitempty"` // template is the object that describes the pod that will be created if // insufficient replicas are detected. Each pod stamped out by the workload // will fulfill this Template, but have a unique identity from the rest // of the workload. PodSpec PodSpec `json:"podSpec,omitempty"` // UpdateStrategy indicates the strategy the advDeployment use to preform the update, // when template is changed. // +optional UpdateStrategy AppSetUpdateStrategy `json:"updateStrategy,omitempty"` // Topology describes the pods distribution detail between each of subsets. // +optional ClusterTopology ClusterTopology `json:"clusterTopology,omitempty"` }
AppSetSpec contains AppSet specification
func (*AppSetSpec) DeepCopy ¶
func (in *AppSetSpec) DeepCopy() *AppSetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppSetSpec.
func (*AppSetSpec) DeepCopyInto ¶
func (in *AppSetSpec) DeepCopyInto(out *AppSetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppSetStatus ¶
type AppSetStatus struct { // ObservedGeneration is the most recent generation observed for this worklod. It corresponds to the // worklod's generation, which is updated on mutation by the API Server. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` LastUpdateTime *metav1.Time `json:"lastUpdateTime,omitempty"` // Represents the latest available observations of a UnitedDeployment's current state. // +optional Conditions []AppSetCondition `json:"conditions,omitempty"` AggrStatus AggrAppSetStatus `json:"aggrStatus,omitempty"` }
AppSetStatus contains AppSet status
func (*AppSetStatus) DeepCopy ¶
func (in *AppSetStatus) DeepCopy() *AppSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppSetStatus.
func (*AppSetStatus) DeepCopyInto ¶
func (in *AppSetStatus) DeepCopyInto(out *AppSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppSetUpdateStrategy ¶
type AppSetUpdateStrategy struct { // canary, blue, green UpgradeType string `json:"upgradeType,omitempty"` MinReadySeconds int32 `json:"minReadySeconds,omitempty"` PriorityStrategy *UpdatePriorityStrategy `json:"priorityStrategy,omitempty"` CanaryClusters []string `json:"canaryClusters,omitempty"` Paused bool `json:"paused,omitempty"` NeedWaitingForConfirm bool `json:"needWaitingForConfirm,omitempty"` }
func (*AppSetUpdateStrategy) DeepCopy ¶
func (in *AppSetUpdateStrategy) DeepCopy() *AppSetUpdateStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppSetUpdateStrategy.
func (*AppSetUpdateStrategy) DeepCopyInto ¶
func (in *AppSetUpdateStrategy) DeepCopyInto(out *AppSetUpdateStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppStatus ¶
type AppStatus string
AppStatus app status
const ( AppStatusRuning AppStatus = "Running" AppStatusMigrating AppStatus = "Migrating" AppStatusWorkRatioing AppStatus = "WorkRatioing" AppStatusScaling AppStatus = "Scaling" AppStatusUpdateing AppStatus = "Updateing" AppStatusInstalling AppStatus = "Installing" AppStatusUnknown AppStatus = "Unknown" )
AppStatus enum
type ChartSpec ¶
type ChartSpec struct { RawChart *[]byte `json:"rawChart,omitempty"` CharURL *ChartURL `json:"chartUrl,omitempty"` }
ChartSpec charspec with raw content
func (*ChartSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChartSpec.
func (*ChartSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChartURL ¶
type ChartURL struct { URL string `json:"url,omitempty"` ChartVersion string `json:"chartVersion,omitempty"` }
ChartURL char url info
func (*ChartURL) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChartURL.
func (*ChartURL) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterAppActual ¶
type ClusterAppActual struct { Name string `json:"name,omitempty"` Desired int32 `json:"desired,omitempty"` Available int32 `json:"available,omitempty"` UnAvailable int32 `json:"unAvailable,omitempty"` PodSets []*PodSetStatusInfo `json:"podSets,omitempty"` }
ClusterAppActual cluster app actual info
func (*ClusterAppActual) DeepCopy ¶
func (in *ClusterAppActual) DeepCopy() *ClusterAppActual
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAppActual.
func (*ClusterAppActual) DeepCopyInto ¶
func (in *ClusterAppActual) DeepCopyInto(out *ClusterAppActual)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterTopology ¶
type ClusterTopology struct {
Clusters []*TargetCluster `json:"clusters,omitempty"`
}
func (*ClusterTopology) DeepCopy ¶
func (in *ClusterTopology) DeepCopy() *ClusterTopology
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterTopology.
func (*ClusterTopology) DeepCopyInto ¶
func (in *ClusterTopology) DeepCopyInto(out *ClusterTopology)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeployState ¶
type DeployState string
DeployState deployment state
const ( Created DeployState = "Created" ReconcileFailed DeployState = "ReconcileFailed" Reconciling DeployState = "Reconciling" Available DeployState = "Available" Unmanaged DeployState = "Unmanaged" )
Deploy state enum
type Endpoint ¶
type Endpoint struct { // Hostname, either as a domain name or IP address. Host string `json:"host,omitempty"` // List of ports opened for this endpoint on the hostname. Ports []ServicePort `json:"ports,omitempty"` }
Endpoint describes an endpoint that is host and a list of available ports for that host.
func (*Endpoint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint.
func (*Endpoint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Event ¶
type Event struct { // A human-readable description of the status of related object. Message string `json:"message,omitempty"` // Component from which the event is generated. SourceComponent string `json:"sourceComponent,omitempty"` Name string `json:"name,omitempty"` // Reference to a piece of an object, which triggered an event. For example // "spec.containers{name}" refers to container within pod with given name, if no container // name is specified, for example "spec.containers[2]", then it refers to container with // index 2 in this pod. SubObject string `json:"object,omitempty"` // The number of times this event has occurred. Count int32 `json:"count,omitempty"` // The time at which the event was first recorded. FirstSeen metav1.Time `json:"firstSeen,omitempty"` // The time at which the most recent occurrence of this event was recorded. LastSeen metav1.Time `json:"lastSeen,omitempty"` // Short, machine understandable string that gives the reason // for this event being generated. Reason string `json:"reason,omitempty"` // Event type (at the moment only normal and warning are supported). Type string `json:"type,omitempty"` }
Event is a single event representation.
func (*Event) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Event.
func (*Event) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Pod ¶
type Pod struct { Name string `json:"name,omitempty"` Namespace string `json:"namespace,omitempty"` State string `json:"state,omitempty"` PodIP string `json:"podIp,omitempty"` NodeIP string `json:"nodeIp,omitempty"` NodeName string `json:"nodeName,omitempty"` ClusterName string `json:"clusterName,omitempty"` StartTime metav1.Time `json:"startTime,omitempty"` }
Pod info
func (*Pod) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pod.
func (*Pod) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodSet ¶
type PodSet struct { // Indicates subset name as a DNS_LABEL, which will be used to generate // subset workload name prefix in the format '<deployment-name>-<subset-name>-'. // Name should be unique between all of the subsets under one advDeployment. Name string `json:"name"` // Indicates the node selector to form the subset. Depending on the node selector, // pods provisioned could be distributed across multiple groups of nodes. // A subset's nodeSelectorTerm is not allowed to be updated. // +optional NodeSelectorTerm *corev1.NodeSelectorTerm `json:"nodeSelectorTerm,omitempty"` // Indicates the number of the pod to be created under this subset. Replicas could also be // percentage like '10%', which means 10% of UnitedDeployment replicas of pods will be distributed // under this subset. If nil, the number of replicas in this subset is determined by controller. // Controller will try to keep all the subsets with nil replicas have average pods. // +optional Replicas *intstr.IntOrString `json:"replicas,omitempty"` Image string `json:"image,omitempty"` // the images version Version string `json:"version,omitempty"` // the override podset chart spec Chart *ChartSpec `json:"chart,omitempty"` // use for helm RawValues string `json:"rawValues,omitempty"` // exp: bule/green, rz/gz Mata map[string]string `json:"meta,omitempty"` }
PodSet defines the detail of a PodSet.
func (*PodSet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSet.
func (*PodSet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodSetStatusInfo ¶
type PodSetStatusInfo struct { Name string `json:"name"` Desired int32 `json:"desired"` Available int32 `json:"available"` UnAvailable int32 `json:"unAvailable,omitempty"` Version string `json:"version,omitempty"` ClusterName string `json:"clusterName,omitempty"` HaveDeploy *bool `json:"haveDeploy,omitempty"` Ready *int32 `json:"ready,omitempty"` Update *int32 `json:"update,omitempty"` Current *int32 `json:"current,omitempty"` Running *int32 `json:"running,omitempty"` WarnEvent *int32 `json:"warnEvent,omitempty"` EndpointReady *int32 `json:"endpointReady,omitempty"` }
PodSetStatusInfo pod status info
func (*PodSetStatusInfo) DeepCopy ¶
func (in *PodSetStatusInfo) DeepCopy() *PodSetStatusInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSetStatusInfo.
func (*PodSetStatusInfo) DeepCopyInto ¶
func (in *PodSetStatusInfo) DeepCopyInto(out *PodSetStatusInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodSpec ¶
type PodSpec struct { // support PodSet:helm, InPlaceSet,StatefulSet, deployment // Default value is deployment // +optional DeployType string `json:"deployType,omitempty"` // 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,omitempty"` Template *corev1.PodTemplateSpec `json:"template,omitempty"` Chart *ChartSpec `json:"chart,omitempty"` }
PodSpec pod spec info
func (*PodSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSpec.
func (*PodSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodUpdateStrategyType ¶
type PodUpdateStrategyType string
PodUpdateStrategyType is a string enumeration type that enumerates all possible ways we can update a Pod when updating application
const ( RecreatePodUpdateStrategyType PodUpdateStrategyType = "ReCreate" InPlaceIfPossiblePodUpdateStrategyType PodUpdateStrategyType = "InPlaceIfPossible" InPlaceOnlyPodUpdateStrategyType PodUpdateStrategyType = "InPlaceOnly" )
PodUpdateStrategyType enum
type Service ¶
type Service struct { // InternalEndpoint of all Kubernetes services that have the same label selector as connected Replication // Controller. Endpoints is DNS name merged with ports. InternalEndpoint Endpoint `json:"internalEndpoint,omitempty"` Labels map[string]string `json:"labels,omitempty"` // Label selector of the service. Selector map[string]string `json:"selector,omitempty"` // Type determines how the service will be exposed. Valid options: ClusterIP, NodePort, LoadBalancer Type string `json:"type,omitempty"` // ClusterIP is usually assigned by the master. Valid values are None, empty string (""), or // a valid IP address. None can be specified for headless services when proxying is not required ClusterIP string `json:"clusterIP,omitempty"` Domain *string `json:"domain,omitempty"` }
Service service info
func (*Service) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.
func (*Service) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServicePort ¶
type ServicePort struct { Name string `json:"name"` Port int32 `json:"port"` Protocol string `json:"protocol"` TargetPort int32 `json:"targetPort"` }
ServicePort is a pair of port and protocol, e.g. a service endpoint.
func (*ServicePort) DeepCopy ¶
func (in *ServicePort) DeepCopy() *ServicePort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePort.
func (*ServicePort) DeepCopyInto ¶
func (in *ServicePort) DeepCopyInto(out *ServicePort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StatefulSetStrategy ¶
type StatefulSetStrategy struct { Partition *int32 `json:"partition,omitempty"` PodUpdatePolicy PodUpdateStrategyType `json:"podUpdatePolicy,omitempty"` }
StatefulSetStrategy is used to communicate parameter for StatefulSetStrategyType.
func (*StatefulSetStrategy) DeepCopy ¶
func (in *StatefulSetStrategy) DeepCopy() *StatefulSetStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatefulSetStrategy.
func (*StatefulSetStrategy) DeepCopyInto ¶
func (in *StatefulSetStrategy) DeepCopyInto(out *StatefulSetStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetCluster ¶
type TargetCluster struct { // Target cluster name Name string `json:"name,omitempty"` // exp: zone, rack Meta map[string]string `json:"meta,omitempty"` // Contains the details of each subset. Each element in this array represents one subset // which will be provisioned and managed by UnitedDeployment. // +optional PodSets []*PodSet `json:"podSets,omitempty"` }
func (*TargetCluster) DeepCopy ¶
func (in *TargetCluster) DeepCopy() *TargetCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetCluster.
func (*TargetCluster) DeepCopyInto ¶
func (in *TargetCluster) DeepCopyInto(out *TargetCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Topology ¶
type Topology struct { // Contains the details of each subset. Each element in this array represents one subset // which will be provisioned and managed by UnitedDeployment. // +optional PodSets []*PodSet `json:"podSets,omitempty"` }
Topology defines the spread detail of each subset under UnitedDeployment. A UnitedDeployment manages multiple homogeneous workloads which are called subset. Each of subsets under the UnitedDeployment is described in Topology.
func (*Topology) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Topology.
func (*Topology) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UpdatePriorityOrderTerm ¶
type UpdatePriorityOrderTerm struct { // Calculate priority by value of this key. // Values of this key, will be sorted by GetInt(val). GetInt method will find the last int in value, // such as getting 5 in value '5', getting 10 in value 'sts-10'. OrderedKey string `json:"orderedKey"` }
UpdatePriorityOrderTerm defines order priority.
func (*UpdatePriorityOrderTerm) DeepCopy ¶
func (in *UpdatePriorityOrderTerm) DeepCopy() *UpdatePriorityOrderTerm
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdatePriorityOrderTerm.
func (*UpdatePriorityOrderTerm) DeepCopyInto ¶
func (in *UpdatePriorityOrderTerm) DeepCopyInto(out *UpdatePriorityOrderTerm)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UpdatePriorityStrategy ¶
type UpdatePriorityStrategy struct { // First, all pods which have key1 in labels will be sorted by the value of key1. // Then, the left pods which have no key1 but have key2 in labels will be sorted by // the value of key2 and put behind those pods have key1. OrderPriority []UpdatePriorityOrderTerm `json:"orderPriority,omitempty"` // Weight priority terms, pods will be sorted by the sum of all terms weight. WeightPriority []UpdatePriorityWeightTerm `json:"weightPriority,omitempty"` }
UpdatePriorityStrategy is the strategy to define priority for pods update. Only one of orderPriority and weightPriority can be set.
func (*UpdatePriorityStrategy) DeepCopy ¶
func (in *UpdatePriorityStrategy) DeepCopy() *UpdatePriorityStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdatePriorityStrategy.
func (*UpdatePriorityStrategy) DeepCopyInto ¶
func (in *UpdatePriorityStrategy) DeepCopyInto(out *UpdatePriorityStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UpdatePriorityWeightTerm ¶
type UpdatePriorityWeightTerm struct { // Weight associated with matching the corresponding matchExpressions, in the range 1-100. Weight int32 `json:"weight"` // MatchSelector is used to select by pod's labels. MatchSelector metav1.LabelSelector `json:"matchSelector"` }
UpdatePriorityWeightTerm defines weight priority.
func (*UpdatePriorityWeightTerm) DeepCopy ¶
func (in *UpdatePriorityWeightTerm) DeepCopy() *UpdatePriorityWeightTerm
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdatePriorityWeightTerm.
func (*UpdatePriorityWeightTerm) DeepCopyInto ¶
func (in *UpdatePriorityWeightTerm) DeepCopyInto(out *UpdatePriorityWeightTerm)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.