v1alpha1

package
v0.0.0-...-25e6f9d Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2024 License: Apache-2.0 Imports: 18 Imported by: 2

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the dp v1alpha1 API group +kubebuilder:object:generate=true +groupName=dp.wso2.com

Copyright 2023.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "dp.wso2.com", 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 API

type API struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   APISpec   `json:"spec,omitempty"`
	Status APIStatus `json:"status,omitempty"`
}

API is the Schema for the apis API

func (*API) ConvertFrom

func (src *API) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the Hub version (v1alpha2) to this version. src is v1alpha1.API and dst is v1alpha2.API.

func (*API) ConvertTo

func (src *API) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this API CR to the Hub version (v1alpha2). src is v1alpha1.API and dst is v1alpha2.API.

func (*API) DeepCopy

func (in *API) DeepCopy() *API

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

func (*API) DeepCopyInto

func (in *API) DeepCopyInto(out *API)

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

func (*API) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*API) SetupWebhookWithManager

func (r *API) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager creates a new webhook builder for API

type APIAuth

type APIAuth struct {
	// Oauth2 is to specify the Oauth2 authentication scheme details
	//
	// +optional
	Oauth2 Oauth2Auth `json:"oauth2,omitempty"`

	// APIKey is to specify the APIKey authentication scheme details
	//
	// +optional
	// +nullable
	APIKey []APIKeyAuth `json:"apiKey,omitempty"`

	// TestConsoleKey is to specify the Test Console Key authentication scheme details
	//
	// +optional
	TestConsoleKey TestConsoleKeyAuth `json:"testConsoleKey,omitempty"`
}

APIAuth Authentication scheme type and details

func (*APIAuth) DeepCopy

func (in *APIAuth) DeepCopy() *APIAuth

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

func (*APIAuth) DeepCopyInto

func (in *APIAuth) DeepCopyInto(out *APIAuth)

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

type APIKeyAuth

type APIKeyAuth struct {
	//	In is to specify how the APIKey is passed to the request
	//
	// +kubebuilder:validation:Enum=Header;Query
	// +kubebuilder:validation:MinLength=1
	In string `json:"in,omitempty"`

	// Name is the name of the header or query parameter to be used
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name,omitempty"`

	// SendTokenToUpstream is to specify whether the APIKey should be sent to the upstream
	//
	// +optional
	SendTokenToUpstream bool `json:"sendTokenToUpstream,omitempty"`
}

APIKeyAuth APIKey Authentication scheme details

func (*APIKeyAuth) DeepCopy

func (in *APIKeyAuth) DeepCopy() *APIKeyAuth

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

func (*APIKeyAuth) DeepCopyInto

func (in *APIKeyAuth) DeepCopyInto(out *APIKeyAuth)

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

type APIList

type APIList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []API `json:"items"`
}

APIList contains a list of API

func (*APIList) DeepCopy

func (in *APIList) DeepCopy() *APIList

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

func (*APIList) DeepCopyInto

func (in *APIList) DeepCopyInto(out *APIList)

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

func (*APIList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type APIPolicy

type APIPolicy struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   APIPolicySpec   `json:"spec,omitempty"`
	Status APIPolicyStatus `json:"status,omitempty"`
}

APIPolicy is the Schema for the apipolicies API

func (*APIPolicy) ConvertFrom

func (src *APIPolicy) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the Hub version (v1alpha2) to this version. src is v1alpha1.API and dst is v1alpha2.API.

func (*APIPolicy) ConvertTo

func (src *APIPolicy) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this API CR to the Hub version (v1alpha2). src is v1alpha1.API and dst is v1alpha2.API.

func (*APIPolicy) DeepCopy

func (in *APIPolicy) DeepCopy() *APIPolicy

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

func (*APIPolicy) DeepCopyInto

func (in *APIPolicy) DeepCopyInto(out *APIPolicy)

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

func (*APIPolicy) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*APIPolicy) Default

func (r *APIPolicy) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*APIPolicy) SetupWebhookWithManager

func (r *APIPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager creates a new webhook builder for APIPolicy

func (*APIPolicy) ValidateCreate

func (r *APIPolicy) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*APIPolicy) ValidateDelete

func (r *APIPolicy) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*APIPolicy) ValidatePolicy

func (r *APIPolicy) ValidatePolicy() error

ValidatePolicy validates the APIPolicy

func (*APIPolicy) ValidateUpdate

func (r *APIPolicy) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type APIPolicyList

type APIPolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []APIPolicy `json:"items"`
}

APIPolicyList contains a list of APIPolicy

func (*APIPolicyList) DeepCopy

func (in *APIPolicyList) DeepCopy() *APIPolicyList

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

func (*APIPolicyList) DeepCopyInto

func (in *APIPolicyList) DeepCopyInto(out *APIPolicyList)

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

