v1beta1

package
v0.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 17, 2023 License: Apache-2.0 Imports: 13 Imported by: 1

Documentation

Overview

Package v1beta1 contains API Schema definitions for the kuadrant v1beta1 API group +kubebuilder:object:generate=true +groupName=kuadrant.io

Index

Constants

This section is empty.

Variables

View Source
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 (*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

func (in *AuthRule) DeepCopy() *AuthRule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthRule.

func (*AuthRule) DeepCopyInto added in v0.2.0

func (in *AuthRule) DeepCopyInto(out *AuthRule)

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

func (in *Kuadrant) DeepCopy() *Kuadrant

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Kuadrant.

func (*Kuadrant) DeepCopyInto

func (in *Kuadrant) DeepCopyInto(out *Kuadrant)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Kuadrant) DeepCopyObject

func (in *Kuadrant) DeepCopyObject() runtime.Object

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

func (in *Limit) DeepCopy() *Limit

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Limit.

func (*Limit) DeepCopyInto added in v0.2.0

func (in *Limit) DeepCopyInto(out *Limit)

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

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

func (in *RateLimit) DeepCopy() *RateLimit

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimit.

func (*RateLimit) DeepCopyInto added in v0.2.0

func (in *RateLimit) DeepCopyInto(out *RateLimit)

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 (*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

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

func (in *Rule) DeepCopy() *Rule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule.

func (*Rule) DeepCopyInto added in v0.2.0

func (in *Rule) DeepCopyInto(out *Rule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL