Documentation ¶
Overview ¶
Package v1alpha1 is the v1alpha1 version of the API. +groupName=gravity.mobike.io
Index ¶
Constants ¶
const ( GroupName = "gravity.mobike.io" ClusterResourceKind = "Cluster" )
Variables ¶
var ( SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = SchemeBuilder.AddToScheme )
var (
SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
)
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type Cluster ¶
type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterSpec `json:"spec"` Status ClusterStatus `json:"status"` }
Cluster is a specification for a Cluster resource
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cluster) FindDeploymentRule ¶
func (dc *Cluster) FindDeploymentRule(pipelineName string) *DeploymentRule
type ClusterCondition ¶
type ClusterCondition struct { // Type of Cluster condition. Type ClusterConditionType `json:"type"` // Status of the condition, one of True, False, Unknown. Status corev1.ConditionStatus `json:"status"` // LastUpdateTime is the last time this condition was updated. LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"` // LastTransitionTime is the last time the condition transitioned from one status to another. LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"` // Reason for the condition's last transition. Reason string `json:"reason,omitempty"` // Message which is human readable indicating details about the transition. Message string `json:"message,omitempty"` }
func (*ClusterCondition) DeepCopy ¶
func (in *ClusterCondition) DeepCopy() *ClusterCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterCondition.
func (*ClusterCondition) DeepCopyInto ¶
func (in *ClusterCondition) DeepCopyInto(out *ClusterCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterConditionType ¶
type ClusterConditionType string
const ( // Available means the deployment is available, ie. at least the minimum available // replicas required are up and running for at least minReadySeconds. ClusterAvailable ClusterConditionType = "Available" // UpToDate means every pipeline in cluster has been updated. ClusterUpToDate ClusterConditionType = "UpToDate" )
type ClusterList ¶
type ClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []Cluster `json:"items"` }
PipelineList is a list of Pipeline resources
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterSpec ¶
type ClusterSpec struct { // The maximum number of pipelines that can be upgraded. // Value can be an absolute number (ex: 5) or a percentage of pipelines (ex: 10%). // Absolute number is calculated from percentage by rounding up. // Defaults to 25%. Rolling *intstr.IntOrString `json:"rolling"` DeploymentRules []DeploymentRule `json:"deploymentRules"` }
ClusterSpec is the spec for a cluster resource
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶
type ClusterStatus struct { ObservedGeneration int64 `json:"observedGeneration"` // Total number of pipelines. // +optional Pipelines int32 `json:"pipelines"` // Total number of pipelines which version match current deployment rule. // +optional UpdatedPipelines int32 `json:"updatedPipelines"` // Total number of available pipelines (ready for at least minReadySeconds). // +optional AvailablePipelines int32 `json:"availablePipelines"` // either be pipelines that are running but not yet available or pipelines that still have not been created. // +optional UnavailablePipelines int32 `json:"unavailablePipelines"` Conditions []ClusterCondition `json:"conditions,omitempty"` }
ClusterStatus is the status for a cluster resource
func (ClusterStatus) Condition ¶
func (t ClusterStatus) Condition(condType ClusterConditionType) *ClusterCondition
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentRule ¶
type DeploymentRule struct { Group string `json:"group" yaml:"group"` Pipelines []string `json:"pipelines" yaml:"pipelines"` Image string `json:"image" yaml:"image"` Command []string `json:"command" yaml:"command"` }
func (*DeploymentRule) DeepCopy ¶
func (in *DeploymentRule) DeepCopy() *DeploymentRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentRule.
func (*DeploymentRule) DeepCopyInto ¶
func (in *DeploymentRule) DeepCopyInto(out *DeploymentRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.