func (*APIPolicyList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type APIPolicySpec

type APIPolicySpec struct {
	Default   *PolicySpec                     `json:"default,omitempty"`
	Override  *PolicySpec                     `json:"override,omitempty"`
	TargetRef gwapiv1b1.PolicyTargetReference `json:"targetRef,omitempty"`
}

APIPolicySpec defines the desired state of APIPolicy

func (*APIPolicySpec) DeepCopy

func (in *APIPolicySpec) DeepCopy() *APIPolicySpec

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

func (*APIPolicySpec) DeepCopyInto

func (in *APIPolicySpec) DeepCopyInto(out *APIPolicySpec)

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

type APIPolicyStatus

type APIPolicyStatus struct {
}

APIPolicyStatus defines the observed state of APIPolicy

func (*APIPolicyStatus) DeepCopy

func (in *APIPolicyStatus) DeepCopy() *APIPolicyStatus

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

func (*APIPolicyStatus) DeepCopyInto

func (in *APIPolicyStatus) DeepCopyInto(out *APIPolicyStatus)

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

type APIRateLimitPolicy

type APIRateLimitPolicy struct {
	// RequestPerUnit is the number of requests allowed per unit time
	//
	// +kubeBuilder:validation:Minimum=1
	RequestsPerUnit uint32 `json:"requestsPerUnit,omitempty"`

	// Unit is the unit of the requestsPerUnit
	//
	// +kubebuilder:validation:Enum=Minute;Hour;Day
	Unit string `json:"unit,omitempty"`
}

APIRateLimitPolicy defines the desired state of APIPolicy

func (*APIRateLimitPolicy) DeepCopy

func (in *APIRateLimitPolicy) DeepCopy() *APIRateLimitPolicy

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

func (*APIRateLimitPolicy) DeepCopyInto

func (in *APIRateLimitPolicy) DeepCopyInto(out *APIRateLimitPolicy)

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

type APISpec

type APISpec struct {

	// APIName is the unique name of the API
	//can be used to uniquely identify an API.
	//
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:MaxLength=60
	// +kubebuilder:validation:Pattern="^[^~!@#;:%^*()+={}|\\<>\"”,&$\\[\\]\\/]*$"
	APIName string `json:"apiName"`

	// APIVersion is the version number of the API.
	//
	// +kubebuilder:validation:MinLength=1
	// +kubebuilder:validation:MaxLength=30
	// +kubebuilder:validation:Pattern="^[^~!@#;:%^*()+={}|\\<>\"”,&/$\\[\\]\\s+\\/]+$"
	APIVersion string `json:"apiVersion"`

	// IsDefaultVersion indicates whether this API version should be used as a default API
	//
	// +optional
	IsDefaultVersion bool `json:"isDefaultVersion"`

	// DefinitionFileRef contains the OpenAPI 3 or Swagger
	// definition of the API in a ConfigMap.
	//
	// +optional
	DefinitionFileRef string `json:"definitionFileRef"`

	// DefinitionPath contains the path to expose the API definition.
	//
	// +kubebuilder:default:=/api-definition
	// +kubebuilder:validation:MinLength=1
	DefinitionPath string `json:"definitionPath"`

	// Production contains a list of references to HttpRoutes
	// of type HttpRoute.
	// xref: https://github.com/kubernetes-sigs/gateway-api/blob/main/apis/v1beta1/httproute_types.go
	//
	//
	// +optional
	// +nullable
	// +kubebuilder:validation:MaxItems=1
	Production []EnvConfig `json:"production"`

	// Sandbox contains a list of references to HttpRoutes
	// of type HttpRoute.
	// xref: https://github.com/kubernetes-sigs/gateway-api/blob/main/apis/v1beta1/httproute_types.go
	//
	//
	// +optional
	// +nullable
	// +kubebuilder:validation:MaxItems=1
	Sandbox []EnvConfig `json:"sandbox"`

	// APIType denotes the type of the API.
	// Possible values could be REST, GraphQL, Async
	//
	// +kubebuilder:validation:Enum=REST
	APIType string `json:"apiType"`

	// BasePath denotes the basepath of the API.
	// e.g: /pet-store-api/1.0.6
	//
	// +kubectl:validation:MaxLength=232
	// +kubebuilder:validation:Pattern=^[/][a-zA-Z0-9~/_.-]*$
	BasePath string `json:"basePath"`

	// Organization denotes the organization.
	// related to the API
	//
	// +optional
	Organization string `json:"organization"`

	// SystemAPI denotes if it is an internal system API.
	//
	// +optional
	SystemAPI bool `json:"systemAPI"`

	// APIProperties denotes the custom properties of the API.
	//
	// +optional
	// +nullable
	APIProperties []Property `json:"apiProperties,omitempty"`
}

APISpec defines the desired state of API

func (*APISpec) DeepCopy

func (in *APISpec) DeepCopy() *APISpec

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

func (*APISpec) DeepCopyInto

func (in *APISpec) DeepCopyInto(out *APISpec)

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

type APIStatus

type APIStatus struct {
	// DeploymentStatus denotes the deployment status of the API
	//
	// +optional
	DeploymentStatus DeploymentStatus `json:"deploymentStatus"`
}

APIStatus defines the observed state of API

func (*APIStatus) DeepCopy

func (in *APIStatus) DeepCopy() *APIStatus

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

func (*APIStatus) DeepCopyInto

func (in *APIStatus) DeepCopyInto(out *APIStatus)

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

type AuthSpec

type AuthSpec struct {
	// Disabled is to disable all authentications
	Disabled *bool `json:"disabled,omitempty"`

	// AuthTypes is to specify the authentication scheme types and details
	AuthTypes *APIAuth `json:"authTypes,omitempty"`
}

AuthSpec specification of the authentication service

func (*AuthSpec) DeepCopy

func (in *AuthSpec) DeepCopy() *AuthSpec

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

func (*AuthSpec) DeepCopyInto

func (in *AuthSpec) DeepCopyInto(out *AuthSpec)

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

type Authentication

type Authentication struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   AuthenticationSpec   `json:"spec,omitempty"`
	Status AuthenticationStatus `json:"status,omitempty"`
}

Authentication is the Schema for the authentications API

func (*Authentication) ConvertFrom

func (src *Authentication) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the Hub version (v1alpha2) to this version. src is v1alpha1.Authentication and dst is v1alpha2.Authentication.

func (*Authentication) ConvertTo

func (src *Authentication) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this Authentication CR to the Hub version (v1alpha2). src is v1alpha1.Authentication and dst is v1alpha2.Authentication.

func (*Authentication) DeepCopy

func (in *Authentication) DeepCopy() *Authentication

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

func (*Authentication) DeepCopyInto

func (in *Authentication) DeepCopyInto(out *Authentication)

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

func (*Authentication) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Authentication) SetupWebhookWithManager

func (r *Authentication) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager creates a new webhook builder for Authentication

type AuthenticationList

type AuthenticationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Authentication `json:"items"`
}

AuthenticationList contains a list of Authentication

func (*AuthenticationList) DeepCopy

func (in *AuthenticationList) DeepCopy() *AuthenticationList

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

func (*AuthenticationList) DeepCopyInto

func (in *AuthenticationList) DeepCopyInto(out *AuthenticationList)

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

func (*AuthenticationList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type AuthenticationSpec

type AuthenticationSpec struct {
	Default   *AuthSpec                       `json:"default,omitempty"`
	Override  *AuthSpec                       `json:"override,omitempty"`
	TargetRef gwapiv1b1.PolicyTargetReference `json:"targetRef,omitempty"`
}

AuthenticationSpec defines the desired state of Authentication

func (*AuthenticationSpec) DeepCopy

func (in *AuthenticationSpec) DeepCopy() *AuthenticationSpec

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

func (*AuthenticationSpec) DeepCopyInto

func (in *AuthenticationSpec) DeepCopyInto(out *AuthenticationSpec)

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

type AuthenticationStatus

type AuthenticationStatus struct {
}

AuthenticationStatus defines the observed state of Authentication

func (*AuthenticationStatus) DeepCopy

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

func (*AuthenticationStatus) DeepCopyInto

func (in *AuthenticationStatus) DeepCopyInto(out *AuthenticationStatus)

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

type Backend

type Backend struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   BackendSpec   `json:"spec,omitempty"`
	Status BackendStatus `json:"status,omitempty"`
}

Backend is the Schema for the backends API

func (*Backend) DeepCopy

func (in *Backend) DeepCopy() *Backend

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

func (*Backend) DeepCopyInto

func (in *Backend) DeepCopyInto(out *Backend)

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

func (*Backend) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Backend) Default

func (r *Backend) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Backend) SetupWebhookWithManager

func (r *Backend) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager sets up and registers the backend webhook with the manager.

func (*Backend) ValidateCreate

func (r *Backend) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Backend) ValidateDelete

func (r *Backend) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Backend) ValidateUpdate

func (r *Backend) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type BackendJWT

type BackendJWT struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   BackendJWTSpec   `json:"spec,omitempty"`
	Status BackendJWTStatus `json:"status,omitempty"`
}

BackendJWT is the Schema for the backendjwts API

func (*BackendJWT) DeepCopy

func (in *BackendJWT) DeepCopy() *BackendJWT

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

func (*BackendJWT) DeepCopyInto

func (in *BackendJWT) DeepCopyInto(out *BackendJWT)

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

func (*BackendJWT) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*BackendJWT) Default

func (r *BackendJWT) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*BackendJWT) SetupWebhookWithManager

func (r *BackendJWT) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager creates a new webhook builder for BackendJWT

func (*BackendJWT) ValidateCreate

func (r *BackendJWT) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*BackendJWT) ValidateDelete

