Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the kuadrant v1beta1 API group +kubebuilder:object:generate=true +groupName=kuadrant.io
Index ¶
- Variables
- type ActionSpecifier
- type AuthPolicy
- func (in *AuthPolicy) DeepCopy() *AuthPolicy
- func (in *AuthPolicy) DeepCopyInto(out *AuthPolicy)
- func (in *AuthPolicy) DeepCopyObject() runtime.Object
- func (ap *AuthPolicy) GetTargetRef() gatewayapiv1alpha2.PolicyTargetReference
- func (ap *AuthPolicy) GetWrappedNamespace() gatewayapiv1alpha2.Namespace
- func (ap *AuthPolicy) Validate() error
- type AuthPolicyList
- type AuthPolicySpec
- type AuthPolicyStatus
- type AuthRule
- type AuthSchemeSpec
- type Configuration
- type GatewayRateLimits
- type GenericKeySpec
- type Kuadrant
- type KuadrantList
- type KuadrantSpec
- type KuadrantStatus
- type Limit
- type MetadataKeySpec
- type MetadataPathSegment
- type MetadataPathSegmentKey
- type MetadataSource
- type MetadataSpec
- type RateLimit
- type RateLimitPolicy
- func (in *RateLimitPolicy) DeepCopy() *RateLimitPolicy
- func (in *RateLimitPolicy) DeepCopyInto(out *RateLimitPolicy)
- func (in *RateLimitPolicy) DeepCopyObject() runtime.Object
- func (r *RateLimitPolicy) FlattenLimits() []Limit
- func (r *RateLimitPolicy) GetTargetRef() gatewayapiv1alpha2.PolicyTargetReference
- func (r *RateLimitPolicy) GetWrappedNamespace() gatewayapiv1alpha2.Namespace
- func (r *RateLimitPolicy) TargetKey() client.ObjectKey
- func (r *RateLimitPolicy) Validate() error
- type RateLimitPolicyList
- type RateLimitPolicySpec
- type RateLimitPolicyStatus
- type RemoteAddressSpec
- type RequestHeadersSpec
- type Rule
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "kuadrant.io", 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 ActionSpecifier ¶ added in v0.2.0
type ActionSpecifier struct { // +optional GenericKey *GenericKeySpec `json:"generic_key,omitempty"` // +optional Metadata *MetadataSpec `json:"metadata,omitempty"` // +optional RemoteAddress *RemoteAddressSpec `json:"remote_address,omitempty"` // +optional RequestHeaders *RequestHeadersSpec `json:"request_headers,omitempty"` }
Action_Specifier defines one envoy rate limit action
func (*ActionSpecifier) DeepCopy ¶ added in v0.2.0
func (in *ActionSpecifier) DeepCopy() *ActionSpecifier
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionSpecifier.
func (*ActionSpecifier) DeepCopyInto ¶ added in v0.2.0
func (in *ActionSpecifier) DeepCopyInto(out *ActionSpecifier)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthPolicy ¶ added in v0.2.0
type AuthPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AuthPolicySpec `json:"spec,omitempty"` Status AuthPolicyStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status
func (*AuthPolicy) DeepCopy ¶ added in v0.2.0
func (in *AuthPolicy) DeepCopy() *AuthPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthPolicy.
func (*AuthPolicy) DeepCopyInto ¶ added in v0.2.0
func (in *AuthPolicy) DeepCopyInto(out *AuthPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AuthPolicy) DeepCopyObject ¶ added in v0.2.0
func (in *AuthPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AuthPolicy) GetTargetRef ¶ added in v0.2.0
func (ap *AuthPolicy) GetTargetRef() gatewayapiv1alpha2.PolicyTargetReference
func (*AuthPolicy) GetWrappedNamespace ¶ added in v0.2.0
func (ap *AuthPolicy) GetWrappedNamespace() gatewayapiv1alpha2.Namespace
func (*AuthPolicy) Validate ¶ added in v0.2.0
func (ap *AuthPolicy) Validate() error
type AuthPolicyList ¶ added in v0.2.0
type AuthPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AuthPolicy `json:"items"` }
AuthPolicyList contains a list of AuthPolicy
func (*AuthPolicyList) DeepCopy ¶ added in v0.2.0
func (in *AuthPolicyList) DeepCopy() *AuthPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthPolicyList.
func (*AuthPolicyList) DeepCopyInto ¶ added in v0.2.0
func (in *AuthPolicyList) DeepCopyInto(out *AuthPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AuthPolicyList) DeepCopyObject ¶ added in v0.2.0
func (in *AuthPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AuthPolicySpec ¶ added in v0.2.0
type AuthPolicySpec struct { // TargetRef identifies an API object to apply policy to. TargetRef gatewayapiv1alpha2.PolicyTargetReference `json:"targetRef"` // Rule describe the requests that will be routed to external authorization provider AuthRules []AuthRule `json:"rules,omitempty"` // AuthSchemes are embedded Authorino's AuthConfigs AuthScheme AuthSchemeSpec `json:"authScheme,omitempty"` }
func (*AuthPolicySpec) DeepCopy ¶ added in v0.2.0
func (in *AuthPolicySpec) DeepCopy() *AuthPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthPolicySpec.
func (*AuthPolicySpec) DeepCopyInto ¶ added in v0.2.0
func (in *AuthPolicySpec) DeepCopyInto(out *AuthPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthPolicyStatus ¶ added in v0.2.0
type AuthPolicyStatus struct { // ObservedGeneration reflects the generation of the most recently observed spec. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"` }
func (*AuthPolicyStatus) DeepCopy ¶ added in v0.2.0
func (in *AuthPolicyStatus) DeepCopy() *AuthPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthPolicyStatus.
func (*AuthPolicyStatus) DeepCopyInto ¶ added in v0.2.0
func (in *AuthPolicyStatus) DeepCopyInto(out *AuthPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AuthPolicyStatus) Equals ¶ added in v0.2.0
func (s *AuthPolicyStatus) Equals(other *AuthPolicyStatus, logger logr.Logger) bool
type AuthRule ¶ added in v0.2.0
type AuthRule struct { Hosts []string `json:"hosts,omitempty"` Methods []string `json:"methods,omitempty"` Paths []string `json:"paths,omitempty"` }
func (*AuthRule) DeepCopy ¶ added in v0.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthRule.
func (*AuthRule) DeepCopyInto ¶ added in v0.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthSchemeSpec ¶ added in v0.2.0
type AuthSchemeSpec struct { // Named sets of JSON patterns that can be referred in `when` conditionals and in JSON-pattern matching policy rules. Patterns map[string]authorinov1beta1.JSONPatternExpressions `json:"patterns,omitempty"` // Conditions for the AuthConfig to be enforced. // If omitted, the AuthConfig will be enforced for all requests. // If present, all conditions must match for the AuthConfig to be enforced; otherwise, Authorino skips the AuthConfig and returns immediately with status OK. Conditions []authorinov1beta1.JSONPattern `json:"when,omitempty"` // List of identity sources/authentication modes. // At least one config of this list MUST evaluate to a valid identity for a request to be successful in the identity verification phase. Identity []*authorinov1beta1.Identity `json:"identity,omitempty"` // List of metadata source configs. // Authorino fetches JSON content from sources on this list on every request. Metadata []*authorinov1beta1.Metadata `json:"metadata,omitempty"` // Authorization is the list of authorization policies. // All policies in this list MUST evaluate to "true" for a request be successful in the authorization phase. Authorization []*authorinov1beta1.Authorization `json:"authorization,omitempty"` // List of response configs. // Authorino gathers data from the auth pipeline to build custom responses for the client. Response []*authorinov1beta1.Response `json:"response,omitempty"` // Custom denial response codes, statuses and headers to override default 40x's. DenyWith *authorinov1beta1.DenyWith `json:"denyWith,omitempty"` }
func (*AuthSchemeSpec) DeepCopy ¶ added in v0.2.0
func (in *AuthSchemeSpec) DeepCopy() *AuthSchemeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSchemeSpec.
func (*AuthSchemeSpec) DeepCopyInto ¶ added in v0.2.0
func (in *AuthSchemeSpec) DeepCopyInto(out *AuthSchemeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Configuration ¶ added in v0.2.0
type Configuration struct { // Actions holds list of action specifiers. Each action specifier can only define one action type. Actions []ActionSpecifier `json:"actions"` }
Configuration represents an action configuration. The equivalent of [config.route.v3.RateLimit](https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/route/v3/route_components.proto#envoy-v3-api-msg-config-route-v3-ratelimit) envoy object. Each action configuration produces, at most, one descriptor. Depending on the incoming request, one configuration may or may not produce a rate limit descriptor.
func (*Configuration) DeepCopy ¶ added in v0.2.0
func (in *Configuration) DeepCopy() *Configuration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Configuration.
func (*Configuration) DeepCopyInto ¶ added in v0.2.0
func (in *Configuration) DeepCopyInto(out *Configuration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayRateLimits ¶ added in v0.2.0
type GatewayRateLimits struct { GatewayName string `json:"gatewayName"` // RateLimits holds the list of rate limit configurations // +optional RateLimits []RateLimit `json:"rateLimits,omitempty"` }
func (*GatewayRateLimits) DeepCopy ¶ added in v0.2.0
func (in *GatewayRateLimits) DeepCopy() *GatewayRateLimits
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayRateLimits.
func (*GatewayRateLimits) DeepCopyInto ¶ added in v0.2.0
func (in *GatewayRateLimits) DeepCopyInto(out *GatewayRateLimits)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GenericKeySpec ¶ added in v0.2.0
type GenericKeySpec struct { DescriptorValue string `json:"descriptor_value"` // +optional DescriptorKey *string `json:"descriptor_key,omitempty"` }
func (*GenericKeySpec) DeepCopy ¶ added in v0.2.0
func (in *GenericKeySpec) DeepCopy() *GenericKeySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericKeySpec.
func (*GenericKeySpec) DeepCopyInto ¶ added in v0.2.0
func (in *GenericKeySpec) DeepCopyInto(out *GenericKeySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Kuadrant ¶
type Kuadrant struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KuadrantSpec `json:"spec,omitempty"` Status KuadrantStatus `json:"status,omitempty"` }
Kuadrant is the Schema for the kuadrants API
func (*Kuadrant) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Kuadrant.
func (*Kuadrant) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Kuadrant) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KuadrantList ¶
type KuadrantList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Kuadrant `json:"items"` }
KuadrantList contains a list of Kuadrant
func (*KuadrantList) DeepCopy ¶
func (in *KuadrantList) DeepCopy() *KuadrantList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KuadrantList.
func (*KuadrantList) DeepCopyInto ¶
func (in *KuadrantList) DeepCopyInto(out *KuadrantList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KuadrantList) DeepCopyObject ¶
func (in *KuadrantList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KuadrantSpec ¶
type KuadrantSpec struct { }
KuadrantSpec defines the desired state of Kuadrant
func (*KuadrantSpec) DeepCopy ¶
func (in *KuadrantSpec) DeepCopy() *KuadrantSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KuadrantSpec.
func (*KuadrantSpec) DeepCopyInto ¶
func (in *KuadrantSpec) DeepCopyInto(out *KuadrantSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KuadrantStatus ¶
type KuadrantStatus struct { // ObservedGeneration reflects the generation of the most recently observed spec. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"` }
KuadrantStatus defines the observed state of Kuadrant
func (*KuadrantStatus) DeepCopy ¶
func (in *KuadrantStatus) DeepCopy() *KuadrantStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KuadrantStatus.
func (*KuadrantStatus) DeepCopyInto ¶
func (in *KuadrantStatus) DeepCopyInto(out *KuadrantStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KuadrantStatus) Equals ¶
func (r *KuadrantStatus) Equals(other *KuadrantStatus, logger logr.Logger) bool
type Limit ¶ added in v0.2.0
type Limit struct { MaxValue int `json:"maxValue"` Seconds int `json:"seconds"` Conditions []string `json:"conditions"` Variables []string `json:"variables"` }
Limit represents partially a Limitador limit.
func LimitFromLimitadorRateLimit ¶ added in v0.2.0
func LimitFromLimitadorRateLimit(limit *limitadorv1alpha1.RateLimit) *Limit
func (*Limit) DeepCopy ¶ added in v0.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Limit.
func (*Limit) DeepCopyInto ¶ added in v0.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetadataKeySpec ¶ added in v0.2.0
type MetadataKeySpec struct { Key string `json:"key"` Path []MetadataPathSegment `json:"path"` }
func (*MetadataKeySpec) DeepCopy ¶ added in v0.2.0
func (in *MetadataKeySpec) DeepCopy() *MetadataKeySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataKeySpec.
func (*MetadataKeySpec) DeepCopyInto ¶ added in v0.2.0
func (in *MetadataKeySpec) DeepCopyInto(out *MetadataKeySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetadataPathSegment ¶ added in v0.2.0
type MetadataPathSegment struct {
Segment MetadataPathSegmentKey `json:"segment"`
}
func (*MetadataPathSegment) DeepCopy ¶ added in v0.2.0
func (in *MetadataPathSegment) DeepCopy() *MetadataPathSegment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataPathSegment.
func (*MetadataPathSegment) DeepCopyInto ¶ added in v0.2.0
func (in *MetadataPathSegment) DeepCopyInto(out *MetadataPathSegment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetadataPathSegmentKey ¶ added in v0.2.0
type MetadataPathSegmentKey struct {
Key string `json:"key"`
}
func (*MetadataPathSegmentKey) DeepCopy ¶ added in v0.2.0
func (in *MetadataPathSegmentKey) DeepCopy() *MetadataPathSegmentKey
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataPathSegmentKey.
func (*MetadataPathSegmentKey) DeepCopyInto ¶ added in v0.2.0
func (in *MetadataPathSegmentKey) DeepCopyInto(out *MetadataPathSegmentKey)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetadataSource ¶ added in v0.2.0
type MetadataSource string
+kubebuilder:validation:Enum=DYNAMIC;ROUTE_ENTRY
type MetadataSpec ¶ added in v0.2.0
type MetadataSpec struct { DescriptorKey string `json:"descriptor_key"` MetadataKey MetadataKeySpec `json:"metadata_key"` // +optional DefaultValue *string `json:"default_value,omitempty"` // +kubebuilder:default=DYNAMIC Source MetadataSource `json:"source,omitempty"` }
func (*MetadataSpec) DeepCopy ¶ added in v0.2.0
func (in *MetadataSpec) DeepCopy() *MetadataSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataSpec.
func (*MetadataSpec) DeepCopyInto ¶ added in v0.2.0
func (in *MetadataSpec) DeepCopyInto(out *MetadataSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RateLimit ¶ added in v0.2.0
type RateLimit struct { // Configurations holds list of (action) configuration. Configurations []Configuration `json:"configurations"` // Rules represents the definition of the scope of the rate limit object // Defines a list of conditions for which rate limit configuration will apply // Matching occurs when at least one rule applies against the incoming request. // If rules are not set, or empty, it is equivalent to matching all the requests. // +optional Rules []Rule `json:"rules,omitempty"` // Limits holds a list of Limitador limits // +optional Limits []Limit `json:"limits,omitempty"` }
RateLimit represents a complete rate limit configuration
func (*RateLimit) DeepCopy ¶ added in v0.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimit.
func (*RateLimit) DeepCopyInto ¶ added in v0.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RateLimitPolicy ¶ added in v0.2.0
type RateLimitPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RateLimitPolicySpec `json:"spec,omitempty"` Status RateLimitPolicyStatus `json:"status,omitempty"` }
RateLimitPolicy is the Schema for the ratelimitpolicies API
func (*RateLimitPolicy) DeepCopy ¶ added in v0.2.0
func (in *RateLimitPolicy) DeepCopy() *RateLimitPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitPolicy.
func (*RateLimitPolicy) DeepCopyInto ¶ added in v0.2.0
func (in *RateLimitPolicy) DeepCopyInto(out *RateLimitPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RateLimitPolicy) DeepCopyObject ¶ added in v0.2.0
func (in *RateLimitPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RateLimitPolicy) FlattenLimits ¶ added in v0.2.0
func (r *RateLimitPolicy) FlattenLimits() []Limit
FlattenLimits returns Limit list from RateLimit list
func (*RateLimitPolicy) GetTargetRef ¶ added in v0.2.0
func (r *RateLimitPolicy) GetTargetRef() gatewayapiv1alpha2.PolicyTargetReference
func (*RateLimitPolicy) GetWrappedNamespace ¶ added in v0.2.0
func (r *RateLimitPolicy) GetWrappedNamespace() gatewayapiv1alpha2.Namespace
func (*RateLimitPolicy) TargetKey ¶ added in v0.2.0
func (r *RateLimitPolicy) TargetKey() client.ObjectKey
func (*RateLimitPolicy) Validate ¶ added in v0.2.0
func (r *RateLimitPolicy) Validate() error
type RateLimitPolicyList ¶ added in v0.2.0
type RateLimitPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RateLimitPolicy `json:"items"` }
RateLimitPolicyList contains a list of RateLimitPolicy
func (*RateLimitPolicyList) DeepCopy ¶ added in v0.2.0
func (in *RateLimitPolicyList) DeepCopy() *RateLimitPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitPolicyList.
func (*RateLimitPolicyList) DeepCopyInto ¶ added in v0.2.0
func (in *RateLimitPolicyList) DeepCopyInto(out *RateLimitPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RateLimitPolicyList) DeepCopyObject ¶ added in v0.2.0
func (in *RateLimitPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RateLimitPolicySpec ¶ added in v0.2.0
type RateLimitPolicySpec struct { // TargetRef identifies an API object to apply policy to. TargetRef gatewayapiv1alpha2.PolicyTargetReference `json:"targetRef"` // RateLimits holds the list of rate limit configurations // +optional RateLimits []RateLimit `json:"rateLimits,omitempty"` }
RateLimitPolicySpec defines the desired state of RateLimitPolicy
func (*RateLimitPolicySpec) DeepCopy ¶ added in v0.2.0
func (in *RateLimitPolicySpec) DeepCopy() *RateLimitPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitPolicySpec.
func (*RateLimitPolicySpec) DeepCopyInto ¶ added in v0.2.0
func (in *RateLimitPolicySpec) DeepCopyInto(out *RateLimitPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RateLimitPolicyStatus ¶ added in v0.2.0
type RateLimitPolicyStatus struct { // ObservedGeneration reflects the generation of the most recently observed spec. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"` // GatewaysRateLimits shows the rate limit configuration applied by policies at the gateway level // this field is only meant for rate limit policies targeting a route // +optional GatewaysRateLimits []GatewayRateLimits `json:"gatewaysRateLimits,omitempty"` }
RateLimitPolicyStatus defines the observed state of RateLimitPolicy
func (*RateLimitPolicyStatus) DeepCopy ¶ added in v0.2.0
func (in *RateLimitPolicyStatus) DeepCopy() *RateLimitPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitPolicyStatus.
func (*RateLimitPolicyStatus) DeepCopyInto ¶ added in v0.2.0
func (in *RateLimitPolicyStatus) DeepCopyInto(out *RateLimitPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RateLimitPolicyStatus) Equals ¶ added in v0.2.0
func (s *RateLimitPolicyStatus) Equals(other *RateLimitPolicyStatus, logger logr.Logger) bool
type RemoteAddressSpec ¶ added in v0.2.0
type RemoteAddressSpec struct { }
RemoteAddressSpec no need to specify descriptor entry is populated using the trusted address from [x-forwarded-for](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#config-http-conn-man-headers-x-forwarded-for)
func (*RemoteAddressSpec) DeepCopy ¶ added in v0.2.0
func (in *RemoteAddressSpec) DeepCopy() *RemoteAddressSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteAddressSpec.
func (*RemoteAddressSpec) DeepCopyInto ¶ added in v0.2.0
func (in *RemoteAddressSpec) DeepCopyInto(out *RemoteAddressSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RequestHeadersSpec ¶ added in v0.2.0
type RequestHeadersSpec struct { HeaderName string `json:"header_name"` DescriptorKey string `json:"descriptor_key"` // +optional SkipIfAbsent *bool `json:"skip_if_absent,omitempty"` }
RequestHeadersSpec Rate limit on request headers.
func (*RequestHeadersSpec) DeepCopy ¶ added in v0.2.0
func (in *RequestHeadersSpec) DeepCopy() *RequestHeadersSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeadersSpec.
func (*RequestHeadersSpec) DeepCopyInto ¶ added in v0.2.0
func (in *RequestHeadersSpec) DeepCopyInto(out *RequestHeadersSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Rule ¶ added in v0.2.0
type Rule struct { // +optional Paths []string `json:"paths,omitempty"` // +optional Methods []string `json:"methods,omitempty"` // +optional Hosts []string `json:"hosts,omitempty"` }
Rule defines a single condition for the rate limit configuration All defined fields within the rule must be met to have a rule match
func (*Rule) DeepCopy ¶ added in v0.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule.
func (*Rule) DeepCopyInto ¶ added in v0.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.