Documentation ¶
Overview ¶
Package v1 contains API Schema definitions for the zalando v1 API group +kubebuilder:object:generate=true +groupName=zalando.org
Index ¶
- Variables
- func Resource(resource string) schema.GroupResource
- type ActualTraffic
- type Autoscaler
- type AutoscalerMetricType
- type AutoscalerMetrics
- type Client
- type ConfigurationResourcesSpec
- func (in *ConfigurationResourcesSpec) DeepCopy() *ConfigurationResourcesSpec
- func (in *ConfigurationResourcesSpec) DeepCopyInto(out *ConfigurationResourcesSpec)
- func (crs *ConfigurationResourcesSpec) GetName() string
- func (crs *ConfigurationResourcesSpec) IsConfigMapRef() bool
- func (crs *ConfigurationResourcesSpec) IsSecretRef() bool
- type DesiredTraffic
- type EmbeddedObjectMeta
- type EmbeddedObjectMetaWithAnnotations
- type MetricsClusterScalingSchedule
- type MetricsEndpoint
- type MetricsQueue
- type MetricsRequestsPerSecond
- type MetricsScalingSchedule
- type MetricsZMON
- type PlatformCredentialsSet
- type PlatformCredentialsSetList
- type PlatformCredentialsSpec
- type PlatformCredentialsStatus
- type PodTemplateSpec
- type PrescalingStatus
- type RouteGroupSpec
- type Stack
- type StackLifecycle
- type StackList
- type StackServiceSpec
- type StackSet
- type StackSetExternalIngressSpec
- type StackSetIngressSpec
- type StackSetList
- type StackSetSpec
- type StackSetStatus
- type StackSpec
- type StackSpecInternal
- type StackSpecTemplate
- type StackStatus
- type StackTemplate
- type Token
- type ZMONMetricAggregatorType
Constants ¶
This section is empty.
Variables ¶
var ( // AddToScheme applies all the stored functions to the scheme. A non-nil error // indicates that one function failed and the attempt was abandoned. AddToScheme = schemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: zalando.GroupName, Version: "v1"}
SchemeGroupVersion is the group version used to register these objects.
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group-qualified GroupResource.
Types ¶
type ActualTraffic ¶ added in v1.1.0
type ActualTraffic struct { StackName string `json:"stackName"` ServiceName string `json:"serviceName"` ServicePort intstr.IntOrString `json:"servicePort"` // +kubebuilder:validation:Format=float // +kubebuilder:validation:Type=number Weight float64 `json:"weight"` }
Traffic is the actual traffic setting on services for this stackset, controllers interested in current traffic decision should read this.
type Autoscaler ¶
type Autoscaler struct { // minReplicas is the lower limit for the number of replicas to which the autoscaler can scale down. // It defaults to 1 pod. // +optional MinReplicas *int32 `json:"minReplicas,omitempty"` // maxReplicas is the upper limit for the number of replicas to which the autoscaler can scale up. // It cannot be less that minReplicas. MaxReplicas int32 `json:"maxReplicas"` Metrics []AutoscalerMetrics `json:"metrics"` // behavior configures the scaling behavior of the target // in both Up and Down directions (scaleUp and scaleDown fields respectively). // If not set, the default HPAScalingRules for scale up and scale down are used. // +optional Behavior *autoscalingv2.HorizontalPodAutoscalerBehavior `json:"behavior,omitempty" protobuf:"bytes,5,opt,name=behavior"` }
Autoscaler is the autoscaling definition for a stack +k8s:deepcopy-gen=true
func (*Autoscaler) DeepCopy ¶
func (in *Autoscaler) DeepCopy() *Autoscaler
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Autoscaler.
func (*Autoscaler) DeepCopyInto ¶
func (in *Autoscaler) DeepCopyInto(out *Autoscaler)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoscalerMetricType ¶ added in v1.3.3
type AutoscalerMetricType string
AutoscalerMetricType is the type of the metric used for scaling. +kubebuilder:validation:Enum=CPU;Memory;AmazonSQS;PodJSON;Ingress;RouteGroup;ZMON;ScalingSchedule;ClusterScalingSchedule;RequestsPerSecond
const ( CPUAutoscalerMetric AutoscalerMetricType = "CPU" MemoryAutoscalerMetric AutoscalerMetricType = "Memory" AmazonSQSAutoscalerMetric AutoscalerMetricType = "AmazonSQS" PodJSONAutoscalerMetric AutoscalerMetricType = "PodJSON" IngressAutoscalerMetric AutoscalerMetricType = "Ingress" RouteGroupAutoscalerMetric AutoscalerMetricType = "RouteGroup" ZMONAutoscalerMetric AutoscalerMetricType = "ZMON" ClusterScalingScheduleMetric AutoscalerMetricType = "ClusterScalingSchedule" ScalingScheduleMetric AutoscalerMetricType = "ScalingSchedule" ExternalRPSMetric AutoscalerMetricType = "RequestsPerSecond" )
type AutoscalerMetrics ¶
type AutoscalerMetrics struct { Type AutoscalerMetricType `json:"type"` Average *resource.Quantity `json:"average,omitempty"` Endpoint *MetricsEndpoint `json:"endpoint,omitempty"` AverageUtilization *int32 `json:"averageUtilization,omitempty"` Queue *MetricsQueue `json:"queue,omitempty"` ZMON *MetricsZMON `json:"zmon,omitempty"` ScalingSchedule *MetricsScalingSchedule `json:"scalingSchedule,omitempty"` ClusterScalingSchedule *MetricsClusterScalingSchedule `json:"clusterScalingSchedule,omitempty"` RequestsPerSecond *MetricsRequestsPerSecond `json:"requestsPerSecond,omitempty"` // optional container name that can be used to scale based on CPU or // Memory metrics of a specific container as opposed to an average of // all containers in a pod. // +optional Container string `json:"container,omitempty"` }
AutoscalerMetrics is the type of metric to be be used for autoscaling. +k8s:deepcopy-gen=true
func (*AutoscalerMetrics) DeepCopy ¶
func (in *AutoscalerMetrics) DeepCopy() *AutoscalerMetrics
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalerMetrics.
func (*AutoscalerMetrics) DeepCopyInto ¶
func (in *AutoscalerMetrics) DeepCopyInto(out *AutoscalerMetrics)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Client ¶ added in v1.4.32
type Client struct { Realm string `json:"realm"` Grant string `json:"grant"` RedirectURI string `json:"redirectUri"` }
+k8s:deepcopy-gen=true
func (*Client) DeepCopy ¶ added in v1.4.32
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Client.
func (*Client) DeepCopyInto ¶ added in v1.4.32
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigurationResourcesSpec ¶ added in v1.4.22
type ConfigurationResourcesSpec struct { // ConfigMap to be owned by Stack ConfigMapRef *v1.LocalObjectReference `json:"configMapRef,omitempty"` // Secret to be owned by Stack SecretRef *v1.LocalObjectReference `json:"secretRef,omitempty"` }
ConfigurationResourcesSpec makes it possible to defined the config resources to be created +k8s:deepcopy-gen=true
func (*ConfigurationResourcesSpec) DeepCopy ¶ added in v1.4.22
func (in *ConfigurationResourcesSpec) DeepCopy() *ConfigurationResourcesSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationResourcesSpec.
func (*ConfigurationResourcesSpec) DeepCopyInto ¶ added in v1.4.22
func (in *ConfigurationResourcesSpec) DeepCopyInto(out *ConfigurationResourcesSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ConfigurationResourcesSpec) GetName ¶ added in v1.4.31
func (crs *ConfigurationResourcesSpec) GetName() string
GetName returns the name of the ConfigurationResourcesSpec.
func (*ConfigurationResourcesSpec) IsConfigMapRef ¶ added in v1.4.42
func (crs *ConfigurationResourcesSpec) IsConfigMapRef() bool
IsConfigMapRef returns true if the ConfigurationResourcesSpec is a ConfigMapRef.
func (*ConfigurationResourcesSpec) IsSecretRef ¶ added in v1.4.42
func (crs *ConfigurationResourcesSpec) IsSecretRef() bool
IsSecretRef returns true if the ConfigurationResourcesSpec is a SecretRef.
type DesiredTraffic ¶ added in v1.1.0
type DesiredTraffic struct { StackName string `json:"stackName"` // +kubebuilder:validation:Type=number // +kubebuilder:validation:Format=float Weight float64 `json:"weight"` }
DesiredTraffic is the desired traffic setting to direct traffic to a stack. This is meant to use by clients to orchestrate traffic switching.
type EmbeddedObjectMeta ¶ added in v1.3.3
type EmbeddedObjectMeta struct { // Map of string keys and values that can be used to organize and categorize // (scope and select) objects. May match selectors of replication controllers // and services. // More info: http://kubernetes.io/docs/user-guide/labels // +optional Labels map[string]string `json:"labels,omitempty" protobuf:"bytes,11,rep,name=labels"` // Annotations is an unstructured key value map stored with a resource that may be // set by external tools to store and retrieve arbitrary metadata. They are not // queryable and should be preserved when modifying objects. // More info: http://kubernetes.io/docs/user-guide/annotations // +optional Annotations map[string]string `json:"annotations,omitempty" protobuf:"bytes,12,rep,name=annotations"` }
EmbeddedObject defines the metadata which can be attached to a resource. It's a slimmed down version of metav1.ObjectMeta only containing labels and annotations. +k8s:deepcopy-gen=true
func (*EmbeddedObjectMeta) DeepCopy ¶ added in v1.3.3
func (in *EmbeddedObjectMeta) DeepCopy() *EmbeddedObjectMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedObjectMeta.
func (*EmbeddedObjectMeta) DeepCopyInto ¶ added in v1.3.3
func (in *EmbeddedObjectMeta) DeepCopyInto(out *EmbeddedObjectMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmbeddedObjectMetaWithAnnotations ¶ added in v1.3.3
type EmbeddedObjectMetaWithAnnotations struct { // Annotations is an unstructured key value map stored with a resource that may be // set by external tools to store and retrieve arbitrary metadata. They are not // queryable and should be preserved when modifying objects. // More info: http://kubernetes.io/docs/user-guide/annotations // +optional Annotations map[string]string `json:"annotations,omitempty" protobuf:"bytes,12,rep,name=annotations"` }
EmbeddedObjectMetaWithAnnotations defines the metadata which can be attached to a resource. It's a slimmed down version of metav1.ObjectMeta only containing annotations. +k8s:deepcopy-gen=true
func (*EmbeddedObjectMetaWithAnnotations) DeepCopy ¶ added in v1.3.3
func (in *EmbeddedObjectMetaWithAnnotations) DeepCopy() *EmbeddedObjectMetaWithAnnotations
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedObjectMetaWithAnnotations.
func (*EmbeddedObjectMetaWithAnnotations) DeepCopyInto ¶ added in v1.3.3
func (in *EmbeddedObjectMetaWithAnnotations) DeepCopyInto(out *EmbeddedObjectMetaWithAnnotations)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricsClusterScalingSchedule ¶ added in v1.3.34
type MetricsClusterScalingSchedule struct { // The name of the referenced ClusterScalingSchedule object. // +kubebuilder:validation:Pattern:=^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ Name string `json:"name"` }
MetricsClusterScalingSchedule specifies the ClusterScalingSchedule object which should be used for scaling. +k8s:deepcopy-gen=true
func (*MetricsClusterScalingSchedule) DeepCopy ¶ added in v1.3.34
func (in *MetricsClusterScalingSchedule) DeepCopy() *MetricsClusterScalingSchedule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsClusterScalingSchedule.
func (*MetricsClusterScalingSchedule) DeepCopyInto ¶ added in v1.3.34
func (in *MetricsClusterScalingSchedule) DeepCopyInto(out *MetricsClusterScalingSchedule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricsEndpoint ¶
type MetricsEndpoint struct { Port int32 `json:"port"` Path string `json:"path"` Key string `json:"key"` Name string `json:"name"` }
MetricsEndpoint specified the endpoint where the custom endpoint where the metrics can be queried +k8s:deepcopy-gen=true
func (*MetricsEndpoint) DeepCopy ¶
func (in *MetricsEndpoint) DeepCopy() *MetricsEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsEndpoint.
func (*MetricsEndpoint) DeepCopyInto ¶
func (in *MetricsEndpoint) DeepCopyInto(out *MetricsEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricsQueue ¶
MetricsQueue specifies the SQS queue whose length should be used for scaling. +k8s:deepcopy-gen=true
func (*MetricsQueue) DeepCopy ¶
func (in *MetricsQueue) DeepCopy() *MetricsQueue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsQueue.
func (*MetricsQueue) DeepCopyInto ¶
func (in *MetricsQueue) DeepCopyInto(out *MetricsQueue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricsRequestsPerSecond ¶ added in v1.4.4
type MetricsRequestsPerSecond struct {
Hostnames []string `json:"hostnames"`
}
MetricRequestsPerSecond specifies basic information to scale based on on external RPS metric. +k8s:deepcopy-gen=true
func (*MetricsRequestsPerSecond) DeepCopy ¶ added in v1.4.4
func (in *MetricsRequestsPerSecond) DeepCopy() *MetricsRequestsPerSecond
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsRequestsPerSecond.
func (*MetricsRequestsPerSecond) DeepCopyInto ¶ added in v1.4.4
func (in *MetricsRequestsPerSecond) DeepCopyInto(out *MetricsRequestsPerSecond)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricsScalingSchedule ¶ added in v1.3.34
type MetricsScalingSchedule struct { // The name of the referenced ScalingSchedule object. // +kubebuilder:validation:Pattern:=^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ Name string `json:"name"` }
MetricsScalingSchedule specifies the ScalingSchedule object which should be used for scaling. +k8s:deepcopy-gen=true
func (*MetricsScalingSchedule) DeepCopy ¶ added in v1.3.34
func (in *MetricsScalingSchedule) DeepCopy() *MetricsScalingSchedule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsScalingSchedule.
func (*MetricsScalingSchedule) DeepCopyInto ¶ added in v1.3.34
func (in *MetricsScalingSchedule) DeepCopyInto(out *MetricsScalingSchedule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricsZMON ¶ added in v1.3.23
type MetricsZMON struct { // +kubebuilder:validation:Pattern:="^[0-9]+$" CheckID string `json:"checkID"` Key string `json:"key"` // +kubebuilder:default:="5m" // +optional Duration string `json:"duration"` // +optional Aggregators []ZMONMetricAggregatorType `json:"aggregators,omitempty"` // +optional Tags map[string]string `json:"tags,omitempty"` }
MetricsZMON specifies the ZMON check which should be used for scaling. +k8s:deepcopy-gen=true
func (*MetricsZMON) DeepCopy ¶ added in v1.3.23
func (in *MetricsZMON) DeepCopy() *MetricsZMON
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsZMON.
func (*MetricsZMON) DeepCopyInto ¶ added in v1.3.23
func (in *MetricsZMON) DeepCopyInto(out *MetricsZMON)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PlatformCredentialsSet ¶ added in v1.4.32
type PlatformCredentialsSet struct { metav1.TypeMeta `json:""` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PlatformCredentialsSpec `json:"spec"` Status PlatformCredentialsStatus `json:"status"` }
PlatformCredentialsSet describes a platform credentials set +k8s:deepcopy-gen=true
func (*PlatformCredentialsSet) DeepCopy ¶ added in v1.4.32
func (in *PlatformCredentialsSet) DeepCopy() *PlatformCredentialsSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlatformCredentialsSet.
func (*PlatformCredentialsSet) DeepCopyInto ¶ added in v1.4.32
func (in *PlatformCredentialsSet) DeepCopyInto(out *PlatformCredentialsSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PlatformCredentialsSet) DeepCopyObject ¶ added in v1.4.32
func (in *PlatformCredentialsSet) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PlatformCredentialsSetList ¶ added in v1.4.32
type PlatformCredentialsSetList struct { metav1.TypeMeta `json:""` metav1.ListMeta `json:"metadata,omitempty"` Items []PlatformCredentialsSet `json:"items"` }
PlatformCredentialsSetList is a list of StackSets. +k8s:deepcopy-gen=true
func (*PlatformCredentialsSetList) DeepCopy ¶ added in v1.4.32
func (in *PlatformCredentialsSetList) DeepCopy() *PlatformCredentialsSetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlatformCredentialsSetList.
func (*PlatformCredentialsSetList) DeepCopyInto ¶ added in v1.4.32
func (in *PlatformCredentialsSetList) DeepCopyInto(out *PlatformCredentialsSetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PlatformCredentialsSetList) DeepCopyObject ¶ added in v1.4.32
func (in *PlatformCredentialsSetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PlatformCredentialsSpec ¶ added in v1.4.32
type PlatformCredentialsSpec struct { Application string `json:"application"` Clients map[string]Client `json:"clients"` Tokens map[string]Token `json:"tokens"` TokenVersion string `json:"token_version"` }
PlatformCredentialsSpec is the spec part of the StackSet. +k8s:deepcopy-gen=true
func (*PlatformCredentialsSpec) DeepCopy ¶ added in v1.4.32
func (in *PlatformCredentialsSpec) DeepCopy() *PlatformCredentialsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlatformCredentialsSpec.
func (*PlatformCredentialsSpec) DeepCopyInto ¶ added in v1.4.32
func (in *PlatformCredentialsSpec) DeepCopyInto(out *PlatformCredentialsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PlatformCredentialsStatus ¶ added in v1.4.32
type PlatformCredentialsStatus struct { ObservedGeneration int64 `json:"observedGeneration"` Errors []string `json:"errors"` Problems []string `json:"problems"` Tokens map[string]struct{} `json:"tokens"` Clients map[string]struct{} `json:"clients"` }
PlatformCredentialsStatus is the status part of the Stack. +k8s:deepcopy-gen=true
func (*PlatformCredentialsStatus) DeepCopy ¶ added in v1.4.32
func (in *PlatformCredentialsStatus) DeepCopy() *PlatformCredentialsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlatformCredentialsStatus.
func (*PlatformCredentialsStatus) DeepCopyInto ¶ added in v1.4.32
func (in *PlatformCredentialsStatus) DeepCopyInto(out *PlatformCredentialsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodTemplateSpec ¶ added in v1.3.3
type PodTemplateSpec struct { // Object's metadata. // +optional EmbeddedObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the pod. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status // +optional Spec v1.PodSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` }
PodTemplateSpec describes the data a pod should have when created from a template +k8s:deepcopy-gen=true
func (*PodTemplateSpec) DeepCopy ¶ added in v1.3.3
func (in *PodTemplateSpec) DeepCopy() *PodTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplateSpec.
func (*PodTemplateSpec) DeepCopyInto ¶ added in v1.3.3
func (in *PodTemplateSpec) DeepCopyInto(out *PodTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrescalingStatus ¶
type PrescalingStatus struct { // Active indicates if prescaling is current active // +optional Active bool `json:"active"` // Replicas is the number of replicas required for prescaling // +optional Replicas int32 `json:"replicas,omitempty"` // DesiredTrafficWeight is the desired traffic weight that the stack was prescaled for // +optional // +kubebuilder:validation:Format=float // +kubebuilder:validation:Type=number DesiredTrafficWeight float64 `json:"desiredTrafficWeight,omitempty"` // LastTrafficIncrease is the timestamp when the traffic was last increased on the stack // +optional LastTrafficIncrease *metav1.Time `json:"lastTrafficIncrease,omitempty"` }
Prescaling hold prescaling information +k8s:deepcopy-gen=true
func (*PrescalingStatus) DeepCopy ¶
func (in *PrescalingStatus) DeepCopy() *PrescalingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrescalingStatus.
func (*PrescalingStatus) DeepCopyInto ¶
func (in *PrescalingStatus) DeepCopyInto(out *PrescalingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteGroupSpec ¶ added in v1.3.5
type RouteGroupSpec struct { EmbeddedObjectMetaWithAnnotations `json:"metadata,omitempty"` // Hosts is the list of hostnames to add to the routegroup. Hosts []string `json:"hosts"` // AdditionalBackends is the list of additional backends to use for // routing. // +optional AdditionalBackends []rg.RouteGroupBackend `json:"additionalBackends,omitempty"` // Routes is the list of routes to be applied to the routegroup. // +kubebuilder:validation:MinItems=1 Routes []rg.RouteGroupRouteSpec `json:"routes"` BackendPort int `json:"backendPort"` // The load balancing algorithm used for the generated per stack backends. // +optional LBAlgorithm rg.BackendAlgorithmType `json:"lbAlgorithm,omitempty"` }
RouteGroupSpec defines the specification for defining a RouteGroup attached to a StackSet. +k8s:deepcopy-gen=true
func (*RouteGroupSpec) DeepCopy ¶ added in v1.3.5
func (in *RouteGroupSpec) DeepCopy() *RouteGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteGroupSpec.
func (*RouteGroupSpec) DeepCopyInto ¶ added in v1.3.5
func (in *RouteGroupSpec) DeepCopyInto(out *RouteGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteGroupSpec) GetAnnotations ¶ added in v1.3.35
func (s *RouteGroupSpec) GetAnnotations() map[string]string
func (*RouteGroupSpec) GetHosts ¶ added in v1.3.35
func (s *RouteGroupSpec) GetHosts() []string
type Stack ¶
type Stack struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec StackSpecInternal `json:"spec"` // +optional Status StackStatus `json:"status"` }
Stack defines one version of an application. It is possible to switch traffic between multiple versions of an application. +k8s:deepcopy-gen=true +kubebuilder:resource:categories=all +kubebuilder:printcolumn:name="Desired",type=integer,JSONPath=`.spec.replicas`,description="Number of desired replicas" +kubebuilder:printcolumn:name="Current",type=integer,JSONPath=`.status.replicas`,description="Number of current replicas" +kubebuilder:printcolumn:name="Up-To-Date",type=integer,JSONPath=`.status.updatedReplicas`,description="Number of up-to-date replicas" +kubebuilder:printcolumn:name="Ready",type=integer,JSONPath=`.status.readyReplicas`,description="Number of ready replicas" +kubebuilder:printcolumn:name="Traffic",type=number,JSONPath=`.status.actualTrafficWeight`,description="Current traffic weight for the stack" +kubebuilder:printcolumn:name="No-Traffic-Since",type=date,JSONPath=`.status.noTrafficSince`,description="Time since the stack didn't get any traffic" +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`,description="Age of the stack" +kubebuilder:subresource:status +kubebuilder:subresource:scale:specpath=.spec.replicas,statuspath=.status.replicas,selectorpath=.status.labelSelector
func (*Stack) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Stack.
func (*Stack) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Stack) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type StackLifecycle ¶
type StackLifecycle struct { // ScaledownTTLSeconds is the ttl in seconds for when Stacks of a // StackSet should be scaled down to 0 replicas in case they are not // getting traffic. // Defaults to 300 seconds. // +optional ScaledownTTLSeconds *int64 `json:"scaledownTTLSeconds,omitempty"` // Limit defines the maximum number of Stacks to keep around. If the // number of Stacks exceeds the limit then the oldest stacks which are // not getting traffic are deleted. // +kubebuilder:validation:Minimum=1 Limit *int32 `json:"limit,omitempty"` }
StackLifecycle defines lifecycle of the Stacks of a StackSet. +k8s:deepcopy-gen=true
func (*StackLifecycle) DeepCopy ¶
func (in *StackLifecycle) DeepCopy() *StackLifecycle
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackLifecycle.
func (*StackLifecycle) DeepCopyInto ¶
func (in *StackLifecycle) DeepCopyInto(out *StackLifecycle)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackList ¶
type StackList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Stack `json:"items"` }
StackList is a list of Stacks. +k8s:deepcopy-gen=true
func (*StackList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackList.
func (*StackList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*StackList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type StackServiceSpec ¶
type StackServiceSpec struct { EmbeddedObjectMetaWithAnnotations `json:"metadata,omitempty"` // The list of ports that are exposed by this service. // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies // +patchMergeKey=port // +patchStrategy=merge Ports []v1.ServicePort `json:"ports,omitempty" patchStrategy:"merge" patchMergeKey:"port"` }
StackServiceSpec makes it possible to customize the service generated for a stack. +k8s:deepcopy-gen=true
func (*StackServiceSpec) DeepCopy ¶
func (in *StackServiceSpec) DeepCopy() *StackServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackServiceSpec.
func (*StackServiceSpec) DeepCopyInto ¶
func (in *StackServiceSpec) DeepCopyInto(out *StackServiceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackSet ¶
type StackSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec StackSetSpec `json:"spec"` // +optional Status StackSetStatus `json:"status"` }
StackSet describes an application resource. +k8s:deepcopy-gen=true +kubebuilder:resource:categories=all +kubebuilder:printcolumn:name="Stacks",type=integer,JSONPath=`.status.stacks`,description="Number of Stacks belonging to the StackSet" +kubebuilder:printcolumn:name="Ready",type=integer,JSONPath=`.status.readyStacks`,description="Number of Ready Stacks" +kubebuilder:printcolumn:name="Traffic",type=integer,JSONPath=`.status.stacksWithTraffic`,description="Number of Ready Stacks with traffic" +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`,description="Age of the stack" +kubebuilder:subresource:status
func (*StackSet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackSet.
func (*StackSet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*StackSet) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type StackSetExternalIngressSpec ¶ added in v1.1.0
type StackSetExternalIngressSpec struct {
BackendPort intstr.IntOrString `json:"backendPort"`
}
StackSetExternalIngressSpec defines the required service backendport for ingress managed outside of stackset. +k8s:deepcopy-gen=true
func (*StackSetExternalIngressSpec) DeepCopy ¶ added in v1.4.12
func (in *StackSetExternalIngressSpec) DeepCopy() *StackSetExternalIngressSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackSetExternalIngressSpec.
func (*StackSetExternalIngressSpec) DeepCopyInto ¶ added in v1.4.12
func (in *StackSetExternalIngressSpec) DeepCopyInto(out *StackSetExternalIngressSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackSetIngressSpec ¶
type StackSetIngressSpec struct { EmbeddedObjectMetaWithAnnotations `json:"metadata,omitempty"` Hosts []string `json:"hosts"` BackendPort intstr.IntOrString `json:"backendPort"` // +optional Path string `json:"path"` }
StackSetIngressSpec is the ingress definition of an StackSet. This includes ingress annotations and a list of hostnames. +k8s:deepcopy-gen=true
func (*StackSetIngressSpec) DeepCopy ¶
func (in *StackSetIngressSpec) DeepCopy() *StackSetIngressSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackSetIngressSpec.
func (*StackSetIngressSpec) DeepCopyInto ¶
func (in *StackSetIngressSpec) DeepCopyInto(out *StackSetIngressSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*StackSetIngressSpec) GetAnnotations ¶ added in v1.3.35
func (s *StackSetIngressSpec) GetAnnotations() map[string]string
func (*StackSetIngressSpec) GetHosts ¶ added in v1.3.35
func (s *StackSetIngressSpec) GetHosts() []string
type StackSetList ¶
type StackSetList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []StackSet `json:"items"` }
+kubebuilder:object:root=true StackSetList is a list of StackSets. +k8s:deepcopy-gen=true
func (*StackSetList) DeepCopy ¶
func (in *StackSetList) DeepCopy() *StackSetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackSetList.
func (*StackSetList) DeepCopyInto ¶
func (in *StackSetList) DeepCopyInto(out *StackSetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*StackSetList) DeepCopyObject ¶
func (in *StackSetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type StackSetSpec ¶
type StackSetSpec struct { // Ingress is the information we need to create ingress and // service. Ingress is optional, because other controller // might create ingress objects, but stackset owns the traffic // switch. In this case we would only have a Traffic, but no // ingress. // +optional Ingress *StackSetIngressSpec `json:"ingress,omitempty"` // ExternalIngress is used to specify the backend port to // generate the services for the stacks. // +optional ExternalIngress *StackSetExternalIngressSpec `json:"externalIngress,omitempty"` // RouteGroup is an alternative to ingress allowing more advanced // routing configuration while still maintaining the ability to switch // traffic to stacks. Use this if you need skipper filters or // predicates. // +optional RouteGroup *RouteGroupSpec `json:"routegroup,omitempty"` // StackLifecycle defines the cleanup rules for old stacks. StackLifecycle StackLifecycle `json:"stackLifecycle"` // StackTemplate container for resources to be created that // belong to one stack. StackTemplate StackTemplate `json:"stackTemplate"` // Traffic is the mapping from a stackset to stack with // weights. It defines the desired traffic. Clients that // orchestrate traffic switching should write this part. Traffic []*DesiredTraffic `json:"traffic,omitempty"` // minReadyPercent sets the minimum percentage of Pods expected // to be Ready to consider a Stack for traffic switch MinReadyPercent int `json:"minReadyPercent,omitempty"` }
StackSetSpec is the spec part of the StackSet. +k8s:deepcopy-gen=true
func (*StackSetSpec) DeepCopy ¶
func (in *StackSetSpec) DeepCopy() *StackSetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackSetSpec.
func (*StackSetSpec) DeepCopyInto ¶
func (in *StackSetSpec) DeepCopyInto(out *StackSetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackSetStatus ¶
type StackSetStatus struct { // Stacks is the number of stacks managed by the StackSet. // +optional Stacks int32 `json:"stacks"` // ReadyStacks is the number of stacks managed by the StackSet which // are considered ready. a Stack is considered ready if: // replicas == readyReplicas == updatedReplicas. // +optional ReadyStacks int32 `json:"readyStacks"` // StacksWithTraffic is the number of stacks managed by the StackSet // which are getting traffic. // +optional StacksWithTraffic int32 `json:"stacksWithTraffic"` // ObservedStackVersion is the version of Stack generated from the current StackSet definition. // TODO: add a more detailed comment // +optional ObservedStackVersion string `json:"observedStackVersion,omitempty"` // Traffic is the actual traffic setting on services for this stackset // +optional Traffic []*ActualTraffic `json:"traffic,omitempty"` }
StackSetStatus is the status section of the StackSet resource. +k8s:deepcopy-gen=true
func (*StackSetStatus) DeepCopy ¶
func (in *StackSetStatus) DeepCopy() *StackSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackSetStatus.
func (*StackSetStatus) DeepCopyInto ¶
func (in *StackSetStatus) DeepCopyInto(out *StackSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackSpec ¶
type StackSpec struct { // Number of desired pods. This is a pointer to distinguish between explicit // zero and not specified. Defaults to 1. // +optional Replicas *int32 `json:"replicas,omitempty"` // Minimum number of seconds for which a newly created pod should be ready // without any of its container crashing, for it to be considered available. // Defaults to 0 (pod will be considered available as soon as it is ready) // +optional MinReadySeconds int32 `json:"minReadySeconds,omitempty"` // Service can be used to configure a custom service, if not // set stackset-controller will generate a service based on // container port and ingress backendport. Service *StackServiceSpec `json:"service,omitempty"` // PodTemplate describes the pods that will be created. PodTemplate PodTemplateSpec `json:"podTemplate"` Autoscaler *Autoscaler `json:"autoscaler,omitempty"` // Strategy describe the rollout strategy for the underlying deployment Strategy *appsv1.DeploymentStrategy `json:"strategy,omitempty"` // ConfigurationResources describes the ConfigMaps that will be created. // Later Secrets and PlatformCredentialSets will also be defined on ConfigurationResources ConfigurationResources []ConfigurationResourcesSpec `json:"configurationResources,omitempty"` }
StackSpec is the spec part of the Stack. +k8s:deepcopy-gen=true
func (*StackSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackSpec.
func (*StackSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackSpecInternal ¶ added in v1.4.12
type StackSpecInternal struct { // Stack specification, based on the parent StackSet at creation time. StackSpec `json:",inline"` // Stack specific ExternalIngress, based on the parent StackSet at creation time. ExternalIngress *StackSetExternalIngressSpec `json:"externalIngress,omitempty"` // Stack specific Ingress, based on the parent StackSet at creation time. Ingress *StackSetIngressSpec `json:"ingress,omitempty"` // Stack specific RouteGroup, based on the parent StackSet at creation time. RouteGroup *RouteGroupSpec `json:"routegroup,omitempty"` }
StackSpecInternal is the spec part of the Stack, including `ingress` and `routegroup` specs inherited from the parent StackSet. +k8s:deepcopy-gen=true
func (*StackSpecInternal) DeepCopy ¶ added in v1.4.12
func (in *StackSpecInternal) DeepCopy() *StackSpecInternal
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackSpecInternal.
func (*StackSpecInternal) DeepCopyInto ¶ added in v1.4.12
func (in *StackSpecInternal) DeepCopyInto(out *StackSpecInternal)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackSpecTemplate ¶
type StackSpecTemplate struct { StackSpec `json:",inline"` // +kubebuilder:validation:Pattern="^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" Version string `json:"version"` }
StackSpecTemplate is the spec part of the Stack. +k8s:deepcopy-gen=true
func (*StackSpecTemplate) DeepCopy ¶
func (in *StackSpecTemplate) DeepCopy() *StackSpecTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackSpecTemplate.
func (*StackSpecTemplate) DeepCopyInto ¶
func (in *StackSpecTemplate) DeepCopyInto(out *StackSpecTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackStatus ¶
type StackStatus struct { // ActualTrafficWeight is the actual amount of traffic currently // routed to the stack. // TODO: should we be using floats in the API? // +optional // +kubebuilder:validation:Format=float // +kubebuilder:validation:Type=number ActualTrafficWeight float64 `json:"actualTrafficWeight"` // DesiredTrafficWeight is desired amount of traffic to be routed to // the stack. // +optional // +kubebuilder:validation:Format=float // +kubebuilder:validation:Type=number DesiredTrafficWeight float64 `json:"desiredTrafficWeight"` // Replicas is the number of replicas in the Deployment managed by the // stack. // +optional Replicas int32 `json:"replicas"` // ReadyReplicas is the number of ready replicas in the Deployment // managed by the stack. // +optional ReadyReplicas int32 `json:"readyReplicas"` // UpdatedReplicas is the number of updated replicas in the Deployment // managed by the stack. // +optional UpdatedReplicas int32 `json:"updatedReplicas"` // DesiredReplicas is the number of desired replicas in the Deployment // +optional DesiredReplicas int32 `json:"desiredReplicas"` // Prescaling current prescaling information // +optional Prescaling PrescalingStatus `json:"prescalingStatus"` // NoTrafficSince is the timestamp defining the last time the stack was // observed getting traffic. NoTrafficSince *metav1.Time `json:"noTrafficSince,omitempty"` // LabelSelector is the label selector used to find all pods managed by // a stack. LabelSelector string `json:"labelSelector,omitempty"` }
StackStatus is the status part of the Stack. +k8s:deepcopy-gen=true
func (*StackStatus) DeepCopy ¶
func (in *StackStatus) DeepCopy() *StackStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackStatus.
func (*StackStatus) DeepCopyInto ¶
func (in *StackStatus) DeepCopyInto(out *StackStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StackTemplate ¶
type StackTemplate struct { EmbeddedObjectMetaWithAnnotations `json:"metadata,omitempty"` Spec StackSpecTemplate `json:"spec"` }
StackTemplate defines the template used for the Stack created from a StackSet definition. +k8s:deepcopy-gen=true
func (*StackTemplate) DeepCopy ¶
func (in *StackTemplate) DeepCopy() *StackTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackTemplate.
func (*StackTemplate) DeepCopyInto ¶
func (in *StackTemplate) DeepCopyInto(out *StackTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Token ¶ added in v1.4.32
type Token struct {
Privileges []string `json:"privileges"`
}
+k8s:deepcopy-gen=true
func (*Token) DeepCopy ¶ added in v1.4.32
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Token.
func (*Token) DeepCopyInto ¶ added in v1.4.32
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZMONMetricAggregatorType ¶ added in v1.3.23
type ZMONMetricAggregatorType string
ZMONMetricAggregatorType is the type of aggregator used in a ZMON based metric. +kubebuilder:validation:Enum=avg;dev;count;first;last;max;min;sum;diff
const ( AvgZMONMetricAggregator ZMONMetricAggregatorType = "avg" DevZMONMetricAggregator ZMONMetricAggregatorType = "dev" CountZMONMetricAggregator ZMONMetricAggregatorType = "count" FirstZMONMetricAggregator ZMONMetricAggregatorType = "first" LastZMONMetricAggregator ZMONMetricAggregatorType = "last" MaxZMONMetricAggregator ZMONMetricAggregatorType = "max" MinZMONMetricAggregator ZMONMetricAggregatorType = "min" SumZMONMetricAggregator ZMONMetricAggregatorType = "sum" DiffZMONMetricAggregator ZMONMetricAggregatorType = "diff" )