func (r *BackendJWT) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*BackendJWT) ValidateUpdate

func (r *BackendJWT) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type BackendJWTList

type BackendJWTList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []BackendJWT `json:"items"`
}

BackendJWTList contains a list of BackendJWT

func (*BackendJWTList) DeepCopy

func (in *BackendJWTList) DeepCopy() *BackendJWTList

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

func (*BackendJWTList) DeepCopyInto

func (in *BackendJWTList) DeepCopyInto(out *BackendJWTList)

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

func (*BackendJWTList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BackendJWTSpec

type BackendJWTSpec struct {
	// Encoding of the JWT token
	//
	// +optional
	// +kubebuilder:default=Base64
	// +kubebuilder:validation:Enum=Base64;Base64url
	Encoding string `json:"encoding,omitempty"`

	// Header of the JWT token
	//
	// +optional
	// +kubebuilder:default=X-JWT-Assertion
	// +kubebuilder:validation:MinLength=1
	Header string `json:"header,omitempty"`

	// Signing algorithm of the JWT token
	//
	// +optional
	// +kubebuilder:default=SHA256withRSA
	// +kubeBuilder:validation:Enum=SHA256withRSA;SHA384withRSA;SHA512withRSA;SHA256withECDSA;SHA384withECDSA;SHA512withECDSA;SHA256withHMAC;SHA384withHMAC;SHA512withHMAC
	SigningAlgorithm string `json:"signingAlgorithm,omitempty"`

	// TokenTTL time to live for the backend JWT token in seconds
	//
	// +optional
	// +kubebuilder:default=3600
	TokenTTL uint32 `json:"tokenTTL,omitempty"`

	// CustomClaims holds custom claims that needs to be added to the jwt
	//
	// +optional
	// +nullable
	CustomClaims []CustomClaim `json:"customClaims,omitempty"`
}

BackendJWTSpec defines the desired state of BackendJWT

func (*BackendJWTSpec) DeepCopy

func (in *BackendJWTSpec) DeepCopy() *BackendJWTSpec

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

func (*BackendJWTSpec) DeepCopyInto

func (in *BackendJWTSpec) DeepCopyInto(out *BackendJWTSpec)

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

type BackendJWTStatus

type BackendJWTStatus struct {
}

BackendJWTStatus defines the observed state of BackendJWT

func (*BackendJWTStatus) DeepCopy

func (in *BackendJWTStatus) DeepCopy() *BackendJWTStatus

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

func (*BackendJWTStatus) DeepCopyInto

func (in *BackendJWTStatus) DeepCopyInto(out *BackendJWTStatus)

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

type BackendJWTToken

type BackendJWTToken struct {
	// Name holds the name of the BackendJWT resource.
	Name string `json:"name,omitempty"`
}

BackendJWTToken holds backend JWT token information

func (*BackendJWTToken) DeepCopy

func (in *BackendJWTToken) DeepCopy() *BackendJWTToken

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

func (*BackendJWTToken) DeepCopyInto

func (in *BackendJWTToken) DeepCopyInto(out *BackendJWTToken)

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

type BackendList

type BackendList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Backend `json:"items"`
}

BackendList contains a list of Backend

func (*BackendList) DeepCopy

func (in *BackendList) DeepCopy() *BackendList

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

func (*BackendList) DeepCopyInto

func (in *BackendList) DeepCopyInto(out *BackendList)

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

