Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the OpenSergo fault-tolerance v1alpha1 CRD. +kubebuilder:object:generate=true +groupName=fault-tolerance.opensergo.io
Index ¶
Constants ¶
const ( RateLimitStrategyKind string = "RateLimitStrategy" ConcurrencyLimitStrategyKind string = "ConcurrencyLimitStrategy" )
const ( RequestAmountMetricType string = "RequestAmount" LocalLimitMode string = "Local" GlobalLimitMode string = "Global" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "fault-tolerance.opensergo.io", Version: "v1alpha1"} // 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 FaultToleranceRule ¶
type FaultToleranceRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec FaultToleranceRuleSpec `json:"spec,omitempty"` Status FaultToleranceRuleStatus `json:"status,omitempty"` }
func (*FaultToleranceRule) DeepCopy ¶
func (in *FaultToleranceRule) DeepCopy() *FaultToleranceRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultToleranceRule.
func (*FaultToleranceRule) DeepCopyInto ¶
func (in *FaultToleranceRule) DeepCopyInto(out *FaultToleranceRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FaultToleranceRule) DeepCopyObject ¶
func (in *FaultToleranceRule) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FaultToleranceRuleList ¶
type FaultToleranceRuleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []FaultToleranceRule `json:"items"` }
FaultToleranceRuleList contains a list of FaultToleranceRule.
func (*FaultToleranceRuleList) DeepCopy ¶
func (in *FaultToleranceRuleList) DeepCopy() *FaultToleranceRuleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultToleranceRuleList.
func (*FaultToleranceRuleList) DeepCopyInto ¶
func (in *FaultToleranceRuleList) DeepCopyInto(out *FaultToleranceRuleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FaultToleranceRuleList) DeepCopyObject ¶
func (in *FaultToleranceRuleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FaultToleranceRuleSpec ¶
type FaultToleranceRuleSpec struct { // +kubebuilder:validation:Type=array // +kubebuilder:validation:Required Targets []FaultToleranceTargetRef `json:"targets"` // +kubebuilder:validation:Type=array // +kubebuilder:validation:Required Strategies []FaultToleranceStrategyRef `json:"strategies"` }
FaultToleranceRuleSpec defines the spec of FaultToleranceRule.
func (*FaultToleranceRuleSpec) DeepCopy ¶
func (in *FaultToleranceRuleSpec) DeepCopy() *FaultToleranceRuleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultToleranceRuleSpec.
func (*FaultToleranceRuleSpec) DeepCopyInto ¶
func (in *FaultToleranceRuleSpec) DeepCopyInto(out *FaultToleranceRuleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FaultToleranceRuleStatus ¶
type FaultToleranceRuleStatus struct { }
FaultToleranceRuleStatus defines the observed state of FaultToleranceRule.
func (*FaultToleranceRuleStatus) DeepCopy ¶
func (in *FaultToleranceRuleStatus) DeepCopy() *FaultToleranceRuleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultToleranceRuleStatus.
func (*FaultToleranceRuleStatus) DeepCopyInto ¶
func (in *FaultToleranceRuleStatus) DeepCopyInto(out *FaultToleranceRuleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FaultToleranceStrategyRef ¶
type FaultToleranceStrategyRef struct { // +kubebuilder:validation:Type=string // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required Name string `json:"name"` // +kubebuilder:validation:Type=string // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=RateLimitStrategy;ConcurrencyLimitStrategy Kind string `json:"kind"` }
func (*FaultToleranceStrategyRef) DeepCopy ¶
func (in *FaultToleranceStrategyRef) DeepCopy() *FaultToleranceStrategyRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultToleranceStrategyRef.
func (*FaultToleranceStrategyRef) DeepCopyInto ¶
func (in *FaultToleranceStrategyRef) DeepCopyInto(out *FaultToleranceStrategyRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FaultToleranceTargetRef ¶
type FaultToleranceTargetRef struct { // +kubebuilder:validation:Type=string // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:MaxLength=1024 // +kubebuilder:validation:Required TargetResourceName string `json:"targetResourceName"` }
func (*FaultToleranceTargetRef) DeepCopy ¶
func (in *FaultToleranceTargetRef) DeepCopy() *FaultToleranceTargetRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultToleranceTargetRef.
func (*FaultToleranceTargetRef) DeepCopyInto ¶
func (in *FaultToleranceTargetRef) DeepCopyInto(out *FaultToleranceTargetRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RateLimitStrategy ¶
type RateLimitStrategy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RateLimitStrategySpec `json:"spec,omitempty"` Status RateLimitStrategyStatus `json:"status,omitempty"` }
func (*RateLimitStrategy) DeepCopy ¶
func (in *RateLimitStrategy) DeepCopy() *RateLimitStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitStrategy.
func (*RateLimitStrategy) DeepCopyInto ¶
func (in *RateLimitStrategy) DeepCopyInto(out *RateLimitStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RateLimitStrategy) DeepCopyObject ¶
func (in *RateLimitStrategy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RateLimitStrategyList ¶
type RateLimitStrategyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RateLimitStrategy `json:"items"` }
RateLimitStrategyList contains a list of RateLimitStrategy.
func (*RateLimitStrategyList) DeepCopy ¶
func (in *RateLimitStrategyList) DeepCopy() *RateLimitStrategyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitStrategyList.
func (*RateLimitStrategyList) DeepCopyInto ¶
func (in *RateLimitStrategyList) DeepCopyInto(out *RateLimitStrategyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RateLimitStrategyList) DeepCopyObject ¶
func (in *RateLimitStrategyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RateLimitStrategySpec ¶
type RateLimitStrategySpec struct { // +kubebuilder:validation:Type=string // +kubebuilder:validation:Enum=RequestAmount // +kubebuilder:validation:Required MetricType string `json:"metricType"` // +kubebuilder:validation:Type=string // +kubebuilder:validation:Enum=Local;Global // +kubebuilder:validation:Required LimitMode string `json:"limitMode"` // +kubebuilder:validation:Type=integer // +kubebuilder:validation:Format=int64 // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Required Threshold int64 `json:"threshold"` // +kubebuilder:validation:Type=integer // +kubebuilder:validation:Format=int32 // +kubebuilder:validation:Minimum=1 // +kubebuilder:validation:Required StatDurationSeconds int32 `json:"statDurationSeconds"` }
RateLimitStrategySpec defines the spec of RateLimitStrategy.
func (*RateLimitStrategySpec) DeepCopy ¶
func (in *RateLimitStrategySpec) DeepCopy() *RateLimitStrategySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitStrategySpec.
func (*RateLimitStrategySpec) DeepCopyInto ¶
func (in *RateLimitStrategySpec) DeepCopyInto(out *RateLimitStrategySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RateLimitStrategyStatus ¶
type RateLimitStrategyStatus struct { }
RateLimitStrategyStatus defines the observed state of RateLimitStrategy.
func (*RateLimitStrategyStatus) DeepCopy ¶
func (in *RateLimitStrategyStatus) DeepCopy() *RateLimitStrategyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitStrategyStatus.
func (*RateLimitStrategyStatus) DeepCopyInto ¶
func (in *RateLimitStrategyStatus) DeepCopyInto(out *RateLimitStrategyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.