v1alpha2

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: 30 Imported by: 1

Documentation

Overview

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

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: "v1alpha2"}

	// 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) 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) Default

func (r *API) Default()

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

func (*API) Hub

func (*API) Hub()

Hub marks this type as a conversion hub.

func (*API) SetupWebhookWithManager

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

SetupWebhookWithManager creates a new webhook builder for API

func (*API) ValidateCreate

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

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

func (*API) ValidateDelete

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

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

func (*API) ValidateUpdate

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

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

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"`

	// JWT is to specify the JWT authentication scheme details
	//
	// +optional
	JWT JWT `json:"jwt,omitempty"`

	// MutualSSL is to specify the features and certificates for mutual SSL
	//
	// +optional
	MutualSSL *MutualSSLConfig `json:"mtls,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) 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) Hub

func (*APIPolicy) Hub()

Hub marks this type as a conversion hub.

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 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
	// 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;GraphQL
	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"`

	// Environment denotes the environment of the API.
	//
	// +optional
	// +nullable
	Environment string `json:"environment,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) 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) Default

func (r *Authentication) Default()

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

func (*Authentication) Hub

func (*Authentication) Hub()

Hub marks this type as a conversion hub.

func (*Authentication) SetupWebhookWithManager

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

SetupWebhookWithManager creates a new webhook builder for Authentication CRD

func (*Authentication) ValidateAuthentication

func (r *Authentication) ValidateAuthentication() error

ValidateAuthentication validates the Authentication

func (*Authentication) ValidateCreate

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

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

func (*Authentication) ValidateDelete

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

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

func (*Authentication) ValidateUpdate

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

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

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 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 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 {

	// Enabled is to enable CORs policy for the API.
	//
	// +kubebuilder:default=true
	// +optional
	Enabled bool `json:"enabled"`

	// 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 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 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 {
	// RouteRefs denotes the environment of the API.
	RouteRefs []string `json:"routeRefs"`
}

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 GQLRoute

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

	Spec   GQLRouteSpec   `json:"spec,omitempty"`
	Status GQLRouteStatus `json:"status,omitempty"`
}

GQLRoute is the Schema for the gqlroutes API

func (*GQLRoute) DeepCopy

func (in *GQLRoute) DeepCopy() *GQLRoute

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

func (*GQLRoute) DeepCopyInto

func (in *GQLRoute) DeepCopyInto(out *GQLRoute)

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

func (*GQLRoute) DeepCopyObject

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

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

type GQLRouteFilter

type GQLRouteFilter struct {
	// ExtensionRef is an optional, implementation-specific extension to the
	// "filter" behavior.  For example, resource "myroutefilter" in group
	// "networking.example.net"). ExtensionRef MUST NOT be used for core and
	// extended filters.
	//
	// Support: Implementation-specific
	//
	// +optional
	ExtensionRef *v1.LocalObjectReference `json:"extensionRef,omitempty"`
}

GQLRouteFilter defines the filter to be applied to a request.

func (*GQLRouteFilter) DeepCopy

func (in *GQLRouteFilter) DeepCopy() *GQLRouteFilter

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

func (*GQLRouteFilter) DeepCopyInto

func (in *GQLRouteFilter) DeepCopyInto(out *GQLRouteFilter)

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

type GQLRouteList

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

GQLRouteList contains a list of GQLRoute

func (*GQLRouteList) DeepCopy

func (in *GQLRouteList) DeepCopy() *GQLRouteList

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

func (*GQLRouteList) DeepCopyInto

func (in *GQLRouteList) DeepCopyInto(out *GQLRouteList)

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

func (*GQLRouteList) DeepCopyObject

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

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

type GQLRouteMatch

type GQLRouteMatch struct {
	// Type specifies GQL typematcher.
	// When specified, this route will be matched only if the request has the
	// specified method.
	//
	// Support: Extended
	//
	// +optional
	// +kubebuilder:validation:Default=QUERY
	Type *GQLType `json:"type,omitempty"`

	// Path specifies a GQL request resource matcher.
	Path *string `json:"path,omitempty"`
}

GQLRouteMatch defines the predicate used to match requests to a given action.

func (*GQLRouteMatch) DeepCopy

func (in *GQLRouteMatch) DeepCopy() *GQLRouteMatch

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

func (*GQLRouteMatch) DeepCopyInto

func (in *GQLRouteMatch) DeepCopyInto(out *GQLRouteMatch)

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

type GQLRouteRules

type GQLRouteRules struct {

	// Matches define conditions used for matching the rule against incoming
	// graphQL requests. Each match is independent, i.e. this rule will be matched
	// if **any** one of the matches is satisfied.
	Matches []GQLRouteMatch `json:"matches,omitempty"`

	// Filters define the filters that are applied to requests that match
	// this rule.
	//
	// +kubebuilder:validation:MaxItems=16
	Filters []GQLRouteFilter `json:"filters,omitempty"`
}

GQLRouteRules defines semantics for matching an GraphQL request based on conditions (matches), processing it (filters), and forwarding the request to an API object (backendRefs).

func (*GQLRouteRules) DeepCopy

func (in *GQLRouteRules) DeepCopy() *GQLRouteRules

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

func (*GQLRouteRules) DeepCopyInto

func (in *GQLRouteRules) DeepCopyInto(out *GQLRouteRules)

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

type GQLRouteSpec

type GQLRouteSpec struct {
	v1.CommonRouteSpec `json:",inline"`

	// Hostnames defines a set of hostname that should match against the HTTP Host
	// header to select a GQLRoute used to process the request.
	// +optional
	// +kubebuilder:validation:MaxItems=16
	Hostnames []v1.Hostname `json:"hostnames,omitempty"`

	// BackendRefs defines the backend(s) where matching requests should be
	// sent.
	BackendRefs []v1.HTTPBackendRef `json:"backendRefs,omitempty"`

	// Rules are a list of GraphQL resources, filters and actions.
	//
	// +optional
	// +kubebuilder:validation:MaxItems=16
	Rules []GQLRouteRules `json:"rules,omitempty"`
}

GQLRouteSpec defines the desired state of GQLRoute

func (*GQLRouteSpec) DeepCopy

func (in *GQLRouteSpec) DeepCopy() *GQLRouteSpec

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

func (*GQLRouteSpec) DeepCopyInto

func (in *GQLRouteSpec) DeepCopyInto(out *GQLRouteSpec)

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

type GQLRouteStatus

type GQLRouteStatus struct {
}

GQLRouteStatus defines the observed state of GQLRoute

func (*GQLRouteStatus) DeepCopy

func (in *GQLRouteStatus) DeepCopy() *GQLRouteStatus

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

func (*GQLRouteStatus) DeepCopyInto

func (in *GQLRouteStatus) DeepCopyInto(out *GQLRouteStatus)

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

type GQLType

type GQLType string

GQLType describes how to select a GQL request by matching the GQL Type. The value is expected in upper case.

Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

Unknown values here must result in the implementation setting the Accepted Condition for the Route to `status: False`, with a Reason of `UnsupportedValue`.

+kubebuilder:validation:Enum=QUERY;MUTATION

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 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 JWT

type JWT struct {

	// Disabled is to disable JWT authentication
	//
	// +kubebuilder:default=true
	// +optional
	Disabled *bool `json:"disabled"`

	// Header is the header name used to pass the JWT
	//
	// +kubebuilder:default:=internal-key
	// +optional
	// +kubebuilder:validation:MinLength=1
	Header string `json:"header,omitempty"`

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

	// Audience who can invoke a corresponding API
	//
	// +optional
	Audience []string `json:"audience,omitempty"`
}

JWT Json Web Token Authentication scheme details

func (*JWT) DeepCopy

func (in *JWT) DeepCopy() *JWT

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

func (*JWT) DeepCopyInto

func (in *JWT) DeepCopyInto(out *JWT)

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

type MutualSSL

type MutualSSL struct {
	Disabled           bool
	Required           string
	ClientCertificates []string
}

MutualSSL defines the mutual SSL configurations for an API

func (*MutualSSL) DeepCopy

func (in *MutualSSL) DeepCopy() *MutualSSL

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

func (*MutualSSL) DeepCopyInto

func (in *MutualSSL) DeepCopyInto(out *MutualSSL)

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

type MutualSSLConfig

type MutualSSLConfig struct {

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

	// Required indicates whether mutualSSL is mandatory or optional
	// +kubebuilder:validation:Enum=mandatory;optional
	// +kubebuilder:default=optional
	// +optional
	Required string `json:"required"`

	// CertificatesInline is the Inline Certificate entry
	CertificatesInline []*string `json:"certificatesInline,omitempty"`

	// SecretRefs denotes the reference to the Secret that contains the Certificate
	SecretRefs []*RefConfig `json:"secretRefs,omitempty"`

	// ConfigMapRefs denotes the reference to the ConfigMap that contains the Certificate
	ConfigMapRefs []*RefConfig `json:"configMapRefs,omitempty"`
}

MutualSSLConfig scheme type and details

func (*MutualSSLConfig) DeepCopy

func (in *MutualSSLConfig) DeepCopy() *MutualSSLConfig

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

func (*MutualSSLConfig) DeepCopyInto

func (in *MutualSSLConfig) DeepCopyInto(out *MutualSSLConfig)

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

type Oauth2Auth

type Oauth2Auth struct {

	// Required indicates whether OAuth2 is mandatory or optional
	// +kubebuilder:validation:Enum=mandatory;optional
	// +kubebuilder:default=mandatory
	// +optional
	Required string `json:"required,omitempty"`

	// 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"`

	// SubscriptionValidation denotes whether subscription validation is enabled for the API
	//
	// +kubebuilder:default:=false
	// +optional
	SubscriptionValidation bool `json:"subscriptionValidation"`
}

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 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 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 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 tokenissuers API

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.

func (*TokenIssuer) Hub

func (*TokenIssuer) Hub()

Hub marks this type as a conversion hub.

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"`

	// Environments denotes the environments that are applicable for the token issuer.
	//
	// +optional
	// +nullable
	Environments []string `json:"environments,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