func (*BackendList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BackendProtocolType

type BackendProtocolType string

BackendProtocolType defines the backend protocol type.

const (
	// HTTPProtocol is the http protocol
	HTTPProtocol BackendProtocolType = "http"
	// HTTPSProtocol is the https protocol
	HTTPSProtocol BackendProtocolType = "https"
	// WSProtocol is the ws protocol
	WSProtocol BackendProtocolType = "ws"
	// WSSProtocol is the wss protocol
	WSSProtocol BackendProtocolType = "wss"
)

type BackendReference

type BackendReference struct {
	// Name is the name of the Backend resource.
	//
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
}

BackendReference refers to a Backend resource as the interceptor service.

func (*BackendReference) DeepCopy

func (in *BackendReference) DeepCopy() *BackendReference

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

func (*BackendReference) DeepCopyInto

func (in *BackendReference) DeepCopyInto(out *BackendReference)

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

type BackendSpec

type BackendSpec struct {
	// Services holds hosts and ports
	//
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=1
	Services []Service `json:"services,omitempty"`

	// Protocol defines the backend protocol
	//
	// +optional
	// +kubebuilder:validation:Enum=http;https;ws;wss
	// +kubebuilder:default=http
	Protocol BackendProtocolType `json:"protocol"`

	// BasePath defines the base path of the backend
	// +optional
	BasePath string `json:"basePath"`

	// TLS defines the TLS configurations of the backend
	TLS *TLSConfig `json:"tls,omitempty"`

	// Security defines the security configurations of the backend
	Security *SecurityConfig `json:"security,omitempty"`

	// CircuitBreaker defines the circuit breaker configurations
	CircuitBreaker *CircuitBreaker `json:"circuitBreaker,omitempty"`

	// Timeout configuration for the backend
	Timeout *Timeout `json:"timeout,omitempty"`

	// Retry configuration for the backend
	Retry *RetryConfig `json:"retry,omitempty"`

	// HealthCheck configuration for the backend tcp health check
	HealthCheck *HealthCheck `json:"healthCheck,omitempty"`
}

BackendSpec defines the desired state of Backend

func (*BackendSpec) DeepCopy

func (in *BackendSpec) DeepCopy() *BackendSpec

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

func (*BackendSpec) DeepCopyInto

func (in *BackendSpec) DeepCopyInto(out *BackendSpec)

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

type BackendStatus

type BackendStatus struct{}

BackendStatus defines the observed state of Backend

func (*BackendStatus) DeepCopy

func (in *BackendStatus) DeepCopy() *BackendStatus

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

func (*BackendStatus) DeepCopyInto

func (in *BackendStatus) DeepCopyInto(out *BackendStatus)

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

type BasicSecurityConfig

type BasicSecurityConfig struct {
	// SecretRef to credentials
	SecretRef SecretRef `json:"secretRef"`
}

BasicSecurityConfig defines basic security configurations

func (*BasicSecurityConfig) DeepCopy

func (in *BasicSecurityConfig) DeepCopy() *BasicSecurityConfig

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

func (*BasicSecurityConfig) DeepCopyInto

func (in *BasicSecurityConfig) DeepCopyInto(out *BasicSecurityConfig)

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

type CERTConfig

type CERTConfig struct {
	// CertificateInline is the Inline Certificate entry
	CertificateInline *string `json:"certificateInline,omitempty"`
	// SecretRef denotes the reference to the Secret that contains the Certificate
	SecretRef *RefConfig `json:"secretRef,omitempty"`
	// ConfigMapRef denotes the reference to the ConfigMap that contains the Certificate
	ConfigMapRef *RefConfig `json:"configMapRef,omitempty"`
}

CERTConfig defines the certificate configuration

func (*CERTConfig) DeepCopy

func (in *CERTConfig) DeepCopy() *CERTConfig

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

func (*CERTConfig) DeepCopyInto

func (in *CERTConfig) DeepCopyInto(out *CERTConfig)

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

type CORSPolicy

type CORSPolicy struct {
	// AllowCredentials indicates whether the request can include user credentials like
	// cookies, HTTP authentication or client side SSL certificates.
	//
	// +optional
	AccessControlAllowCredentials bool `json:"accessControlAllowCredentials,omitempty"`

	// AccessControlAllowHeaders indicates which headers can be used
	// during the actual request.
	//
	// +optional
	AccessControlAllowHeaders []string `json:"accessControlAllowHeaders,omitempty"`

	// AccessControlAllowMethods indicates which methods can be used
	// during the actual request.
	//
	// +optional
	AccessControlAllowMethods []string `json:"accessControlAllowMethods,omitempty"`

	// AccessControlAllowOrigins indicates which origins can be used
	// during the actual request.
	//
	// +optional
	AccessControlAllowOrigins []string `json:"accessControlAllowOrigins,omitempty"`

	// AccessControlExposeHeaders indicates which headers can be exposed
	// as part of the response by listing their names.
	//
	// +optional
	AccessControlExposeHeaders []string `json:"accessControlExposeHeaders,omitempty"`

	// AccessControlMaxAge indicates how long the results of a preflight request
	// can be cached in a preflight result cache.
	//
	// +optional
	AccessControlMaxAge *int `json:"accessControlMaxAge,omitempty"`
}

CORSPolicy holds CORS policy information

func (*CORSPolicy) DeepCopy

func (in *CORSPolicy) DeepCopy() *CORSPolicy

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

func (*CORSPolicy) DeepCopyInto

func (in *CORSPolicy) DeepCopyInto(out *CORSPolicy)

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

type CircuitBreaker

type CircuitBreaker struct {

	// MaxConnections is the maximum number of connections that will make to the upstream cluster.
	//
	// +kubebuilder:default=1024
	// +optional
	MaxConnections uint32 `json:"maxConnections"`

	// MaxPendingRequests is the maximum number of pending requests that will allow to the upstream cluster.
	//
	// +kubebuilder:default=1024
	// +optional
	MaxPendingRequests uint32 `json:"maxPendingRequests"`

	// MaxRequests is the maximum number of parallel requests that will make to the upstream cluster.
	//
	// +kubebuilder:default=1024
	// +optional
	MaxRequests uint32 `json:"maxRequests"`

	// MaxRetries is the maximum number of parallel retries that will allow to the upstream cluster.
	//
	// +kubebuilder:default=3
	// +optional
	MaxRetries uint32 `json:"maxRetries"`

	// MaxConnectionPools is the maximum number of parallel connection pools that will allow to the upstream cluster.
	// If not specified, the default is unlimited.
	//
	// +optional
	// +kubebuilder:validation:Minimum=1
	MaxConnectionPools uint32 `json:"maxConnectionPools"`
}

CircuitBreaker defines the circuit breaker configurations

func (*CircuitBreaker) DeepCopy

func (in *CircuitBreaker) DeepCopy() *CircuitBreaker

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

func (*CircuitBreaker) DeepCopyInto

func (in *CircuitBreaker) DeepCopyInto(out *CircuitBreaker)

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

type ClaimMapping

type ClaimMapping struct {
	// RemoteClaim denotes the remote claim
	RemoteClaim string `json:"remoteClaim"`
	// LocalClaim denotes the local claim
	LocalClaim string `json:"localClaim"`
}

ClaimMapping defines the reference configuration

func (*ClaimMapping) DeepCopy

func (in *ClaimMapping) DeepCopy() *ClaimMapping

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

func (*ClaimMapping) DeepCopyInto

func (in *ClaimMapping) DeepCopyInto(out *ClaimMapping)

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

type CustomClaim

type CustomClaim struct {
	// Claim name
	//
	// +kubebuilder:validation:MinLength=1
	Claim string `json:"claim,omitempty"`

	// Claim value
	//
	// +kubebuilder:validation:MinLength=1
	Value string `json:"value,omitempty"`

	// Claim type
	//
	// +kubebuilder:default=string
	// +kubebuilder:validation:Enum=string;int;float;bool;long;date
	Type string `json:"type"`
}

CustomClaim holds custom claim information

func (*CustomClaim) DeepCopy

func (in *CustomClaim) DeepCopy() *CustomClaim

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

func (*CustomClaim) DeepCopyInto

func (in *CustomClaim) DeepCopyInto(out *CustomClaim)

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

type CustomRateLimitPolicy

type CustomRateLimitPolicy struct {
	// RequestPerUnit is the number of requests allowed per unit time
	//
	// +kubeBuilder:validation:Minimum=1
	RequestsPerUnit uint32 `json:"requestsPerUnit,omitempty"`

	// Unit is the unit of the requestsPerUnit
	//
	// +kubebuilder:validation:Enum=Minute;Hour;Day
	Unit string `json:"unit,omitempty"`

	// Key is the key of the custom policy
	//
	// +kubebuilder:validation:MinLength=1
	Key string `json:"key,omitempty"`

	// Value is the value of the custom policy
	//
	// +optional
	Value string `json:"value,omitempty"`

	// Organization is the organization of the policy
	//
	// +kubeBuilder:validation:MinLength=1
	Organization string `json:"organization,omitempty"`
}

CustomRateLimitPolicy defines the desired state of CustomPolicy

func (*CustomRateLimitPolicy) DeepCopy

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

func (*CustomRateLimitPolicy) DeepCopyInto

func (in *CustomRateLimitPolicy) DeepCopyInto(out *CustomRateLimitPolicy)

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

type CustomRateLimitPolicyDef

type CustomRateLimitPolicyDef struct {
	Key             string `json:"key,omitempty"`
	Value           string `json:"value,omitempty"`
	RequestsPerUnit uint32 `json:"requestsPerUnit,omitempty"`

	Unit string `json:"unit,omitempty"`
	// RateLimit    RateLimit `json:"rateLimit,omitempty"`
	Organization string `json:"organization,omitempty"`
}

CustomRateLimitPolicyDef defines the desired state of CustomPolicy

func ParseCustomRateLimitPolicy

func ParseCustomRateLimitPolicy(customRateLimitCR RateLimitPolicy) *CustomRateLimitPolicyDef

ParseCustomRateLimitPolicy parses the custom rate limit policy

func (*CustomRateLimitPolicyDef) DeepCopy

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

func (*CustomRateLimitPolicyDef) DeepCopyInto

func (in *CustomRateLimitPolicyDef) DeepCopyInto(out *CustomRateLimitPolicyDef)

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

type DeploymentStatus

type DeploymentStatus struct {

	// Status denotes the state of the API in its lifecycle.
	// Possible values could be Accepted, Invalid, Deploy etc.
	//
	//
	Status string `json:"status"`

	// Message represents a user friendly message that explains the
	// current state of the API.
	//
	//
	// +optional
	Message string `json:"message"`

	// Accepted represents whether the API is accepted or not.
	//
	//
	Accepted bool `json:"accepted"`

	// TransitionTime represents the last known transition timestamp.
	//
	//
	TransitionTime *metav1.Time `json:"transitionTime"`

	// Events contains a list of events related to the API.
	//
	//
	// +optional
	Events []string `json:"events,omitempty"`
}

DeploymentStatus contains the status of the API deployment

func (*DeploymentStatus) DeepCopy

func (in *DeploymentStatus) DeepCopy() *DeploymentStatus

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

func (*DeploymentStatus) DeepCopyInto

func (in *DeploymentStatus) DeepCopyInto(out *DeploymentStatus)

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

type EnvConfig

type EnvConfig struct {
	// HTTPRouteRefs denotes the environment of the API.
	HTTPRouteRefs []string `json:"httpRouteRefs"`
}

EnvConfig contains the environment specific configuration

func (*EnvConfig) DeepCopy

func (in *EnvConfig) DeepCopy() *EnvConfig

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

func (*EnvConfig) DeepCopyInto

func (in *EnvConfig) DeepCopyInto(out *EnvConfig)

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

type HealthCheck

type HealthCheck struct {

	// Timeout is the time to wait for a health check response.
	// If the timeout is reached the health check attempt will be considered a failure.
	//
	// +kubebuilder:default=1
	// +optional
	Timeout uint32 `json:"timeout,omitempty"`

	// Interval is the time between health check attempts in seconds.
	//
	// +kubebuilder:default=30
	// +optional
	Interval uint32 `json:"interval,omitempty"`

	// UnhealthyThreshold is the number of consecutive health check failures required
	// before a backend is marked unhealthy.
	//
	// +kubebuilder:default=2
	// +optional
	UnhealthyThreshold uint32 `json:"unhealthyThreshold,omitempty"`

	// HealthyThreshold is the number of healthy health checks required before a host is marked healthy.
	// Note that during startup, only a single successful health check is required to mark a host healthy.
	//
	// +kubebuilder:default=2
	// +optional
	HealthyThreshold uint32 `json:"healthyThreshold,omitempty"`
}

HealthCheck defines the health check configurations

func (*HealthCheck) DeepCopy

func (in *HealthCheck) DeepCopy() *HealthCheck

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

func (*HealthCheck) DeepCopyInto

func (in *HealthCheck) DeepCopyInto(out *HealthCheck)

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

type InterceptorInclusion

type InterceptorInclusion string

InterceptorInclusion defines the type of data which can be included in the interceptor request/response path

const (
	// InterceptorInclusionRequestHeaders is the type to include request headers
	InterceptorInclusionRequestHeaders InterceptorInclusion = "request_headers"
	// InterceptorInclusionRequestBody is the type to include request body
	InterceptorInclusionRequestBody InterceptorInclusion = "request_body"
	// InterceptorInclusionRequestTrailers is the type to include request trailers
	InterceptorInclusionRequestTrailers InterceptorInclusion = "request_trailers"
	// InterceptorInclusionResponseHeaders is the type to include response headers
	InterceptorInclusionResponseHeaders InterceptorInclusion = "response_headers"
	// InterceptorInclusionResponseBody is the type to include response body
	InterceptorInclusionResponseBody InterceptorInclusion = "response_body"
	// InterceptorInclusionResponseTrailers is the type to include response trailers
	InterceptorInclusionResponseTrailers InterceptorInclusion = "response_trailers"
	// InterceptorInclusionInvocationContext is the type to include invocation context
	InterceptorInclusionInvocationContext InterceptorInclusion = "invocation_context"
)

type InterceptorReference

type InterceptorReference struct {
	// Name is the referced CR's name of InterceptorService resource.
	Name string `json:"name"`
}

InterceptorReference holds InterceptorService reference using name and namespace

func (*InterceptorReference) DeepCopy

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

func (*InterceptorReference) DeepCopyInto

func (in *InterceptorReference) DeepCopyInto(out *InterceptorReference)

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

type InterceptorService

type InterceptorService struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   InterceptorServiceSpec   `json:"spec,omitempty"`
	Status InterceptorServiceStatus `json:"status,omitempty"`
}

InterceptorService is the Schema for the interceptorservices API

func (*InterceptorService) DeepCopy

func (in *InterceptorService) DeepCopy() *InterceptorService

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

func (*InterceptorService) DeepCopyInto

func (in *InterceptorService) DeepCopyInto(out *InterceptorService)

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

func (*InterceptorService) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*InterceptorService) Default

func (r *InterceptorService) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*InterceptorService) SetupWebhookWithManager

func (r *InterceptorService) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager creates a new webhook builder for InterceptorService

func (*InterceptorService) ValidateCreate

func (r *InterceptorService) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InterceptorService) ValidateDelete

func (r *InterceptorService) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InterceptorService) ValidateUpdate

func (r *InterceptorService) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InterceptorServiceList

type InterceptorServiceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []InterceptorService `json:"items"`
}

InterceptorServiceList contains a list of InterceptorService

func (*InterceptorServiceList) DeepCopy

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

func (*InterceptorServiceList) DeepCopyInto

func (in *InterceptorServiceList) DeepCopyInto(out *InterceptorServiceList)

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

func (*InterceptorServiceList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InterceptorServiceSpec

type InterceptorServiceSpec struct {
	BackendRef BackendReference `json:"backendRef"`

	// Includes defines the types of data which should be included when calling the interceptor service
	//
	// +optional
	// +kubebuilder:validation:MaxItems=4
	// +nullable
	Includes []InterceptorInclusion `json:"includes,omitempty"`
}

InterceptorServiceSpec defines the desired state of InterceptorService

func (*InterceptorServiceSpec) DeepCopy

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

func (*InterceptorServiceSpec) DeepCopyInto

func (in *InterceptorServiceSpec) DeepCopyInto(out *InterceptorServiceSpec)

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

type InterceptorServiceStatus

type InterceptorServiceStatus struct {
}

InterceptorServiceStatus defines the observed state of InterceptorService

func (*InterceptorServiceStatus) DeepCopy

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

func (*InterceptorServiceStatus) DeepCopyInto

func (in *InterceptorServiceStatus) DeepCopyInto(out *InterceptorServiceStatus)

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

type JWKS

type JWKS struct {
	// URL is the URL of the JWKS endpoint
	URL string `json:"url"`
	// TLS denotes the TLS configuration of the JWKS endpoint
	TLS *CERTConfig `json:"tls,omitempty"`
}

JWKS defines the JWKS endpoint

func (*JWKS) DeepCopy

func (in *JWKS) DeepCopy() *JWKS

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

func (*JWKS) DeepCopyInto

func (in *JWKS) DeepCopyInto(out *JWKS)

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

type JWTIssuerMapping

type JWTIssuerMapping map[types.NamespacedName]*ResolvedJWTIssuer

JWTIssuerMapping maps read reconciled Backend and resolve properties into ResolvedJWTIssuer struct

func (JWTIssuerMapping) DeepCopy

func (in JWTIssuerMapping) DeepCopy() JWTIssuerMapping

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

func (JWTIssuerMapping) DeepCopyInto

func (in JWTIssuerMapping) DeepCopyInto(out *JWTIssuerMapping)

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

type Oauth2Auth

type Oauth2Auth struct {

	// Disabled is to disable OAuth2 authentication
	//
	// +kubebuilder:default:=false
	// +optional
	Disabled bool `json:"disabled"`

	// Header is the header name used to pass the OAuth2 token
	//
	// +kubebuilder:default:=authorization
	// +optional
	Header string `json:"header,omitempty"`

	// SendTokenToUpstream is to specify whether the OAuth2 token should be sent to the upstream
	//
	// +optional
	SendTokenToUpstream bool `json:"sendTokenToUpstream,omitempty"`
}

Oauth2Auth OAuth2 Authentication scheme details

func (*Oauth2Auth) DeepCopy

func (in *Oauth2Auth) DeepCopy() *Oauth2Auth

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

func (*Oauth2Auth) DeepCopyInto

func (in *Oauth2Auth) DeepCopyInto(out *Oauth2Auth)

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

type PolicySpec

type PolicySpec struct {
	// RequestInterceptors referenced to intercetor services to be applied
	// to the request flow.
	//
	// +optional
	// +nullable
	// +kubebuilder:validation:MaxItems=1
	RequestInterceptors []InterceptorReference `json:"requestInterceptors,omitempty"`

	// ResponseInterceptors referenced to intercetor services to be applied
	// to the response flow.
	//
	// +optional
	// +nullable
	// +kubebuilder:validation:MaxItems=1
	ResponseInterceptors []InterceptorReference `json:"responseInterceptors,omitempty"`

	// BackendJWTPolicy holds reference to backendJWT policy configurations
	BackendJWTPolicy *BackendJWTToken `json:"backendJwtPolicy,omitempty"`

	// CORS policy to be applied to the API.
	CORSPolicy *CORSPolicy `json:"cORSPolicy,omitempty"`
}

PolicySpec contains API policies

func (*PolicySpec) DeepCopy

func (in *PolicySpec) DeepCopy() *PolicySpec

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

func (*PolicySpec) DeepCopyInto

func (in *PolicySpec) DeepCopyInto(out *PolicySpec)

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

type Property

type Property struct {
	Name  string `json:"name,omitempty"`
	Value string `json:"value,omitempty"`
}

Property holds key value pair of APIProperties

func (*Property) DeepCopy

func (in *Property) DeepCopy() *Property

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

func (*Property) DeepCopyInto

func (in *Property) DeepCopyInto(out *Property)

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

type RateLimitAPIPolicy

type RateLimitAPIPolicy struct {

	// API level ratelimit policy
	//
	// +optional
	API *APIRateLimitPolicy `json:"api,omitempty"`

	// Custom ratelimit policy
	//
	// +optional
	Custom *CustomRateLimitPolicy `json:"custom,omitempty"`
}

RateLimitAPIPolicy defines the desired state of Policy

func (*RateLimitAPIPolicy) DeepCopy

func (in *RateLimitAPIPolicy) DeepCopy() *RateLimitAPIPolicy

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

func (*RateLimitAPIPolicy) DeepCopyInto

func (in *RateLimitAPIPolicy) DeepCopyInto(out *RateLimitAPIPolicy)

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

type RateLimitPolicy

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

func (in *RateLimitPolicy) DeepCopy() *RateLimitPolicy

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

func (*RateLimitPolicy) DeepCopyInto

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

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RateLimitPolicy) Default

func (r *RateLimitPolicy) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*RateLimitPolicy) SetupWebhookWithManager

func (r *RateLimitPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager creates a new webhook builder for RateLimitPolicy

func (*RateLimitPolicy) ValidateCreate

func (r *RateLimitPolicy) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RateLimitPolicy) ValidateDelete

func (r *RateLimitPolicy) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RateLimitPolicy) ValidatePolicies

func (r *RateLimitPolicy) ValidatePolicies() error

ValidatePolicies validates the policies in the RateLimitPolicy

func (*RateLimitPolicy) ValidateUpdate

func (r *RateLimitPolicy) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RateLimitPolicyList

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

func (in *RateLimitPolicyList) DeepCopy() *RateLimitPolicyList

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

func (*RateLimitPolicyList) DeepCopyInto

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

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RateLimitPolicySpec

type RateLimitPolicySpec struct {
	Default   *RateLimitAPIPolicy             `json:"default,omitempty"`
	Override  *RateLimitAPIPolicy             `json:"override,omitempty"`
	TargetRef gwapiv1b1.PolicyTargetReference `json:"targetRef,omitempty"`
}

RateLimitPolicySpec defines the desired state of RateLimitPolicy

func (*RateLimitPolicySpec) DeepCopy

func (in *RateLimitPolicySpec) DeepCopy() *RateLimitPolicySpec

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

func (*RateLimitPolicySpec) DeepCopyInto

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

type RateLimitPolicyStatus struct {
}

RateLimitPolicyStatus defines the observed state of RateLimitPolicy

func (*RateLimitPolicyStatus) DeepCopy

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

func (*RateLimitPolicyStatus) DeepCopyInto

func (in *RateLimitPolicyStatus) DeepCopyInto(out *RateLimitPolicyStatus)

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

type RefConfig

type RefConfig struct {
	// Name of the secret or configmap
	//
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`

	// Key of the secret or configmap
	//
	// +kubebuilder:validation:MinLength=1
	Key string `json:"key"`
}

RefConfig holds a config for a secret or a configmap

func (*RefConfig) DeepCopy

func (in *RefConfig) DeepCopy() *RefConfig

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

func (*RefConfig) DeepCopyInto

func (in *RefConfig) DeepCopyInto(out *RefConfig)

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

type ResolveRateLimit

type ResolveRateLimit struct {
	// RequestPerUnit is the number of requests allowed per unit time
	//
	RequestsPerUnit uint32 `json:"requestsPerUnit,omitempty"`

	// Unit is the unit of the requestsPerUnit
	//
	// +kubebuilder:validation:Enum=Minute;Hour;Day
	Unit string `json:"unit,omitempty"`
}

ResolveRateLimit is the rate limit value for the applied policy

func (*ResolveRateLimit) DeepCopy

func (in *ResolveRateLimit) DeepCopy() *ResolveRateLimit

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

func (*ResolveRateLimit) DeepCopyInto

func (in *ResolveRateLimit) DeepCopyInto(out *ResolveRateLimit)

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

type ResolveRateLimitAPIPolicy

type ResolveRateLimitAPIPolicy struct {
	API          ResolveRateLimit  `json:"api,omitempty"`
	Resources    []ResolveResource `json:"resourceList,omitempty"`
	Organization string            `json:"organization,omitempty"`
	BasePath     string            `json:"basePath,omitempty"`
	UUID         string            `json:"uuid,omitempty"`
	Environment  string            `json:"environment,omitempty"`
}

ResolveRateLimitAPIPolicy defines the desired state of Policy

func (*ResolveRateLimitAPIPolicy) DeepCopy

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

func (*ResolveRateLimitAPIPolicy) DeepCopyInto

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

type ResolveResource

type ResolveResource struct {
	ResourceRatelimit ResolveRateLimit        `json:"resourceRatelimit,omitempty"`
	Path              string                  `json:"path,omitempty"`
	PathMatchType     gwapiv1b1.PathMatchType `json:"pathMatchType,omitempty"`
	Method            string                  `json:"method,omitempty"`
}

ResolveResource defines the desired state of Resource

func (*ResolveResource) DeepCopy

func (in *ResolveResource) DeepCopy() *ResolveResource

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

func (*ResolveResource) DeepCopyInto

func (in *ResolveResource) DeepCopyInto(out *ResolveResource)

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

type ResolvedBackend

type ResolvedBackend struct {
	Backend        Backend
	Services       []Service
	Protocol       BackendProtocolType
	TLS            ResolvedTLSConfig
	Security       ResolvedSecurityConfig
	CircuitBreaker *CircuitBreaker
	Timeout        *Timeout
	Retry          *RetryConfig
	BasePath       string `json:"basePath"`
	HealthCheck    *HealthCheck
}

ResolvedBackend holds backend properties

func (*ResolvedBackend) DeepCopy

func (in *ResolvedBackend) DeepCopy() *ResolvedBackend

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

func (*ResolvedBackend) DeepCopyInto

func (in *ResolvedBackend) DeepCopyInto(out *ResolvedBackend)

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

type ResolvedBasicSecurityConfig

type ResolvedBasicSecurityConfig struct {
	Username string
	Password string
}

ResolvedBasicSecurityConfig defines resolved basic security configuration

func (*ResolvedBasicSecurityConfig) DeepCopy

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

func (*ResolvedBasicSecurityConfig) DeepCopyInto

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

type ResolvedJWKS

type ResolvedJWKS struct {
	URL string
	TLS *ResolvedTLSConfig
}

ResolvedJWKS holds the resolved properties of JWKS

func (*ResolvedJWKS) DeepCopy

func (in *ResolvedJWKS) DeepCopy() *ResolvedJWKS

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

func (*ResolvedJWKS) DeepCopyInto

func (in *ResolvedJWKS) DeepCopyInto(out *ResolvedJWKS)

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

type ResolvedJWTIssuer

type ResolvedJWTIssuer struct {
	Name                string
	Organization        string
	Issuer              string
	ConsumerKeyClaim    string
	ScopesClaim         string
	SignatureValidation ResolvedSignatureValidation
	ClaimMappings       map[string]string
	Environments        []string
}

ResolvedJWTIssuer holds the resolved properties of JWTIssuer

func (*ResolvedJWTIssuer) DeepCopy

func (in *ResolvedJWTIssuer) DeepCopy() *ResolvedJWTIssuer

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

func (*ResolvedJWTIssuer) DeepCopyInto

func (in *ResolvedJWTIssuer) DeepCopyInto(out *ResolvedJWTIssuer)

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

type ResolvedSecurityConfig

type ResolvedSecurityConfig struct {
	Type  string
	Basic ResolvedBasicSecurityConfig
}

ResolvedSecurityConfig defines enpoint resolved security configurations

func (*ResolvedSecurityConfig) DeepCopy

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

func (*ResolvedSecurityConfig) DeepCopyInto

func (in *ResolvedSecurityConfig) DeepCopyInto(out *ResolvedSecurityConfig)

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

type ResolvedSignatureValidation

type ResolvedSignatureValidation struct {
	JWKS        *ResolvedJWKS
	Certificate *ResolvedTLSConfig
}

ResolvedSignatureValidation holds the resolved properties of SignatureValidation

func (*ResolvedSignatureValidation) DeepCopy

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

func (*ResolvedSignatureValidation) DeepCopyInto

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

type ResolvedTLSConfig

type ResolvedTLSConfig struct {
	ResolvedCertificate string
	AllowedSANs         []string
}

ResolvedTLSConfig defines enpoint TLS configurations

func (*ResolvedTLSConfig) DeepCopy

func (in *ResolvedTLSConfig) DeepCopy() *ResolvedTLSConfig

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

func (*ResolvedTLSConfig) DeepCopyInto

func (in *ResolvedTLSConfig) DeepCopyInto(out *ResolvedTLSConfig)

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

type RetryConfig

type RetryConfig struct {

	// Count defines the number of retries.
	// If exceeded, TooEarly(425 response code) response will be sent to the client.
	//
	// +kubebuilder:default=1
	Count uint32 `json:"count"`

	// BaseIntervalMillis is exponential retry back off and it defines the base interval between retries in milliseconds.
	// maximum interval is 10 times of the BaseIntervalMillis
	//
	// +kubebuilder:default=25
	// +kubebuilder:validation:Minimum=1
	// +optional
	BaseIntervalMillis uint32 `json:"baseIntervalMillis"`

	// StatusCodes defines the list of status codes to retry
	//
	// +optional
	StatusCodes []uint32 `json:"statusCodes,omitempty"`
}

RetryConfig defines retry configurations

func (*RetryConfig) DeepCopy

func (in *RetryConfig) DeepCopy() *RetryConfig

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

func (*RetryConfig) DeepCopyInto

func (in *RetryConfig) DeepCopyInto(out *RetryConfig)

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

type Scope

type Scope struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ScopeSpec   `json:"spec,omitempty"`
	Status ScopeStatus `json:"status,omitempty"`
}

Scope is the Schema for the scopes API

func (*Scope) DeepCopy

func (in *Scope) DeepCopy() *Scope

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

func (*Scope) DeepCopyInto

func (in *Scope) DeepCopyInto(out *Scope)

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

func (*Scope) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ScopeList

type ScopeList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Scope `json:"items"`
}

ScopeList contains a list of Scope

func (*ScopeList) DeepCopy

func (in *ScopeList) DeepCopy() *ScopeList

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

func (*ScopeList) DeepCopyInto

func (in *ScopeList) DeepCopyInto(out *ScopeList)

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

func (*ScopeList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ScopeSpec

type ScopeSpec struct {

	// Name scope name
	//
	// +kubebuilder:validation:MinItems=1
	Names []string `json:"names,omitempty"`
}

ScopeSpec defines the desired state of Scope

func (*ScopeSpec) DeepCopy

func (in *ScopeSpec) DeepCopy() *ScopeSpec

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

func (*ScopeSpec) DeepCopyInto

func (in *ScopeSpec) DeepCopyInto(out *ScopeSpec)

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

type ScopeStatus

type ScopeStatus struct {
}

ScopeStatus defines the observed state of Scope

func (*ScopeStatus) DeepCopy

func (in *ScopeStatus) DeepCopy() *ScopeStatus

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

func (*ScopeStatus) DeepCopyInto

func (in *ScopeStatus) DeepCopyInto(out *ScopeStatus)

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

type SecretRef

type SecretRef struct {
	// Name of the secret
	//
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`

	// Namespace of the secret
	//
	// +kubebuilder:validation:MinLength=1
	UsernameKey string `json:"usernameKey"`

	// Key of the secret
	//
	// +kubebuilder:validation:MinLength=1
	PasswordKey string `json:"passwordKey"`
}

SecretRef to credentials

func (*SecretRef) DeepCopy

func (in *SecretRef) DeepCopy() *SecretRef

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

func (*SecretRef) DeepCopyInto

func (in *SecretRef) DeepCopyInto(out *SecretRef)

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

type SecurityConfig

type SecurityConfig struct {
	// Basic security configuration
	Basic *BasicSecurityConfig `json:"basic,omitempty"`
}

SecurityConfig defines enpoint security configurations

func (*SecurityConfig) DeepCopy

func (in *SecurityConfig) DeepCopy() *SecurityConfig

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

func (*SecurityConfig) DeepCopyInto

func (in *SecurityConfig) DeepCopyInto(out *SecurityConfig)

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

type Service

type Service struct {
	// Host is the hostname of the service
	//
	// +kubebuilder:validation:MinLength=1
	Host string `json:"host"`

	// Port of the service
	Port uint32 `json:"port"`
}

Service holds host and port information for the service

func (*Service) DeepCopy

func (in *Service) DeepCopy() *Service

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

func (*Service) DeepCopyInto

func (in *Service) DeepCopyInto(out *Service)

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

type SignatureValidation

type SignatureValidation struct {
	// JWKS denotes the JWKS endpoint information
	JWKS *JWKS `json:"jwks,omitempty"`
	// Certificate denotes the certificate information
	Certificate *CERTConfig `json:"certificate,omitempty"`
}

SignatureValidation defines the signature validation method

func (*SignatureValidation) DeepCopy

func (in *SignatureValidation) DeepCopy() *SignatureValidation

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

func (*SignatureValidation) DeepCopyInto

func (in *SignatureValidation) DeepCopyInto(out *SignatureValidation)

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

type TLSConfig

type TLSConfig struct {
	// CertificateInline is the Inline Certificate entry
	CertificateInline *string `json:"certificateInline,omitempty"`

	// SecretRef denotes the reference to the Secret that contains the Certificate
	SecretRef *RefConfig `json:"secretRef,omitempty"`

	// ConfigMapRef denotes the reference to the ConfigMap that contains the Certificate
	ConfigMapRef *RefConfig `json:"configMapRef,omitempty"`

	// AllowedCNs is the list of allowed Subject Alternative Names (SANs)
	//
	// +optional
	AllowedSANs []string `json:"allowedSANs,omitempty"`
}

TLSConfig defines enpoint TLS configurations

func (*TLSConfig) DeepCopy

func (in *TLSConfig) DeepCopy() *TLSConfig

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

func (*TLSConfig) DeepCopyInto

func (in *TLSConfig) DeepCopyInto(out *TLSConfig)

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

type TestConsoleKeyAuth

type TestConsoleKeyAuth struct {
	// Header is the header name used to pass the Test Console Key
	//
	// +kubebuilder:default:=internal-key
	// +optional
	// +kubebuilder:validation:MinLength=1
	Header string `json:"header,omitempty"`

	// SendTokenToUpstream is to specify whether the Test Console Key should be sent to the upstream
	//
	// +optional
	SendTokenToUpstream bool `json:"sendTokenToUpstream,omitempty"`
}

TestConsoleKeyAuth Test Console Key Authentication scheme details

func (*TestConsoleKeyAuth) DeepCopy

func (in *TestConsoleKeyAuth) DeepCopy() *TestConsoleKeyAuth

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

func (*TestConsoleKeyAuth) DeepCopyInto

func (in *TestConsoleKeyAuth) DeepCopyInto(out *TestConsoleKeyAuth)

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

type Timeout

type Timeout struct {
	// UpstreamResponseTimeout spans between the point at which the entire downstream request (i.e. end-of-stream) has been processed and
	// when the upstream response has been completely processed.
	// A value of 0 will disable the route’s timeout.
	//
	// +kubebuilder:default=15
	UpstreamResponseTimeout uint32 `json:"upstreamResponseTimeout"`

	// DownstreamRequestIdleTimeout bounds the amount of time the request's stream may be idle.
	// A value of 0 will completely disable the route's idle timeout.
	//
	// +kubebuilder:default=300
	// +optional
	DownstreamRequestIdleTimeout uint32 `json:"downstreamRequestIdleTimeout"`
}

Timeout defines the timeout configurations

func (*Timeout) DeepCopy

func (in *Timeout) DeepCopy() *Timeout

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

func (*Timeout) DeepCopyInto

func (in *Timeout) DeepCopyInto(out *Timeout)

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

type TokenIssuer

type TokenIssuer struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TokenIssuerSpec   `json:"spec,omitempty"`
	Status TokenIssuerStatus `json:"status,omitempty"`
}

TokenIssuer is the Schema for the tokenIssuer API

func (*TokenIssuer) ConvertFrom

func (src *TokenIssuer) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the Hub version (v1alpha2) to this version. src is v1alpha1.TokenIssuer and dst is v1alpha2.TokenIssuer.

func (*TokenIssuer) ConvertTo

func (src *TokenIssuer) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this TokenIssuer CR to the Hub version (v1alpha2). src is v1alpha1.TokenIssuer and dst is v1alpha2.TokenIssuer.

func (*TokenIssuer) DeepCopy

func (in *TokenIssuer) DeepCopy() *TokenIssuer

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

func (*TokenIssuer) DeepCopyInto

func (in *TokenIssuer) DeepCopyInto(out *TokenIssuer)

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

func (*TokenIssuer) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TokenIssuerList

type TokenIssuerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []TokenIssuer `json:"items"`
}

TokenIssuerList contains a list of TokenIssuer

func (*TokenIssuerList) DeepCopy

func (in *TokenIssuerList) DeepCopy() *TokenIssuerList

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

func (*TokenIssuerList) DeepCopyInto

func (in *TokenIssuerList) DeepCopyInto(out *TokenIssuerList)

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

func (*TokenIssuerList) DeepCopyObject

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

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TokenIssuerSpec

type TokenIssuerSpec struct {
	// Name is the unique name of the Token Issuer in
	// the Organization defined . "Organization/Name" can
	// be used to uniquely identify an Issuer.
	//
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`

	// Organization denotes the organization of the Token Issuer.
	//
	// +kubebuilder:validation:MinLength=1
	Organization string `json:"organization"`

	// Issuer denotes the issuer of the Token Issuer.
	//
	// +kubebuilder:validation:MinLength=1
	Issuer string `json:"issuer"`

	// ConsumerKeyClaim denotes the claim key of the consumer key.
	//
	// +kubebuilder:validation:MinLength=1
	ConsumerKeyClaim string `json:"consumerKeyClaim"`

	// ScopesClaim denotes the claim key of the scopes.
	//
	// +kubebuilder:validation:MinLength=1
	ScopesClaim string `json:"scopesClaim"`

	// SignatureValidation denotes the signature validation method of jwt
	SignatureValidation *SignatureValidation `json:"signatureValidation"`

	// ClaimMappings denotes the claim mappings of the jwt
	ClaimMappings *[]ClaimMapping `json:"claimMappings,omitempty"`

	// TargetRef denotes the reference to the which gateway it applies to
	TargetRef *gwapiv1b1.PolicyTargetReference `json:"targetRef,omitempty"`
}

TokenIssuerSpec defines the desired state of TokenIssuer

func (*TokenIssuerSpec) DeepCopy

func (in *TokenIssuerSpec) DeepCopy() *TokenIssuerSpec

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

func (*TokenIssuerSpec) DeepCopyInto

func (in *TokenIssuerSpec) DeepCopyInto(out *TokenIssuerSpec)

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

type TokenIssuerStatus

type TokenIssuerStatus struct {
}

TokenIssuerStatus defines the observed state of TokenIssuer

func (*TokenIssuerStatus) DeepCopy

func (in *TokenIssuerStatus) DeepCopy() *TokenIssuerStatus

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

func (*TokenIssuerStatus) DeepCopyInto

func (in *TokenIssuerStatus) DeepCopyInto(out *TokenIssuerStatus)

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