v1alpha1

package
v0.0.22 Latest Latest
Warning

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

Go to latest
Published: Sep 27, 2024 License: MIT Imports: 8 Imported by: 13

Documentation

Overview

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

Index

Constants

View Source
const (
	// ControlPlaneRefKonnectID is the type for the KonnectID ControlPlaneRef.
	// It is used to reference a Konnect Control Plane entity by its ID on the Konnect platform.
	ControlPlaneRefKonnectID = "konnectID"
	// ControlPlaneRefKonnectNamespacedRef is the type for the KonnectNamespacedRef ControlPlaneRef.
	// It is used to reference a Konnect Control Plane entity inside the cluster
	// using a namespaced reference.
	ControlPlaneRefKonnectNamespacedRef = "konnectNamespacedRef"
)
View Source
const (
	IngressClassParametersKind = "IngressClassParameters"
)
View Source
const (
	KongCustomEntityKind = "KongCustomEntity"
)
View Source
const (
	KongVaultKind = "KongVault"
)
View Source
const (
	// ServiceRefNamespacedRef is a namespaced reference to a KongService.
	ServiceRefNamespacedRef = "namespacedRef"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "configuration.konghq.com", Version: "v1alpha1"}

	// SchemeGroupVersion is a convenience var for generated clientsets.
	SchemeGroupVersion = GroupVersion

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

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource.

Types

type ControlPlaneRef

type ControlPlaneRef struct {
	// Type can be one of:
	// - konnectID
	// - konnectNamespacedRef
	// +kubebuilder:validation:Enum=konnectID;konnectNamespacedRef
	Type string `json:"type"`

	// KonnectID is the schema for the KonnectID type.
	// This field is required when the Type is konnectID.
	// +optional
	KonnectID *string `json:"konnectID,omitempty"`

	// KonnectNamespacedRef is a reference to a Konnect Control Plane entity inside the cluster.
	// It contains the name of the Konnect Control Plane.
	// This field is required when the Type is konnectNamespacedRef.
	// +optional
	KonnectNamespacedRef *KonnectNamespacedRef `json:"konnectNamespacedRef,omitempty"`
}

ControlPlaneRef is the schema for the ControlPlaneRef type. It is used to reference a Control Plane entity. +kubebuilder:validation:XValidation:rule="self.type == 'konnectNamespacedRef' ? has(self.konnectNamespacedRef) : true", message="when type is konnectNamespacedRef, konnectNamespacedRef must be set" +kubebuilder:validation:XValidation:rule="self.type == 'konnectID' ? has(self.konnectID) : true", message="when type is konnectID, konnectID must be set"

func (*ControlPlaneRef) DeepCopy

func (in *ControlPlaneRef) DeepCopy() *ControlPlaneRef

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

func (*ControlPlaneRef) DeepCopyInto

func (in *ControlPlaneRef) DeepCopyInto(out *ControlPlaneRef)

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

type ControllerReference

type ControllerReference struct {
	// Group is the group of referent.
	// It should be empty if the referent is in "core" group (like pod).
	Group *Group `json:"group,omitempty"`
	// Kind is the kind of the referent.
	// By default the nil kind means kind Pod.
	Kind *Kind `json:"kind,omitempty"`
	// Namespace is the namespace of the referent.
	// It should be empty if the referent is cluster scoped.
	Namespace *Namespace `json:"namespace,omitempty"`
	// Name is the name of the referent.
	Name ObjectName `json:"name"`
}

func (*ControllerReference) DeepCopy

func (in *ControllerReference) DeepCopy() *ControllerReference

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

func (*ControllerReference) DeepCopyInto

func (in *ControllerReference) DeepCopyInto(out *ControllerReference)

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

type Group

type Group string

Group refers to a Kubernetes Group. It must either be an empty string or a RFC 1123 subdomain. +kubebuilder:validation:MaxLength=253 +kubebuilder:validation:Pattern=`^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$`

type IngressClassParameters

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

	// Spec is the IngressClassParameters specification.
	Spec IngressClassParametersSpec `json:"spec,omitempty"`
}

IngressClassParameters is the Schema for the IngressClassParameters API.

func (*IngressClassParameters) DeepCopy

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

func (*IngressClassParameters) DeepCopyInto

func (in *IngressClassParameters) DeepCopyInto(out *IngressClassParameters)

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

func (*IngressClassParameters) DeepCopyObject

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

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

type IngressClassParametersList

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

IngressClassParametersList contains a list of IngressClassParameters.

func (*IngressClassParametersList) DeepCopy

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

func (*IngressClassParametersList) DeepCopyInto

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

func (*IngressClassParametersList) DeepCopyObject

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

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

type IngressClassParametersSpec

type IngressClassParametersSpec struct {
	// Offload load-balancing to kube-proxy or sidecar.
	// +kubebuilder:default:=false
	ServiceUpstream bool `json:"serviceUpstream,omitempty"`

	// EnableLegacyRegexDetection automatically detects if ImplementationSpecific Ingress paths are regular expression
	// paths using the legacy 2.x heuristic. The controller adds the "~" prefix to those paths if the Kong version is
	// 3.0 or higher.
	// +kubebuilder:default:=false
	EnableLegacyRegexDetection bool `json:"enableLegacyRegexDetection,omitempty"`
}

func (*IngressClassParametersSpec) DeepCopy

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

func (*IngressClassParametersSpec) DeepCopyInto

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

type KeySetNamespacedRef added in v0.0.16

type KeySetNamespacedRef struct {
	// Name is the name of the KeySet object.
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
}

KeySetNamespacedRef is the schema for the KeySetNamespacedRef type.

func (*KeySetNamespacedRef) DeepCopy added in v0.0.16

func (in *KeySetNamespacedRef) DeepCopy() *KeySetNamespacedRef

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

func (*KeySetNamespacedRef) DeepCopyInto added in v0.0.16

func (in *KeySetNamespacedRef) DeepCopyInto(out *KeySetNamespacedRef)

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

type KeySetRef added in v0.0.16

type KeySetRef struct {
	// Type defines type of the KeySet object reference. It can be one of:
	// - konnectID
	// - namespacedRef
	Type KeySetRefType `json:"type"`

	// KonnectID is the schema for the KonnectID type.
	// This field is required when the Type is konnectID.
	// +optional
	KonnectID *string `json:"konnectID,omitempty"`

	// NamespacedRef is a reference to a KeySet entity inside the cluster.
	// This field is required when the Type is namespacedRef.
	// +optional
	NamespacedRef *KeySetNamespacedRef `json:"namespacedRef,omitempty"`
}

KeySetRef is the schema for the KeySetRef type. It is used to reference a KeySet entity. +kubebuilder:validation:XValidation:rule="self.type == 'namespacedRef' ? has(self.namespacedRef) : true", message="when type is namespacedRef, namespacedRef must be set" +kubebuilder:validation:XValidation:rule="self.type == 'konnectID' ? has(self.konnectID) : true", message="when type is konnectID, konnectID must be set"

func (*KeySetRef) DeepCopy added in v0.0.16

func (in *KeySetRef) DeepCopy() *KeySetRef

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

func (*KeySetRef) DeepCopyInto added in v0.0.16

func (in *KeySetRef) DeepCopyInto(out *KeySetRef)

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

type KeySetRefType added in v0.0.16

type KeySetRefType string

KeySetRefType is the enum type for the KeySetRef. +kubebuilder:validation:Enum=konnectID;namespacedRef

const (
	// KeySetRefKonnectID is the type for the KonnectID KeySetRef.
	// It is used to reference a KeySet entity by its ID on the Konnect platform.
	KeySetRefKonnectID KeySetRefType = "konnectID"

	// KeySetRefNamespacedRef is the type for the KeySetRef.
	// It is used to reference a KeySet entity inside the cluster
	// using a namespaced reference.
	KeySetRefNamespacedRef KeySetRefType = "namespacedRef"
)

type Kind

type Kind string

Kind refers to a Kubernetes kind. +kubebuilder:validation:MinLength=1 +kubebuilder:validation:MaxLength=63 +kubebuilder:validation:Pattern=`^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$`

type KongCACertificate added in v0.0.14

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

	Spec KongCACertificateSpec `json:"spec"`

	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongCACertificateStatus `json:"status,omitempty"`
}

KongCACertificate is the schema for CACertificate API which defines a Kong CA Certificate.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="!has(oldSelf.spec.controlPlaneRef) || has(self.spec.controlPlaneRef)", message="controlPlaneRef is required once set" +kubebuilder:validation:XValidation:rule="!has(self.spec.controlPlaneRef.konnectNamespacedRef) ? true : !has(self.spec.controlPlaneRef.konnectNamespacedRef.__namespace__)", message="spec.controlPlaneRef cannot specify namespace for namespaced resource" +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.controlPlaneRef == self.spec.controlPlaneRef", message="spec.controlPlaneRef is immutable when an entity is already Programmed"

func (*KongCACertificate) DeepCopy added in v0.0.14

func (in *KongCACertificate) DeepCopy() *KongCACertificate

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

func (*KongCACertificate) DeepCopyInto added in v0.0.14

func (in *KongCACertificate) DeepCopyInto(out *KongCACertificate)

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

func (*KongCACertificate) DeepCopyObject added in v0.0.14

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

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

func (*KongCACertificate) GetConditions added in v0.0.14

func (obj *KongCACertificate) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongCACertificate) GetControlPlaneID added in v0.0.14

func (obj *KongCACertificate) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongCACertificate status.

func (*KongCACertificate) GetKonnectID added in v0.0.14

func (obj *KongCACertificate) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongCACertificate status.

func (*KongCACertificate) GetKonnectStatus added in v0.0.14

func (obj *KongCACertificate) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongCACertificate status.

func (KongCACertificate) GetTypeName added in v0.0.14

func (obj KongCACertificate) GetTypeName() string

GetTypeName returns the KongCACertificate Kind name

func (*KongCACertificate) SetConditions added in v0.0.14

func (obj *KongCACertificate) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongCACertificate) SetControlPlaneID added in v0.0.14

func (obj *KongCACertificate) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongCACertificate status.

func (*KongCACertificate) SetKonnectID added in v0.0.14

func (obj *KongCACertificate) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongCACertificate status.

type KongCACertificateAPISpec added in v0.0.14

type KongCACertificateAPISpec struct {
	// Cert is the PEM-encoded CA certificate.
	// +kubebuilder:validation:Required
	Cert string `json:"cert,omitempty"`
	// Tags is an optional set of tags applied to the certificate.
	Tags []string `json:"tags,omitempty"`
}

KongCACertificateAPISpec contains the API specification for the KongCACertificate.

func (*KongCACertificateAPISpec) DeepCopy added in v0.0.14

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

func (*KongCACertificateAPISpec) DeepCopyInto added in v0.0.14

func (in *KongCACertificateAPISpec) DeepCopyInto(out *KongCACertificateAPISpec)

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

type KongCACertificateList added in v0.0.14

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

KongCACertificateList contains a list of KongCACertificates. +kubebuilder:object:root=true

func (*KongCACertificateList) DeepCopy added in v0.0.14

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

func (*KongCACertificateList) DeepCopyInto added in v0.0.14

func (in *KongCACertificateList) DeepCopyInto(out *KongCACertificateList)

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

func (*KongCACertificateList) DeepCopyObject added in v0.0.14

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

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

type KongCACertificateSpec added in v0.0.14

type KongCACertificateSpec struct {
	// ControlPlaneRef references the Konnect Control Plane that this KongCACertificate should be created in.
	ControlPlaneRef          *ControlPlaneRef `json:"controlPlaneRef,omitempty"`
	KongCACertificateAPISpec `json:",inline"`
}

KongCACertificateSpec contains the specification for the KongCACertificate.

func (*KongCACertificateSpec) DeepCopy added in v0.0.14

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

func (*KongCACertificateSpec) DeepCopyInto added in v0.0.14

func (in *KongCACertificateSpec) DeepCopyInto(out *KongCACertificateSpec)

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

type KongCACertificateStatus added in v0.0.14

type KongCACertificateStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneRef `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

func (*KongCACertificateStatus) DeepCopy added in v0.0.14

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

func (*KongCACertificateStatus) DeepCopyInto added in v0.0.14

func (in *KongCACertificateStatus) DeepCopyInto(out *KongCACertificateStatus)

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

type KongCertificate added in v0.0.20

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

	Spec KongCertificateSpec `json:"spec"`

	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongCertificateStatus `json:"status,omitempty"`
}

KongCertificate is the schema for Certificate API which defines a Kong Certificate.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="!has(oldSelf.spec.controlPlaneRef) || has(self.spec.controlPlaneRef)", message="controlPlaneRef is required once set" +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.controlPlaneRef == self.spec.controlPlaneRef", message="spec.controlPlaneRef is immutable when an entity is already Programmed"

func (*KongCertificate) DeepCopy added in v0.0.20

func (in *KongCertificate) DeepCopy() *KongCertificate

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

func (*KongCertificate) DeepCopyInto added in v0.0.20

func (in *KongCertificate) DeepCopyInto(out *KongCertificate)

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

func (*KongCertificate) DeepCopyObject added in v0.0.20

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

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

func (*KongCertificate) GetConditions added in v0.0.20

func (obj *KongCertificate) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongCertificate) GetControlPlaneID added in v0.0.20

func (obj *KongCertificate) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongCertificate status.

func (*KongCertificate) GetKonnectID added in v0.0.20

func (obj *KongCertificate) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongCertificate status.

func (*KongCertificate) GetKonnectStatus added in v0.0.20

func (obj *KongCertificate) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongCertificate status.

func (KongCertificate) GetTypeName added in v0.0.20

func (obj KongCertificate) GetTypeName() string

GetTypeName returns the KongCertificate Kind name

func (*KongCertificate) SetConditions added in v0.0.20

func (obj *KongCertificate) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongCertificate) SetControlPlaneID added in v0.0.20

func (obj *KongCertificate) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongCertificate status.

func (*KongCertificate) SetKonnectID added in v0.0.20

func (obj *KongCertificate) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongCertificate status.

type KongCertificateAPISpec added in v0.0.20

type KongCertificateAPISpec struct {
	// Cert is the PEM-encoded certificate.
	// +kubebuilder:validation:Required
	Cert string `json:"cert,omitempty"`
	// CertAlt is the PEM-encoded certificate.
	// This should only be set if you have both RSA and ECDSA types of
	// certificate available and would like Kong to prefer serving using ECDSA certs
	// when client advertises support for it.
	CertAlt string `json:"cert_alt,omitempty"`
	// Key is the PEM-encoded private key.
	// +kubebuilder:validation:Required
	Key string `json:"key,omitempty"`
	// KeyAlt is the PEM-encoded private key.
	// This should only be set if you have both RSA and ECDSA types of
	// certificate available and would like Kong to prefer serving using ECDSA certs
	// when client advertises support for it.
	KeyAlt string `json:"key_alt,omitempty"`

	// Tags is an optional set of tags applied to the certificate.
	Tags []string `json:"tags,omitempty"`
}

KongCertificateAPISpec contains the API specification for the KongCertificate.

func (*KongCertificateAPISpec) DeepCopy added in v0.0.20

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

func (*KongCertificateAPISpec) DeepCopyInto added in v0.0.20

func (in *KongCertificateAPISpec) DeepCopyInto(out *KongCertificateAPISpec)

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

type KongCertificateList added in v0.0.20

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

KongCertificateList contains a list of KongCertificates. +kubebuilder:object:root=true

func (*KongCertificateList) DeepCopy added in v0.0.20

func (in *KongCertificateList) DeepCopy() *KongCertificateList

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

func (*KongCertificateList) DeepCopyInto added in v0.0.20

func (in *KongCertificateList) DeepCopyInto(out *KongCertificateList)

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

func (*KongCertificateList) DeepCopyObject added in v0.0.20

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

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

type KongCertificateSpec added in v0.0.20

type KongCertificateSpec struct {
	// ControlPlaneRef references the Konnect Control Plane that this KongCertificate should be created in.
	ControlPlaneRef        *ControlPlaneRef `json:"controlPlaneRef,omitempty"`
	KongCertificateAPISpec `json:",inline"`
}

KongCertificateSpec contains the specification for the KongCertificate.

func (*KongCertificateSpec) DeepCopy added in v0.0.20

func (in *KongCertificateSpec) DeepCopy() *KongCertificateSpec

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

func (*KongCertificateSpec) DeepCopyInto added in v0.0.20

func (in *KongCertificateSpec) DeepCopyInto(out *KongCertificateSpec)

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

type KongCertificateStatus added in v0.0.20

type KongCertificateStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneRef `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

func (*KongCertificateStatus) DeepCopy added in v0.0.20

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

func (*KongCertificateStatus) DeepCopyInto added in v0.0.20

func (in *KongCertificateStatus) DeepCopyInto(out *KongCertificateStatus)

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

type KongCredentialACL added in v0.0.22

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

	// Spec contains the ACL credential specification.
	Spec KongCredentialACLSpec `json:"spec"`

	// Status contains the ACL credential status.
	//
	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongCredentialACLStatus `json:"status,omitempty"`
}

KongCredentialACL is the schema for ACL credentials API which defines a ACL credential for consumers.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.consumerRef == self.spec.consumerRef",message="spec.consumerRef is immutable when an entity is already Programmed"

func (*KongCredentialACL) DeepCopy added in v0.0.22

func (in *KongCredentialACL) DeepCopy() *KongCredentialACL

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

func (*KongCredentialACL) DeepCopyInto added in v0.0.22

func (in *KongCredentialACL) DeepCopyInto(out *KongCredentialACL)

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

func (*KongCredentialACL) DeepCopyObject added in v0.0.22

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

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

func (*KongCredentialACL) GetConditions added in v0.0.22

func (obj *KongCredentialACL) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongCredentialACL) GetControlPlaneID added in v0.0.22

func (obj *KongCredentialACL) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongCredentialACL status.

func (*KongCredentialACL) GetKonnectID added in v0.0.22

func (obj *KongCredentialACL) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongCredentialACL status.

func (*KongCredentialACL) GetKonnectStatus added in v0.0.22

func (obj *KongCredentialACL) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongCredentialACL status.

func (KongCredentialACL) GetTypeName added in v0.0.22

func (obj KongCredentialACL) GetTypeName() string

GetTypeName returns the KongCredentialACL Kind name

func (*KongCredentialACL) SetConditions added in v0.0.22

func (obj *KongCredentialACL) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongCredentialACL) SetControlPlaneID added in v0.0.22

func (obj *KongCredentialACL) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongCredentialACL status.

func (*KongCredentialACL) SetKonnectID added in v0.0.22

func (obj *KongCredentialACL) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongCredentialACL status.

type KongCredentialACLAPISpec added in v0.0.22

type KongCredentialACLAPISpec struct {
	// Group is the name for the ACL credential.
	//
	// +kubebuilder:validation:Required
	Group string `json:"group"`

	// Tags is a list of tags for the ACL credential.
	Tags []string `json:"tags,omitempty"`
}

KongCredentialACLAPISpec defines specification of an ACL credential.

func (*KongCredentialACLAPISpec) DeepCopy added in v0.0.22

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

func (*KongCredentialACLAPISpec) DeepCopyInto added in v0.0.22

func (in *KongCredentialACLAPISpec) DeepCopyInto(out *KongCredentialACLAPISpec)

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

type KongCredentialACLList added in v0.0.22

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

KongCredentialACLList contains a list of ACL credentials.

func (*KongCredentialACLList) DeepCopy added in v0.0.22

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

func (*KongCredentialACLList) DeepCopyInto added in v0.0.22

func (in *KongCredentialACLList) DeepCopyInto(out *KongCredentialACLList)

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

func (*KongCredentialACLList) DeepCopyObject added in v0.0.22

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

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

type KongCredentialACLSpec added in v0.0.22

type KongCredentialACLSpec struct {
	// ConsumerRef is a reference to a Consumer this KongCredentialACL is associated with.
	//
	// +kubebuilder:validation:Required
	ConsumerRef corev1.LocalObjectReference `json:"consumerRef"`

	KongCredentialACLAPISpec `json:",inline"`
}

KongCredentialACLSpec defines specification of Kong ACL.

func (*KongCredentialACLSpec) DeepCopy added in v0.0.22

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

func (*KongCredentialACLSpec) DeepCopyInto added in v0.0.22

func (in *KongCredentialACLSpec) DeepCopyInto(out *KongCredentialACLSpec)

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

type KongCredentialACLStatus added in v0.0.22

type KongCredentialACLStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneAndConsumerRefs `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongCredentialACLStatus represents the current status of the ACL credential resource.

func (*KongCredentialACLStatus) DeepCopy added in v0.0.22

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

func (*KongCredentialACLStatus) DeepCopyInto added in v0.0.22

func (in *KongCredentialACLStatus) DeepCopyInto(out *KongCredentialACLStatus)

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

type KongCredentialAPIKey added in v0.0.17

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

	// Spec contains the API Key credential specification.
	Spec KongCredentialAPIKeySpec `json:"spec"`

	// Status contains the API Key credential status.
	//
	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongCredentialAPIKeyStatus `json:"status,omitempty"`
}

KongCredentialAPIKey is the schema for API key credentials API which defines a API key credential for consumers.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.consumerRef == self.spec.consumerRef",message="spec.consumerRef is immutable when an entity is already Programmed"

func (*KongCredentialAPIKey) DeepCopy added in v0.0.17

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

func (*KongCredentialAPIKey) DeepCopyInto added in v0.0.17

func (in *KongCredentialAPIKey) DeepCopyInto(out *KongCredentialAPIKey)

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

func (*KongCredentialAPIKey) DeepCopyObject added in v0.0.17

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

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

func (*KongCredentialAPIKey) GetConditions added in v0.0.17

func (obj *KongCredentialAPIKey) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongCredentialAPIKey) GetControlPlaneID added in v0.0.17

func (obj *KongCredentialAPIKey) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongCredentialAPIKey status.

func (*KongCredentialAPIKey) GetKonnectID added in v0.0.17

func (obj *KongCredentialAPIKey) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongCredentialAPIKey status.

func (*KongCredentialAPIKey) GetKonnectStatus added in v0.0.17

func (obj *KongCredentialAPIKey) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongCredentialAPIKey status.

func (KongCredentialAPIKey) GetTypeName added in v0.0.17

func (obj KongCredentialAPIKey) GetTypeName() string

GetTypeName returns the KongCredentialAPIKey Kind name

func (*KongCredentialAPIKey) SetConditions added in v0.0.17

func (obj *KongCredentialAPIKey) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongCredentialAPIKey) SetControlPlaneID added in v0.0.17

func (obj *KongCredentialAPIKey) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongCredentialAPIKey status.

func (*KongCredentialAPIKey) SetKonnectID added in v0.0.17

func (obj *KongCredentialAPIKey) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongCredentialAPIKey status.

type KongCredentialAPIKeyAPISpec added in v0.0.17

type KongCredentialAPIKeyAPISpec struct {
	// Key is the key for the API Key credential.
	//
	// +kubebuilder:validation:Required
	Key string `json:"key"`

	// Tags is a list of tags for the API Key credential.
	Tags []string `json:"tags,omitempty"`
}

KongCredentialAPIKeyAPISpec defines specification of an API Key credential.

func (*KongCredentialAPIKeyAPISpec) DeepCopy added in v0.0.17

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

func (*KongCredentialAPIKeyAPISpec) DeepCopyInto added in v0.0.17

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

type KongCredentialAPIKeyList added in v0.0.17

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

KongCredentialAPIKeyList contains a list of API Key credentials.

func (*KongCredentialAPIKeyList) DeepCopy added in v0.0.17

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

func (*KongCredentialAPIKeyList) DeepCopyInto added in v0.0.17

func (in *KongCredentialAPIKeyList) DeepCopyInto(out *KongCredentialAPIKeyList)

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

func (*KongCredentialAPIKeyList) DeepCopyObject added in v0.0.17

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

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

type KongCredentialAPIKeySpec added in v0.0.17

type KongCredentialAPIKeySpec struct {
	// ConsumerRef is a reference to a Consumer this KongCredentialAPIKey is associated with.
	//
	// +kubebuilder:validation:Required
	ConsumerRef corev1.LocalObjectReference `json:"consumerRef"`

	KongCredentialAPIKeyAPISpec `json:",inline"`
}

KongCredentialAPIKeySpec defines specification of a Kong Route.

func (*KongCredentialAPIKeySpec) DeepCopy added in v0.0.17

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

func (*KongCredentialAPIKeySpec) DeepCopyInto added in v0.0.17

func (in *KongCredentialAPIKeySpec) DeepCopyInto(out *KongCredentialAPIKeySpec)

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

type KongCredentialAPIKeyStatus added in v0.0.17

type KongCredentialAPIKeyStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneAndConsumerRefs `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongCredentialAPIKeyStatus represents the current status of the API Key credential resource.

func (*KongCredentialAPIKeyStatus) DeepCopy added in v0.0.17

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

func (*KongCredentialAPIKeyStatus) DeepCopyInto added in v0.0.17

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

type KongCredentialBasicAuth added in v0.0.16

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

	// Spec contains the BasicAuth credential specification.
	Spec KongCredentialBasicAuthSpec `json:"spec"`

	// Status contains the BasicAuth credential status.
	//
	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongCredentialBasicAuthStatus `json:"status,omitempty"`
}

KongCredentialBasicAuth is the schema for BasicAuth credentials API which defines a BasicAuth credential for consumers.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.consumerRef == self.spec.consumerRef",message="spec.consumerRef is immutable when an entity is already Programmed"

func (*KongCredentialBasicAuth) DeepCopy added in v0.0.16

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

func (*KongCredentialBasicAuth) DeepCopyInto added in v0.0.16

func (in *KongCredentialBasicAuth) DeepCopyInto(out *KongCredentialBasicAuth)

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

func (*KongCredentialBasicAuth) DeepCopyObject added in v0.0.16

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

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

func (*KongCredentialBasicAuth) GetConditions added in v0.0.16

func (obj *KongCredentialBasicAuth) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongCredentialBasicAuth) GetControlPlaneID added in v0.0.16

func (obj *KongCredentialBasicAuth) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongCredentialBasicAuth status.

func (*KongCredentialBasicAuth) GetKonnectID added in v0.0.16

func (obj *KongCredentialBasicAuth) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongCredentialBasicAuth status.

func (*KongCredentialBasicAuth) GetKonnectStatus added in v0.0.16

GetKonnectStatus returns the Konnect status contained in the KongCredentialBasicAuth status.

func (KongCredentialBasicAuth) GetTypeName added in v0.0.16

func (obj KongCredentialBasicAuth) GetTypeName() string

GetTypeName returns the KongCredentialBasicAuth Kind name

func (*KongCredentialBasicAuth) SetConditions added in v0.0.16

func (obj *KongCredentialBasicAuth) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongCredentialBasicAuth) SetControlPlaneID added in v0.0.16

func (obj *KongCredentialBasicAuth) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongCredentialBasicAuth status.

func (*KongCredentialBasicAuth) SetKonnectID added in v0.0.16

func (obj *KongCredentialBasicAuth) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongCredentialBasicAuth status.

type KongCredentialBasicAuthAPISpec added in v0.0.16

type KongCredentialBasicAuthAPISpec struct {
	// Password is the password for the BasicAuth credential.
	//
	// +kubebuilder:validation:Required
	Password string `json:"password"`

	// Tags is a list of tags for the BasicAuth credential.
	Tags []string `json:"tags,omitempty"`

	// Username is the username for the BasicAuth credential.
	//
	// +kubebuilder:validation:Required
	Username string `json:"username"`
}

KongCredentialBasicAuthAPISpec defines specification of a BasicAuth credential.

func (*KongCredentialBasicAuthAPISpec) DeepCopy added in v0.0.16

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

func (*KongCredentialBasicAuthAPISpec) DeepCopyInto added in v0.0.16

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

type KongCredentialBasicAuthList added in v0.0.16

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

KongCredentialBasicAuthList contains a list of BasicAuth credentials.

func (*KongCredentialBasicAuthList) DeepCopy added in v0.0.16

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

func (*KongCredentialBasicAuthList) DeepCopyInto added in v0.0.16

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

func (*KongCredentialBasicAuthList) DeepCopyObject added in v0.0.16

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

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

type KongCredentialBasicAuthSpec added in v0.0.16

type KongCredentialBasicAuthSpec struct {
	// ConsumerRef is a reference to a Consumer this CredentialBasicAuth is associated with.
	//
	// +kubebuilder:validation:Required
	ConsumerRef corev1.LocalObjectReference `json:"consumerRef"`

	KongCredentialBasicAuthAPISpec `json:",inline"`
}

KongCredentialBasicAuthSpec defines specification of a Kong Route.

func (*KongCredentialBasicAuthSpec) DeepCopy added in v0.0.16

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

func (*KongCredentialBasicAuthSpec) DeepCopyInto added in v0.0.16

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

type KongCredentialBasicAuthStatus added in v0.0.16

type KongCredentialBasicAuthStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneAndConsumerRefs `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongCredentialBasicAuthStatus represents the current status of the BasicAuth credential resource.

func (*KongCredentialBasicAuthStatus) DeepCopy added in v0.0.16

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

func (*KongCredentialBasicAuthStatus) DeepCopyInto added in v0.0.16

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

type KongCustomEntity

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

	Spec KongCustomEntitySpec `json:"spec"`

	// Status stores the reconciling status of the resource.
	Status KongCustomEntityStatus `json:"status,omitempty"`
}

KongCustomEntity defines a "custom" Kong entity that KIC cannot support the entity type directly.

func (*KongCustomEntity) DeepCopy

func (in *KongCustomEntity) DeepCopy() *KongCustomEntity

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

func (*KongCustomEntity) DeepCopyInto

func (in *KongCustomEntity) DeepCopyInto(out *KongCustomEntity)

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

func (*KongCustomEntity) DeepCopyObject

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

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

type KongCustomEntityList

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

KongCustomEntityList contains a list of KongCustomEntity.

func (*KongCustomEntityList) DeepCopy

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

func (*KongCustomEntityList) DeepCopyInto

func (in *KongCustomEntityList) DeepCopyInto(out *KongCustomEntityList)

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

func (*KongCustomEntityList) DeepCopyObject

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

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

type KongCustomEntitySpec

type KongCustomEntitySpec struct {
	// EntityType is the type of the Kong entity. The type is used in generating declarative configuration.
	EntityType string `json:"type"`
	// Fields defines the fields of the Kong entity itself.
	Fields apiextensionsv1.JSON `json:"fields"`
	// ControllerName specifies the controller that should reconcile it, like ingress class.
	ControllerName string `json:"controllerName"`

	// ParentRef references the kubernetes resource it attached to when its scope is "attached".
	// Currently only KongPlugin/KongClusterPlugin allowed. This will make the custom entity to be attached
	// to the entity(service/route/consumer) where the plugin is attached.
	ParentRef *ObjectReference `json:"parentRef,omitempty"`
}

func (*KongCustomEntitySpec) DeepCopy

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

func (*KongCustomEntitySpec) DeepCopyInto

func (in *KongCustomEntitySpec) DeepCopyInto(out *KongCustomEntitySpec)

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

type KongCustomEntityStatus

type KongCustomEntityStatus struct {
	// Conditions describe the current conditions of the KongCustomEntityStatus.
	//
	// Known condition types are:
	//
	// * "Programmed"
	//
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MaxItems=8
	// +kubebuilder:default={{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}
	Conditions []metav1.Condition `json:"conditions"`
}

func (*KongCustomEntityStatus) DeepCopy

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

func (*KongCustomEntityStatus) DeepCopyInto

func (in *KongCustomEntityStatus) DeepCopyInto(out *KongCustomEntityStatus)

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

type KongEntityScope

type KongEntityScope string

type KongKey added in v0.0.16

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

	Spec KongKeySpec `json:"spec"`

	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongKeyStatus `json:"status,omitempty"`
}

KongKey is the schema for KongKey API which defines a KongKey entity.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="!has(oldSelf.spec.controlPlaneRef) || has(self.spec.controlPlaneRef)", message="controlPlaneRef is required once set" +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.controlPlaneRef == self.spec.controlPlaneRef", message="spec.controlPlaneRef is immutable when an entity is already Programmed" +kubebuilder:validation:XValidation:rule="!has(self.spec.controlPlaneRef) ? true : !has(self.spec.controlPlaneRef.konnectNamespacedRef) ? true : !has(self.spec.controlPlaneRef.konnectNamespacedRef.__namespace__)", message="spec.controlPlaneRef cannot specify namespace for namespaced resource - it's not supported yet"

func (*KongKey) DeepCopy added in v0.0.16

func (in *KongKey) DeepCopy() *KongKey

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

func (*KongKey) DeepCopyInto added in v0.0.16

func (in *KongKey) DeepCopyInto(out *KongKey)

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

func (*KongKey) DeepCopyObject added in v0.0.16

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

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

func (*KongKey) GetConditions added in v0.0.16

func (obj *KongKey) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongKey) GetControlPlaneID added in v0.0.16

func (obj *KongKey) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongKey status.

func (*KongKey) GetKonnectID added in v0.0.16

func (obj *KongKey) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongKey status.

func (*KongKey) GetKonnectStatus added in v0.0.16

func (obj *KongKey) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongKey status.

func (KongKey) GetTypeName added in v0.0.16

func (obj KongKey) GetTypeName() string

GetTypeName returns the KongKey Kind name

func (*KongKey) SetConditions added in v0.0.16

func (obj *KongKey) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongKey) SetControlPlaneID added in v0.0.16

func (obj *KongKey) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongKey status.

func (*KongKey) SetKonnectID added in v0.0.16

func (obj *KongKey) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongKey status.

type KongKeyAPISpec added in v0.0.16

type KongKeyAPISpec struct {
	// KID is a unique identifier for a key.
	// When JWK is provided, KID has to match the KID in the JWK.
	// +kubebuilder:validation:MinLength=1
	KID string `json:"kid"`

	// Name is an optional name to associate with the given key.
	// +optional
	Name *string `json:"name,omitempty"`

	// JWK is a JSON Web Key represented as a string.
	// The JWK must contain a KID field that matches the KID in the KongKey.
	// Either JWK or PEM must be set.
	// +optional
	JWK *string `json:"jwk,omitempty"`

	// PEM is a keypair in PEM format.
	// Either JWK or PEM must be set.
	// +optional
	PEM *PEMKeyPair `json:"pem,omitempty"`

	// Tags is an optional set of strings associated with the Key for grouping and filtering.
	// +optional
	Tags []string `json:"tags,omitempty"`
}

KongKeyAPISpec defines the attributes of a Kong Key. +kubebuilder:validation:XValidation:rule="has(self.jwk) || has(self.pem)", message="Either 'jwk' or 'pem' must be set"

func (*KongKeyAPISpec) DeepCopy added in v0.0.16

func (in *KongKeyAPISpec) DeepCopy() *KongKeyAPISpec

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

func (*KongKeyAPISpec) DeepCopyInto added in v0.0.16

func (in *KongKeyAPISpec) DeepCopyInto(out *KongKeyAPISpec)

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

type KongKeyList added in v0.0.16

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

KongKeyList contains a list of Kong Keys.

func (*KongKeyList) DeepCopy added in v0.0.16

func (in *KongKeyList) DeepCopy() *KongKeyList

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

func (*KongKeyList) DeepCopyInto added in v0.0.16

func (in *KongKeyList) DeepCopyInto(out *KongKeyList)

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

func (*KongKeyList) DeepCopyObject added in v0.0.16

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

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

type KongKeySet added in v0.0.21

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

	Spec KongKeySetSpec `json:"spec"`

	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongKeySetStatus `json:"status,omitempty"`
}

KongKeySet is the schema for KongKeySet API which defines a KongKeySet entity.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.controlPlaneRef == self.spec.controlPlaneRef", message="spec.controlPlaneRef is immutable when an entity is already Programmed" +kubebuilder:validation:XValidation:rule="!has(self.spec.controlPlaneRef.konnectNamespacedRef) ? true : !has(self.spec.controlPlaneRef.konnectNamespacedRef.__namespace__)", message="spec.controlPlaneRef cannot specify namespace for namespaced resource - it's not supported yet"

func (*KongKeySet) DeepCopy added in v0.0.21

func (in *KongKeySet) DeepCopy() *KongKeySet

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

func (*KongKeySet) DeepCopyInto added in v0.0.21

func (in *KongKeySet) DeepCopyInto(out *KongKeySet)

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

func (*KongKeySet) DeepCopyObject added in v0.0.21

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

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

func (*KongKeySet) GetConditions added in v0.0.21

func (obj *KongKeySet) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongKeySet) GetControlPlaneID added in v0.0.21

func (obj *KongKeySet) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongKeySet status.

func (*KongKeySet) GetKonnectID added in v0.0.21

func (obj *KongKeySet) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongKeySet status.

func (*KongKeySet) GetKonnectStatus added in v0.0.21

func (obj *KongKeySet) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongKeySet status.

func (KongKeySet) GetTypeName added in v0.0.21

func (obj KongKeySet) GetTypeName() string

GetTypeName returns the KongKeySet Kind name

func (*KongKeySet) SetConditions added in v0.0.21

func (obj *KongKeySet) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongKeySet) SetControlPlaneID added in v0.0.21

func (obj *KongKeySet) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongKeySet status.

func (*KongKeySet) SetKonnectID added in v0.0.21

func (obj *KongKeySet) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongKeySet status.

type KongKeySetAPISpec added in v0.0.21

type KongKeySetAPISpec struct {
	// Name is a name of the KeySet.
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`

	// Tags is an optional set of strings associated with the KeySet for grouping and filtering.
	// +optional
	Tags []string `json:"tags,omitempty"`
}

KongKeySetAPISpec defines the attributes of a Kong KeySet.

func (*KongKeySetAPISpec) DeepCopy added in v0.0.21

func (in *KongKeySetAPISpec) DeepCopy() *KongKeySetAPISpec

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

func (*KongKeySetAPISpec) DeepCopyInto added in v0.0.21

func (in *KongKeySetAPISpec) DeepCopyInto(out *KongKeySetAPISpec)

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

type KongKeySetList added in v0.0.21

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

KongKeySetList contains a list of Kong Keys.

func (*KongKeySetList) DeepCopy added in v0.0.21

func (in *KongKeySetList) DeepCopy() *KongKeySetList

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

func (*KongKeySetList) DeepCopyInto added in v0.0.21

func (in *KongKeySetList) DeepCopyInto(out *KongKeySetList)

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

func (*KongKeySetList) DeepCopyObject added in v0.0.21

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

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

type KongKeySetSpec added in v0.0.21

type KongKeySetSpec struct {
	// ControlPlaneRef is a reference to a Konnect ControlPlane with which KongKeySet is associated.
	// +optional
	ControlPlaneRef *ControlPlaneRef `json:"controlPlaneRef,omitempty"`

	// KongKeySetAPISpec are the attributes of the KongKeySet itself.
	KongKeySetAPISpec `json:",inline"`
}

KongKeySetSpec defines the spec for a KongKeySet.

func (*KongKeySetSpec) DeepCopy added in v0.0.21

func (in *KongKeySetSpec) DeepCopy() *KongKeySetSpec

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

func (*KongKeySetSpec) DeepCopyInto added in v0.0.21

func (in *KongKeySetSpec) DeepCopyInto(out *KongKeySetSpec)

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

type KongKeySetStatus added in v0.0.21

type KongKeySetStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneRef `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongKeySetStatus defines the status for a KongKeySet.

func (*KongKeySetStatus) DeepCopy added in v0.0.21

func (in *KongKeySetStatus) DeepCopy() *KongKeySetStatus

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

func (*KongKeySetStatus) DeepCopyInto added in v0.0.21

func (in *KongKeySetStatus) DeepCopyInto(out *KongKeySetStatus)

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

type KongKeySpec added in v0.0.16

type KongKeySpec struct {
	// ControlPlaneRef is a reference to a Konnect ControlPlane this KongKey is associated with.
	// +optional
	ControlPlaneRef *ControlPlaneRef `json:"controlPlaneRef,omitempty"`

	// KeySetRef is a reference to a KongKeySet this KongKey is attached to.
	// ControlPlane referenced by a KongKeySet must be the same as the ControlPlane referenced by the KongKey.
	// +optional
	KeySetRef *KeySetRef `json:"keySetRef,omitempty"`

	// KongKeyAPISpec are the attributes of the KongKey itself.
	KongKeyAPISpec `json:",inline"`
}

KongKeySpec defines the spec for a KongKey.

func (*KongKeySpec) DeepCopy added in v0.0.16

func (in *KongKeySpec) DeepCopy() *KongKeySpec

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

func (*KongKeySpec) DeepCopyInto added in v0.0.16

func (in *KongKeySpec) DeepCopyInto(out *KongKeySpec)

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

type KongKeyStatus added in v0.0.16

type KongKeyStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneAndKeySetRef `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongKeyStatus defines the status for a KongKey.

func (*KongKeyStatus) DeepCopy added in v0.0.16

func (in *KongKeyStatus) DeepCopy() *KongKeyStatus

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

func (*KongKeyStatus) DeepCopyInto added in v0.0.16

func (in *KongKeyStatus) DeepCopyInto(out *KongKeyStatus)

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

type KongLicense

type KongLicense struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// RawLicenseString is a string with the raw content of the license.
	RawLicenseString string `json:"rawLicenseString"`
	// Enabled is set to true to let controllers (like KIC or KGO) to reconcile it.
	// Default value is true to apply the license by default.
	// +kubebuilder:default=true
	Enabled bool `json:"enabled"`
	// Status is the status of the KongLicense being processed by controllers.
	Status KongLicenseStatus `json:"status,omitempty"`
}

KongLicense stores a Kong enterprise license to apply to managed Kong gateway instances.

func (*KongLicense) DeepCopy

func (in *KongLicense) DeepCopy() *KongLicense

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

func (*KongLicense) DeepCopyInto

func (in *KongLicense) DeepCopyInto(out *KongLicense)

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

func (*KongLicense) DeepCopyObject

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

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

type KongLicenseControllerStatus

type KongLicenseControllerStatus struct {
	// ControllerName is an identifier of the controller to reconcile this KongLicense.
	// Should be unique in the list of controller statuses.
	ControllerName string `json:"controllerName"`
	// ControllerRef is the reference of the controller to reconcile this KongLicense.
	// It is usually the name of (KIC/KGO) pod that reconciles it.
	ControllerRef *ControllerReference `json:"controllerRef,omitempty"`
	// Conditions describe the current conditions of the KongLicense on the controller.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MaxItems=8
	// +kubebuilder:default={{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongLicenseControllerStatus is the status of owning KongLicense being processed identified by the controllerName field.

func (*KongLicenseControllerStatus) DeepCopy

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

func (*KongLicenseControllerStatus) DeepCopyInto

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

type KongLicenseList

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

KongLicenseList contains a list of KongLicense.

func (*KongLicenseList) DeepCopy

func (in *KongLicenseList) DeepCopy() *KongLicenseList

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

func (*KongLicenseList) DeepCopyInto

func (in *KongLicenseList) DeepCopyInto(out *KongLicenseList)

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

func (*KongLicenseList) DeepCopyObject

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

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

type KongLicensePhase

type KongLicensePhase string

type KongLicenseStatus

type KongLicenseStatus struct {
	// +listType=map
	// +listMapKey=controllerName
	KongLicenseControllerStatuses []KongLicenseControllerStatus `json:"controllers,omitempty"`
}

KongLicenseStatus stores the status of the KongLicense being processesed in each controller that reconciles it.

func (*KongLicenseStatus) DeepCopy

func (in *KongLicenseStatus) DeepCopy() *KongLicenseStatus

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

func (*KongLicenseStatus) DeepCopyInto

func (in *KongLicenseStatus) DeepCopyInto(out *KongLicenseStatus)

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

type KongObjectRef added in v0.0.21

type KongObjectRef struct {
	// Name is the name of the entity.
	//
	// NOTE: the `Required` validation rule does not reject empty strings so we use `MinLength` to reject empty string here.
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
}

KongObjectRef is a reference to another object representing a Kong entity with deterministic type.

TODO: https://github.com/Kong/kubernetes-configuration/issues/96 change other types to use the generic `KongObjectRef` and move it to a common package to prevent possible import cycles.

func (*KongObjectRef) DeepCopy added in v0.0.21

func (in *KongObjectRef) DeepCopy() *KongObjectRef

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

func (*KongObjectRef) DeepCopyInto added in v0.0.21

func (in *KongObjectRef) DeepCopyInto(out *KongObjectRef)

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

type KongPluginBinding

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

	Spec KongPluginBindingSpec `json:"spec"`

	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongPluginBindingStatus `json:"status,omitempty"`
}

KongPluginBinding is the schema for Plugin Bindings API which defines a Kong Plugin Binding.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Plugin-kind",type=string,JSONPath=`.spec.pluginRef.kind`,description="Kind of the plugin" +kubebuilder:printcolumn:name="Plugin-name",type=string,JSONPath=`.spec.pluginRef.name`,description="Name of the plugin" +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="!has(oldSelf.spec.controlPlaneRef) || has(self.spec.controlPlaneRef)", message="controlPlaneRef is required once set" +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.controlPlaneRef == self.spec.controlPlaneRef", message="spec.controlPlaneRef is immutable when an entity is already Programmed"

func (*KongPluginBinding) DeepCopy

func (in *KongPluginBinding) DeepCopy() *KongPluginBinding

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

func (*KongPluginBinding) DeepCopyInto

func (in *KongPluginBinding) DeepCopyInto(out *KongPluginBinding)

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

func (*KongPluginBinding) DeepCopyObject

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

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

func (*KongPluginBinding) GetConditions

func (obj *KongPluginBinding) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongPluginBinding) GetControlPlaneID added in v0.0.9

func (obj *KongPluginBinding) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongPluginBinding status.

func (*KongPluginBinding) GetKonnectID added in v0.0.9

func (obj *KongPluginBinding) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongPluginBinding status.

func (*KongPluginBinding) GetKonnectStatus

func (obj *KongPluginBinding) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongPluginBinding status.

func (KongPluginBinding) GetTypeName

func (obj KongPluginBinding) GetTypeName() string

GetTypeName returns the KongPluginBinding Kind name

func (*KongPluginBinding) SetConditions

func (obj *KongPluginBinding) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongPluginBinding) SetControlPlaneID added in v0.0.9

func (obj *KongPluginBinding) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongPluginBinding status.

func (*KongPluginBinding) SetKonnectID added in v0.0.9

func (obj *KongPluginBinding) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongPluginBinding status.

type KongPluginBindingList

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

KongPluginBindingList contains a list of KongPluginBindings.

func (*KongPluginBindingList) DeepCopy

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

func (*KongPluginBindingList) DeepCopyInto

func (in *KongPluginBindingList) DeepCopyInto(out *KongPluginBindingList)

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

func (*KongPluginBindingList) DeepCopyObject

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

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

type KongPluginBindingSpec

type KongPluginBindingSpec struct {
	// PluginReference is a reference to the KongPlugin or KongClusterPlugin resource.
	// +kubebuilder:validation:XValidation:message="pluginRef name must be set",rule="self.name != ”"
	PluginReference PluginRef `json:"pluginRef"`

	// Targets contains the targets references. It is possible to set multiple combinations
	// of references, as described in https://docs.konghq.com/gateway/latest/key-concepts/plugins/#precedence
	// The complete set of allowed combinations and their order of precedence for plugins
	// configured to multiple entities is:
	//
	// 1. Consumer + route + service
	// 2. Consumer group + service + route
	// 3. Consumer + route
	// 4. Consumer + service
	// 5. Consumer group + route
	// 6. Consumer group + service
	// 7. Route + service
	// 8. Consumer
	// 9. Consumer group
	// 10. Route
	// 11. Service
	//
	// +kubebuilder:validation:XValidation:message="Cannot set Consumer and ConsumerGroup at the same time",rule="(has(self.consumerRef) ? !has(self.consumerGroupRef) : true)"
	// +kubebuilder:validation:XValidation:message="At least one entity reference must be set",rule="has(self.routeRef) || has(self.serviceRef) || has(self.consumerRef) || has(self.consumerGroupRef)"
	// +kubebuilder:validation:XValidation:message="KongRoute can be used only when serviceRef is unset or set to KongService",rule="(has(self.routeRef) && self.routeRef.kind == 'KongRoute') ? (!has(self.serviceRef) || self.serviceRef.kind == 'KongService') : true"
	// +kubebuilder:validation:XValidation:message="KongService can be used only when routeRef is unset or set to KongRoute",rule="(has(self.serviceRef) && self.serviceRef.kind == 'KongService') ? (!has(self.routeRef) || self.routeRef.kind == 'KongRoute') : true"
	Targets KongPluginBindingTargets `json:"targets"`

	// ControlPlaneRef is a reference to a ControlPlane this KongPluginBinding is associated with.
	// +optional
	ControlPlaneRef *ControlPlaneRef `json:"controlPlaneRef,omitempty"`
}

KongPluginBindingSpec defines specification of a KongPluginBinding.

func (*KongPluginBindingSpec) DeepCopy

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

func (*KongPluginBindingSpec) DeepCopyInto

func (in *KongPluginBindingSpec) DeepCopyInto(out *KongPluginBindingSpec)

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

type KongPluginBindingStatus

type KongPluginBindingStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneRef `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongPluginBindingStatus represents the current status of the KongBinding resource.

func (*KongPluginBindingStatus) DeepCopy

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

func (*KongPluginBindingStatus) DeepCopyInto

func (in *KongPluginBindingStatus) DeepCopyInto(out *KongPluginBindingStatus)

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

type KongPluginBindingTargets added in v0.0.2

type KongPluginBindingTargets struct {
	// RouteReference can be used to reference one of the following resouces:
	// - networking.k8s.io/Ingress
	// - gateway.networking.k8s.io/HTTPRoute
	// - gateway.networking.k8s.io/GRPCRoute
	// - configuration.konghq.com/KongRoute
	//
	// +optional
	// +kubebuilder:validation:XValidation:message="group/kind not allowed for the routeRef",rule="(self.kind == 'KongRoute' && self.group == 'configuration.konghq.com') || (self.kind == 'Ingress' && self.group == 'networking.k8s.io') || (self.kind == 'HTTPRoute' && self.group == 'gateway.networking.k8s.io') || (self.kind == 'GRPCRoute' && self.group == 'gateway.networking.k8s.io')"
	RouteReference *TargetRefWithGroupKind `json:"routeRef,omitempty"`

	// ServiceReference can be used to reference one of the following resouces:
	// - core/Service or /Service
	// - configuration.konghq.com/KongService
	//
	// +optional
	// +kubebuilder:validation:XValidation:message="group/kind not allowed for the serviceRef",rule="(self.kind == 'KongService' && self.group == 'configuration.konghq.com') || (self.kind == 'Service' && (self.group == ” || self.group == 'core'))"
	ServiceReference *TargetRefWithGroupKind `json:"serviceRef,omitempty"`

	// ConsumerReference is used to reference a configuration.konghq.com/Consumer resource.
	// The group/kind is fixed, therefore the reference is performed only by name.
	ConsumerReference *TargetRef `json:"consumerRef,omitempty"`

	// ConsumerGroupReference is used to reference a configuration.konghq.com/ConsumerGroup resource.
	// The group/kind is fixed, therefore the reference is performed only by name.
	ConsumerGroupReference *TargetRef `json:"consumerGroupRef,omitempty"`
}

KongPluginBindingTargets contains the targets references.

func (*KongPluginBindingTargets) DeepCopy added in v0.0.2

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

func (*KongPluginBindingTargets) DeepCopyInto added in v0.0.2

func (in *KongPluginBindingTargets) DeepCopyInto(out *KongPluginBindingTargets)

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

type KongRoute

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

	Spec KongRouteSpec `json:"spec"`

	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongRouteStatus `json:"status,omitempty"`
}

KongRoute is the schema for Routes API which defines a Kong Route.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="!has(oldSelf.spec.serviceRef) || has(self.spec.serviceRef)", message="serviceRef is required once set" +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.serviceRef == self.spec.serviceRef", message="spec.serviceRef is immutable when an entity is already Programmed" +kubebuilder:validation:XValidation:rule="has(self.spec.protocols) && self.spec.protocols.exists(p, p == 'http') ? (has(self.spec.hosts) || has(self.spec.methods) || has(self.spec.paths) || has(self.spec.paths) || has(self.spec.paths) || has(self.spec.headers) ) : true", message="If protocols has 'http', at least one of 'hosts', 'methods', 'paths' or 'headers' must be set"

func (*KongRoute) DeepCopy

func (in *KongRoute) DeepCopy() *KongRoute

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

func (*KongRoute) DeepCopyInto

func (in *KongRoute) DeepCopyInto(out *KongRoute)

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

func (*KongRoute) DeepCopyObject

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

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

func (*KongRoute) GetConditions

func (obj *KongRoute) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongRoute) GetControlPlaneID added in v0.0.7

func (obj *KongRoute) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongRoute status.

func (*KongRoute) GetKonnectID added in v0.0.9

func (obj *KongRoute) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongRoute status.

func (*KongRoute) GetKonnectStatus

func (obj *KongRoute) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongRoute status.

func (KongRoute) GetTypeName

func (obj KongRoute) GetTypeName() string

GetTypeName returns the KongRoute Kind name

func (*KongRoute) SetConditions

func (obj *KongRoute) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongRoute) SetControlPlaneID added in v0.0.7

func (obj *KongRoute) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongRoute status.

func (*KongRoute) SetKonnectID added in v0.0.7

func (obj *KongRoute) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongRoute status.

type KongRouteAPISpec

type KongRouteAPISpec struct {
	// A list of IP destinations of incoming connections that match this Route when using stream routing. Each entry is an object with fields "ip" (optionally in CIDR range notation) and/or "port".
	Destinations []sdkkonnectgocomp.Destinations `json:"destinations,omitempty"`
	// One or more lists of values indexed by header name that will cause this Route to match if present in the request. The `Host` header cannot be used with this attribute: hosts should be specified using the `hosts` attribute. When `headers` contains only one value and that value starts with the special prefix `~*`, the value is interpreted as a regular expression.
	Headers map[string]string `json:"headers,omitempty"`
	// A list of domain names that match this Route. Note that the hosts value is case sensitive.
	Hosts []string `json:"hosts,omitempty"`
	// The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is `HTTP` instead of `HTTPS`. `Location` header is injected by Kong if the field is set to 301, 302, 307 or 308. Note: This config applies only if the Route is configured to only accept the `https` protocol.
	HTTPSRedirectStatusCode *sdkkonnectgocomp.HTTPSRedirectStatusCode `json:"https_redirect_status_code,omitempty"`
	// A list of HTTP methods that match this Route.
	Methods []string `json:"methods,omitempty"`
	// The name of the Route. Route names must be unique, and they are case sensitive. For example, there can be two different Routes named "test" and "Test".
	Name *string `json:"name,omitempty"`
	// Controls how the Service path, Route path and requested path are combined when sending a request to the upstream. See above for a detailed description of each behavior.
	PathHandling *sdkkonnectgocomp.PathHandling `json:"path_handling,omitempty"`
	// A list of paths that match this Route.
	Paths []string `json:"paths,omitempty"`
	// When matching a Route via one of the `hosts` domain names, use the request `Host` header in the upstream request headers. If set to `false`, the upstream `Host` header will be that of the Service's `host`.
	PreserveHost *bool `json:"preserve_host,omitempty"`
	// An array of the protocols this Route should allow. See the [Route Object](#route-object) section for a list of accepted protocols. When set to only `"https"`, HTTP requests are answered with an upgrade error. When set to only `"http"`, HTTPS requests are answered with an error.
	Protocols []sdkkonnectgocomp.RouteProtocols `json:"protocols,omitempty"`
	// A number used to choose which route resolves a given request when several routes match it using regexes simultaneously. When two routes match the path and have the same `regex_priority`, the older one (lowest `created_at`) is used. Note that the priority for non-regex routes is different (longer non-regex routes are matched before shorter ones).
	RegexPriority *int64 `json:"regex_priority,omitempty"`
	// Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding.
	RequestBuffering *bool `json:"request_buffering,omitempty"`
	// Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding.
	ResponseBuffering *bool `json:"response_buffering,omitempty"`
	// A list of SNIs that match this Route when using stream routing.
	Snis []string `json:"snis,omitempty"`
	// A list of IP sources of incoming connections that match this Route when using stream routing. Each entry is an object with fields "ip" (optionally in CIDR range notation) and/or "port".
	Sources []sdkkonnectgocomp.Sources `json:"sources,omitempty"`
	// When matching a Route via one of the `paths`, strip the matching prefix from the upstream request URL.
	StripPath *bool `json:"strip_path,omitempty"`
	// An optional set of strings associated with the Route for grouping and filtering.
	Tags []string `json:"tags,omitempty"`
}

KongRouteAPISpec represents the configuration of a Route in Kong as defined by the Konnect API.

These fields are mostly copied from sdk-konnect-go but some modifications have been made to make the code generation required for Kubernetes CRDs work.

func (*KongRouteAPISpec) DeepCopy

func (in *KongRouteAPISpec) DeepCopy() *KongRouteAPISpec

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

func (*KongRouteAPISpec) DeepCopyInto

func (in *KongRouteAPISpec) DeepCopyInto(out *KongRouteAPISpec)

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

type KongRouteList

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

KongRouteList contains a list of Kong Routes.

func (*KongRouteList) DeepCopy

func (in *KongRouteList) DeepCopy() *KongRouteList

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

func (*KongRouteList) DeepCopyInto

func (in *KongRouteList) DeepCopyInto(out *KongRouteList)

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

func (*KongRouteList) DeepCopyObject

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

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

type KongRouteSpec

type KongRouteSpec struct {
	// ServiceRef is a reference to a Service this Route is associated with.
	// +optional
	ServiceRef *ServiceRef `json:"serviceRef,omitempty"`

	KongRouteAPISpec `json:",inline"`
}

KongRouteSpec defines specification of a Kong Route.

func (*KongRouteSpec) DeepCopy

func (in *KongRouteSpec) DeepCopy() *KongRouteSpec

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

func (*KongRouteSpec) DeepCopyInto

func (in *KongRouteSpec) DeepCopyInto(out *KongRouteSpec)

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

type KongRouteStatus

type KongRouteStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneAndServiceRefs `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongRouteStatus represents the current status of the Kong Route resource.

func (*KongRouteStatus) DeepCopy

func (in *KongRouteStatus) DeepCopy() *KongRouteStatus

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

func (*KongRouteStatus) DeepCopyInto

func (in *KongRouteStatus) DeepCopyInto(out *KongRouteStatus)

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

type KongSNI added in v0.0.21

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

	Spec KongSNISpec `json:"spec"`

	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongSNIStatus `json:"status,omitempty"`
}

KongSNI is the schema for SNI API which defines a Kong SNI.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.certificateRef == self.spec.certificateRef", message="spec.certificateRef is immutable when programmed"

func (*KongSNI) DeepCopy added in v0.0.21

func (in *KongSNI) DeepCopy() *KongSNI

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

func (*KongSNI) DeepCopyInto added in v0.0.21

func (in *KongSNI) DeepCopyInto(out *KongSNI)

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

func (*KongSNI) DeepCopyObject added in v0.0.21

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

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

func (*KongSNI) GetConditions added in v0.0.21

func (obj *KongSNI) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongSNI) GetControlPlaneID added in v0.0.21

func (obj *KongSNI) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongSNI status.

func (*KongSNI) GetKonnectID added in v0.0.21

func (obj *KongSNI) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongSNI status.

func (*KongSNI) GetKonnectStatus added in v0.0.21

func (obj *KongSNI) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongSNI status.

func (KongSNI) GetTypeName added in v0.0.21

func (obj KongSNI) GetTypeName() string

GetTypeName returns the KongSNI Kind name

func (*KongSNI) SetConditions added in v0.0.21

func (obj *KongSNI) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongSNI) SetControlPlaneID added in v0.0.21

func (obj *KongSNI) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongSNI status.

func (*KongSNI) SetKonnectID added in v0.0.21

func (obj *KongSNI) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongSNI status.

type KongSNIAPISpec added in v0.0.21

type KongSNIAPISpec struct {
	// Name is the name of the SNI. Required and must be a host or wildcard host.
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`

	// Tags is an optional set of strings associated with the SNI for grouping and filtering.
	Tags []string `json:"tags,omitempty"`
}

KongSNIAPISpec defines specification of an SNI.

func (*KongSNIAPISpec) DeepCopy added in v0.0.21

func (in *KongSNIAPISpec) DeepCopy() *KongSNIAPISpec

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

func (*KongSNIAPISpec) DeepCopyInto added in v0.0.21

func (in *KongSNIAPISpec) DeepCopyInto(out *KongSNIAPISpec)

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

type KongSNIList added in v0.0.21

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

KongSNIList contains a list of Kong SNIs.

func (*KongSNIList) DeepCopy added in v0.0.21

func (in *KongSNIList) DeepCopy() *KongSNIList

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

func (*KongSNIList) DeepCopyInto added in v0.0.21

func (in *KongSNIList) DeepCopyInto(out *KongSNIList)

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

func (*KongSNIList) DeepCopyObject added in v0.0.21

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

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

type KongSNISpec added in v0.0.21

type KongSNISpec struct {
	// CertificateRef is the reference to the certificate to which the KongSNI is attached.
	CertificateRef KongObjectRef `json:"certificateRef"`
	// KongSNIAPISpec are the attributes of the Kong SNI itself.
	KongSNIAPISpec `json:",inline"`
}

KongSNISpec defines specification of a Kong SNI.

func (*KongSNISpec) DeepCopy added in v0.0.21

func (in *KongSNISpec) DeepCopy() *KongSNISpec

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

func (*KongSNISpec) DeepCopyInto added in v0.0.21

func (in *KongSNISpec) DeepCopyInto(out *KongSNISpec)

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

type KongSNIStatus added in v0.0.21

type KongSNIStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneAndCertificateRefs `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongKeyStatus defines the status for a KongSNI.

func (*KongSNIStatus) DeepCopy added in v0.0.21

func (in *KongSNIStatus) DeepCopy() *KongSNIStatus

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

func (*KongSNIStatus) DeepCopyInto added in v0.0.21

func (in *KongSNIStatus) DeepCopyInto(out *KongSNIStatus)

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

type KongService

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

	Spec KongServiceSpec `json:"spec"`

	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongServiceStatus `json:"status,omitempty"`
}

KongService is the schema for Services API which defines a Kong Service.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Host",type=string,JSONPath=`.spec.host`,description="Host of the service" +kubebuilder:printcolumn:name="Protocol",type=string,JSONPath=`.spec.procol`,description="Protocol of the service" +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="!has(oldSelf.spec.controlPlaneRef) || has(self.spec.controlPlaneRef)", message="controlPlaneRef is required once set" +kubebuilder:validation:XValidation:rule="!has(self.spec.controlPlaneRef.konnectNamespacedRef) ? true : !has(self.spec.controlPlaneRef.konnectNamespacedRef.__namespace__)", message="spec.controlPlaneRef cannot specify namespace for namespaced resource" +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.controlPlaneRef == self.spec.controlPlaneRef", message="spec.controlPlaneRef is immutable when an entity is already Programmed"

func (*KongService) DeepCopy

func (in *KongService) DeepCopy() *KongService

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

func (*KongService) DeepCopyInto

func (in *KongService) DeepCopyInto(out *KongService)

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

func (*KongService) DeepCopyObject

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

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

func (*KongService) GetConditions

func (obj *KongService) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongService) GetControlPlaneID added in v0.0.2

func (obj *KongService) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongService status.

func (*KongService) GetKonnectID added in v0.0.9

func (obj *KongService) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongService status.

func (*KongService) GetKonnectStatus

func (obj *KongService) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongService status.

func (KongService) GetTypeName

func (obj KongService) GetTypeName() string

GetTypeName returns the KongService Kind name

func (*KongService) SetConditions

func (obj *KongService) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongService) SetControlPlaneID added in v0.0.2

func (obj *KongService) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongService status.

func (*KongService) SetKonnectID added in v0.0.7

func (obj *KongService) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongService status.

type KongServiceAPISpec

type KongServiceAPISpec struct {

	// Helper field to set `protocol`, `host`, `port` and `path` using a URL. This field is write-only and is not returned in responses.
	URL *string `json:"url,omitempty"`
	// The timeout in milliseconds for establishing a connection to the upstream server.
	ConnectTimeout *int64 `json:"connect_timeout,omitempty"`
	// Whether the Service is active. If set to `false`, the proxy behavior will be as if any routes attached to it do not exist (404). Default: `true`.
	Enabled *bool `json:"enabled,omitempty"`
	// The host of the upstream server. Note that the host value is case sensitive.
	// +kubebuilder:validation:Required
	Host string `json:"host"`
	// The Service name.
	Name *string `json:"name,omitempty"`
	// The path to be used in requests to the upstream server.
	Path *string `json:"path,omitempty"`
	// The upstream server port.
	Port *int64 `json:"port,omitempty"`
	// The protocol used to communicate with the upstream.
	Protocol *sdkkonnectgocomp.Protocol `json:"protocol,omitempty"`
	// The timeout in milliseconds between two successive read operations for transmitting a request to the upstream server.
	ReadTimeout *int64 `json:"read_timeout,omitempty"`
	// The number of retries to execute upon failure to proxy.
	Retries *int64 `json:"retries,omitempty"`
	// An optional set of strings associated with the Service for grouping and filtering.
	Tags []string `json:"tags,omitempty"`
	// Whether to enable verification of upstream server TLS certificate. If set to `null`, then the Nginx default is respected.
	TLSVerify *bool `json:"tls_verify,omitempty"`
	// Maximum depth of chain while verifying Upstream server's TLS certificate. If set to `null`, then the Nginx default is respected.
	TLSVerifyDepth *int64 `json:"tls_verify_depth,omitempty"`
	// The timeout in milliseconds between two successive write operations for transmitting a request to the upstream server.
	WriteTimeout *int64 `json:"write_timeout,omitempty"`
}

KongServiceAPISpec defines specification of a Kong Service.

func (*KongServiceAPISpec) DeepCopy

func (in *KongServiceAPISpec) DeepCopy() *KongServiceAPISpec

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

func (*KongServiceAPISpec) DeepCopyInto

func (in *KongServiceAPISpec) DeepCopyInto(out *KongServiceAPISpec)

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

type KongServiceList

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

KongServiceList contains a list of Kong Services.

func (*KongServiceList) DeepCopy

func (in *KongServiceList) DeepCopy() *KongServiceList

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

func (*KongServiceList) DeepCopyInto

func (in *KongServiceList) DeepCopyInto(out *KongServiceList)

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

func (*KongServiceList) DeepCopyObject

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

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

type KongServiceSpec

type KongServiceSpec struct {
	// ControlPlaneRef is a reference to a ControlPlane this KongService is associated with.
	// +optional
	ControlPlaneRef *ControlPlaneRef `json:"controlPlaneRef,omitempty"`

	KongServiceAPISpec `json:",inline"`
}

KongServiceSpec defines specification of a Kong Route.

func (*KongServiceSpec) DeepCopy

func (in *KongServiceSpec) DeepCopy() *KongServiceSpec

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

func (*KongServiceSpec) DeepCopyInto

func (in *KongServiceSpec) DeepCopyInto(out *KongServiceSpec)

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

type KongServiceStatus

type KongServiceStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneRef `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongServiceStatus represents the current status of the Kong Service resource.

func (*KongServiceStatus) DeepCopy

func (in *KongServiceStatus) DeepCopy() *KongServiceStatus

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

func (*KongServiceStatus) DeepCopyInto

func (in *KongServiceStatus) DeepCopyInto(out *KongServiceStatus)

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

type KongTarget added in v0.0.13

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

	Spec KongTargetSpec `json:"spec"`
	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongTargetStatus `json:"status,omitempty"`
}

KongTarget is the schema for Target API which defines a Kong Target attached to a Kong Upstream.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="oldSelf.spec.upstreamRef == self.spec.upstreamRef", message="spec.upstreamRef is immutable"

func (*KongTarget) DeepCopy added in v0.0.13

func (in *KongTarget) DeepCopy() *KongTarget

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

func (*KongTarget) DeepCopyInto added in v0.0.13

func (in *KongTarget) DeepCopyInto(out *KongTarget)

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

func (*KongTarget) DeepCopyObject added in v0.0.13

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

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

func (*KongTarget) GetConditions added in v0.0.13

func (obj *KongTarget) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongTarget) GetControlPlaneID added in v0.0.13

func (obj *KongTarget) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongTarget status.

func (*KongTarget) GetKonnectID added in v0.0.13

func (obj *KongTarget) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongTarget status.

func (*KongTarget) GetKonnectStatus added in v0.0.13

func (obj *KongTarget) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongTarget status.

func (KongTarget) GetTypeName added in v0.0.13

func (obj KongTarget) GetTypeName() string

GetTypeName returns the KongTarget Kind name

func (*KongTarget) SetConditions added in v0.0.13

func (obj *KongTarget) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongTarget) SetControlPlaneID added in v0.0.13

func (obj *KongTarget) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongTarget status.

func (*KongTarget) SetKonnectID added in v0.0.13

func (obj *KongTarget) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongTarget status.

type KongTargetAPISpec added in v0.0.13

type KongTargetAPISpec struct {
	// Target is the target address of the upstream.
	Target string `json:"target"`
	// Weight is the weight this target gets within the upstream loadbalancer.
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=65535
	// +kubebuilder:default=100
	Weight int `json:"weight"`
	// Tags is an optional set of strings associated with the Target for grouping and filtering.
	Tags []string `json:"tags,omitempty"`
}

func (*KongTargetAPISpec) DeepCopy added in v0.0.13

func (in *KongTargetAPISpec) DeepCopy() *KongTargetAPISpec

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

func (*KongTargetAPISpec) DeepCopyInto added in v0.0.13

func (in *KongTargetAPISpec) DeepCopyInto(out *KongTargetAPISpec)

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

type KongTargetList added in v0.0.13

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

KongTargetList contains a list of Kong Targets.

func (*KongTargetList) DeepCopy added in v0.0.13

func (in *KongTargetList) DeepCopy() *KongTargetList

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

func (*KongTargetList) DeepCopyInto added in v0.0.13

func (in *KongTargetList) DeepCopyInto(out *KongTargetList)

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

func (*KongTargetList) DeepCopyObject added in v0.0.13

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

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

type KongTargetSpec added in v0.0.13

type KongTargetSpec struct {
	// UpstreamRef is a reference to a KongUpstream this KongTarget is attached to.
	UpstreamRef TargetRef `json:"upstreamRef"`
	// KongTargetAPISpec are the attributes of the Kong Target itself.
	KongTargetAPISpec `json:",inline"`
}

func (*KongTargetSpec) DeepCopy added in v0.0.13

func (in *KongTargetSpec) DeepCopy() *KongTargetSpec

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

func (*KongTargetSpec) DeepCopyInto added in v0.0.13

func (in *KongTargetSpec) DeepCopyInto(out *KongTargetSpec)

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

type KongTargetStatus added in v0.0.13

type KongTargetStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneAndUpstreamRefs `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

func (*KongTargetStatus) DeepCopy added in v0.0.13

func (in *KongTargetStatus) DeepCopy() *KongTargetStatus

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

func (*KongTargetStatus) DeepCopyInto added in v0.0.13

func (in *KongTargetStatus) DeepCopyInto(out *KongTargetStatus)

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

type KongUpstream added in v0.0.12

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

	Spec KongUpstreamSpec `json:"spec"`

	// +kubebuilder:default={conditions: {{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}}
	Status KongUpstreamStatus `json:"status,omitempty"`
}

KongUpstream is the schema for Upstream API which defines a Kong Upstream.

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Namespaced +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Programmed",description="The Resource is Programmed on Konnect",type=string,JSONPath=`.status.conditions[?(@.type=='Programmed')].status` +kubebuilder:validation:XValidation:rule="!has(oldSelf.spec.controlPlaneRef) || has(self.spec.controlPlaneRef)", message="controlPlaneRef is required once set" +kubebuilder:validation:XValidation:rule="!has(self.spec.controlPlaneRef.konnectNamespacedRef) ? true : !has(self.spec.controlPlaneRef.konnectNamespacedRef.__namespace__)", message="spec.controlPlaneRef cannot specify namespace for namespaced resource" +kubebuilder:validation:XValidation:rule="(!self.status.conditions.exists(c, c.type == 'Programmed' && c.status == 'True')) ? true : oldSelf.spec.controlPlaneRef == self.spec.controlPlaneRef", message="spec.controlPlaneRef is immutable when an entity is already Programmed"

func (*KongUpstream) DeepCopy added in v0.0.12

func (in *KongUpstream) DeepCopy() *KongUpstream

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

func (*KongUpstream) DeepCopyInto added in v0.0.12

func (in *KongUpstream) DeepCopyInto(out *KongUpstream)

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

func (*KongUpstream) DeepCopyObject added in v0.0.12

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

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

func (*KongUpstream) GetConditions added in v0.0.12

func (obj *KongUpstream) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongUpstream) GetControlPlaneID added in v0.0.12

func (obj *KongUpstream) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongUpstream status.

func (*KongUpstream) GetKonnectID added in v0.0.12

func (obj *KongUpstream) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongUpstream status.

func (*KongUpstream) GetKonnectStatus added in v0.0.12

func (obj *KongUpstream) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongUpstream status.

func (KongUpstream) GetTypeName added in v0.0.12

func (obj KongUpstream) GetTypeName() string

GetTypeName returns the KongUpstream Kind name

func (*KongUpstream) SetConditions added in v0.0.12

func (obj *KongUpstream) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongUpstream) SetControlPlaneID added in v0.0.12

func (obj *KongUpstream) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongUpstream status.

func (*KongUpstream) SetKonnectID added in v0.0.12

func (obj *KongUpstream) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongUpstream status.

type KongUpstreamAPISpec added in v0.0.12

type KongUpstreamAPISpec struct {
	// Which load balancing algorithm to use.
	Algorithm *sdkkonnectgocomp.UpstreamAlgorithm `default:"round-robin" json:"algorithm,omitempty"`
	// If set, the certificate to be used as client certificate while TLS handshaking to the upstream server.
	ClientCertificate *sdkkonnectgocomp.UpstreamClientCertificate `json:"client_certificate,omitempty"`
	// What to use as hashing input if the primary `hash_on` does not return a hash (eg. header is missing, or no Consumer identified). Not available if `hash_on` is set to `cookie`.
	HashFallback *sdkkonnectgocomp.HashFallback `default:"none" json:"hash_fallback,omitempty"`
	// The header name to take the value from as hash input. Only required when `hash_fallback` is set to `header`.
	HashFallbackHeader *string `json:"hash_fallback_header,omitempty"`
	// The name of the query string argument to take the value from as hash input. Only required when `hash_fallback` is set to `query_arg`.
	HashFallbackQueryArg *string `json:"hash_fallback_query_arg,omitempty"`
	// The name of the route URI capture to take the value from as hash input. Only required when `hash_fallback` is set to `uri_capture`.
	HashFallbackURICapture *string `json:"hash_fallback_uri_capture,omitempty"`
	// What to use as hashing input. Using `none` results in a weighted-round-robin scheme with no hashing.
	HashOn *sdkkonnectgocomp.HashOn `default:"none" json:"hash_on,omitempty"`
	// The cookie name to take the value from as hash input. Only required when `hash_on` or `hash_fallback` is set to `cookie`. If the specified cookie is not in the request, Kong will generate a value and set the cookie in the response.
	HashOnCookie *string `json:"hash_on_cookie,omitempty"`
	// The cookie path to set in the response headers. Only required when `hash_on` or `hash_fallback` is set to `cookie`.
	HashOnCookiePath *string `default:"/" json:"hash_on_cookie_path,omitempty"`
	// The header name to take the value from as hash input. Only required when `hash_on` is set to `header`.
	HashOnHeader *string `json:"hash_on_header,omitempty"`
	// The name of the query string argument to take the value from as hash input. Only required when `hash_on` is set to `query_arg`.
	HashOnQueryArg *string `json:"hash_on_query_arg,omitempty"`
	// The name of the route URI capture to take the value from as hash input. Only required when `hash_on` is set to `uri_capture`.
	HashOnURICapture *string                        `json:"hash_on_uri_capture,omitempty"`
	Healthchecks     *sdkkonnectgocomp.Healthchecks `json:"healthchecks,omitempty"`
	// The hostname to be used as `Host` header when proxying requests through Kong.
	HostHeader *string `json:"host_header,omitempty"`
	// This is a hostname, which must be equal to the `host` of a Service.
	Name string `json:"name,omitempty"`
	// The number of slots in the load balancer algorithm. If `algorithm` is set to `round-robin`, this setting determines the maximum number of slots. If `algorithm` is set to `consistent-hashing`, this setting determines the actual number of slots in the algorithm. Accepts an integer in the range `10`-`65536`.
	// +kubebuilder:validation:Minimum=10
	// +kubebuilder:validation:Maximum=65536
	Slots *int64 `default:"10000" json:"slots,omitempty"`
	// An optional set of strings associated with the Upstream for grouping and filtering.
	Tags []string `json:"tags,omitempty"`
	// If set, the balancer will use SRV hostname(if DNS Answer has SRV record) as the proxy upstream `Host`.
	UseSrvName *bool `default:"false" json:"use_srv_name,omitempty"`
}

KongUpstreamAPISpec defines specification of a Kong Upstream.

+kubebuilder:validation:XValidation:rule="!has(self.hash_fallback) || (self.hash_fallback != 'header' || has(self.hash_fallback_header))", message="hash_fallback_header is required when `hash_fallback` is set to `header`." +kubebuilder:validation:XValidation:rule="!has(self.hash_fallback) || (self.hash_fallback != 'query_arg' || has(self.hash_fallback_query_arg))", message="hash_fallback_query_arg is required when `hash_fallback` is set to `query_arg`." +kubebuilder:validation:XValidation:rule="!has(self.hash_fallback) || (self.hash_fallback != 'uri_capture' || has(self.hash_fallback_uri_capture))", message="hash_fallback_uri_capture is required when `hash_fallback` is set to `uri_capture`." +kubebuilder:validation:XValidation:rule="!has(self.hash_fallback) || (self.hash_fallback != 'cookie' || has(self.hash_on_cookie))", message="hash_on_cookie is required when hash_fallback is set to `cookie`." +kubebuilder:validation:XValidation:rule="!has(self.hash_on) || (self.hash_on != 'cookie' || has(self.hash_on_cookie))", message="hash_on_cookie is required when hash_on is set to `cookie`." +kubebuilder:validation:XValidation:rule="!has(self.hash_fallback) || (self.hash_fallback != 'cookie' || has(self.hash_on_cookie_path))", message="hash_on_cookie_path is required when hash_fallback is set to `cookie`." +kubebuilder:validation:XValidation:rule="!has(self.hash_on) || (self.hash_on != 'cookie' || has(self.hash_on_cookie_path))", message="hash_on_cookie_path is required when hash_on is set to `cookie`." +kubebuilder:validation:XValidation:rule="!has(self.hash_on) || (self.hash_on != 'header' || has(self.hash_on_header))", message="hash_on_header is required when hash_on is set to `header`." +kubebuilder:validation:XValidation:rule="!has(self.hash_on) || (self.hash_on != 'query_arg' || has(self.hash_on_query_arg))", message="hash_on_query_arg is required when `hash_on` is set to `query_arg`." +kubebuilder:validation:XValidation:rule="!has(self.hash_on) || (self.hash_on != 'uri_capture' || has(self.hash_on_uri_capture))", message="hash_on_uri_capture is required when `hash_on` is set to `uri_capture`."

func (*KongUpstreamAPISpec) DeepCopy added in v0.0.12

func (in *KongUpstreamAPISpec) DeepCopy() *KongUpstreamAPISpec

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

func (*KongUpstreamAPISpec) DeepCopyInto added in v0.0.12

func (in *KongUpstreamAPISpec) DeepCopyInto(out *KongUpstreamAPISpec)

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

type KongUpstreamList added in v0.0.12

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

KongUpstreamList contains a list of Kong Upstreams.

func (*KongUpstreamList) DeepCopy added in v0.0.12

func (in *KongUpstreamList) DeepCopy() *KongUpstreamList

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

func (*KongUpstreamList) DeepCopyInto added in v0.0.12

func (in *KongUpstreamList) DeepCopyInto(out *KongUpstreamList)

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

func (*KongUpstreamList) DeepCopyObject added in v0.0.12

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

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

type KongUpstreamSpec added in v0.0.12

type KongUpstreamSpec struct {
	// ControlPlaneRef is a reference to a ControlPlane this KongUpstream is associated with.
	// +optional
	ControlPlaneRef *ControlPlaneRef `json:"controlPlaneRef,omitempty"`

	KongUpstreamAPISpec `json:",inline"`
}

KongUpstreamSpec defines specification of a Kong Upstream.

func (*KongUpstreamSpec) DeepCopy added in v0.0.12

func (in *KongUpstreamSpec) DeepCopy() *KongUpstreamSpec

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

func (*KongUpstreamSpec) DeepCopyInto added in v0.0.12

func (in *KongUpstreamSpec) DeepCopyInto(out *KongUpstreamSpec)

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

type KongUpstreamStatus added in v0.0.12

type KongUpstreamStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneRef `json:"konnect,omitempty"`

	// Conditions describe the status of the Konnect entity.
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:MaxItems=8
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

KongUpstreamStatus represents the current status of the Kong Upstream resource.

func (*KongUpstreamStatus) DeepCopy added in v0.0.12

func (in *KongUpstreamStatus) DeepCopy() *KongUpstreamStatus

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

func (*KongUpstreamStatus) DeepCopyInto added in v0.0.12

func (in *KongUpstreamStatus) DeepCopyInto(out *KongUpstreamStatus)

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

type KongVault

type KongVault struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              KongVaultSpec   `json:"spec"`
	Status            KongVaultStatus `json:"status,omitempty"`
}

KongVault is the schema for kongvaults API which defines a custom Kong vault. A Kong vault is a storage to store sensitive data, where the values can be referenced in configuration of plugins. See: https://docs.konghq.com/gateway/latest/kong-enterprise/secrets-management/

func (*KongVault) DeepCopy

func (in *KongVault) DeepCopy() *KongVault

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

func (*KongVault) DeepCopyInto

func (in *KongVault) DeepCopyInto(out *KongVault)

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

func (*KongVault) DeepCopyObject

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

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

func (*KongVault) GetConditions added in v0.0.13

func (obj *KongVault) GetConditions() []metav1.Condition

GetConditions returns the Status Conditions

func (*KongVault) GetControlPlaneID added in v0.0.14

func (obj *KongVault) GetControlPlaneID() string

GetControlPlaneID returns the ControlPlane ID in the KongVault status.

func (*KongVault) GetKonnectID added in v0.0.13

func (obj *KongVault) GetKonnectID() string

GetKonnectID returns the Konnect ID in the KongVault status.

func (*KongVault) GetKonnectStatus added in v0.0.13

func (obj *KongVault) GetKonnectStatus() *konnectv1alpha1.KonnectEntityStatus

GetKonnectStatus returns the Konnect status contained in the KongVault status.

func (KongVault) GetTypeName added in v0.0.13

func (obj KongVault) GetTypeName() string

GetTypeName returns the KongVault Kind name

func (*KongVault) SetConditions added in v0.0.13

func (obj *KongVault) SetConditions(conditions []metav1.Condition)

SetConditions sets the Status Conditions

func (*KongVault) SetControlPlaneID added in v0.0.13

func (obj *KongVault) SetControlPlaneID(id string)

SetControlPlaneID sets the ControlPlane ID in the KongVault status.

func (*KongVault) SetKonnectID added in v0.0.13

func (obj *KongVault) SetKonnectID(id string)

SetKonnectID sets the Konnect ID in the KongVault status.

type KongVaultList

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

KongVaultList contains a list of KongVault.

func (*KongVaultList) DeepCopy

func (in *KongVaultList) DeepCopy() *KongVaultList

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

func (*KongVaultList) DeepCopyInto

func (in *KongVaultList) DeepCopyInto(out *KongVaultList)

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

func (*KongVaultList) DeepCopyObject

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

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

type KongVaultSpec

type KongVaultSpec struct {
	// Backend is the type of the backend storing the secrets in the vault.
	// The supported backends of Kong is listed here:
	// https://docs.konghq.com/gateway/latest/kong-enterprise/secrets-management/backends/
	// +kubebuilder:validation:MinLength=1
	Backend string `json:"backend"`
	// Prefix is the prefix of vault URI for referencing values in the vault.
	// It is immutable after created.
	// +kubebuilder:validation:MinLength=1
	Prefix string `json:"prefix"`
	// Description is the additional information about the vault.
	Description string `json:"description,omitempty"`
	// Config is the configuration of the vault. Varies for different backends.
	Config apiextensionsv1.JSON `json:"config,omitempty"`
	// Tags are the tags associated to the vault for grouping and filtering.
	Tags []string `json:"tags,omitempty"`
	// ControlPlaneRef is a reference to a Konnect ControlPlane this KongVault is associated with.
	// +optional
	ControlPlaneRef *ControlPlaneRef `json:"controlPlaneRef,omitempty"`
}

KongVaultSpec defines specification of a custom Kong vault.

func (*KongVaultSpec) DeepCopy

func (in *KongVaultSpec) DeepCopy() *KongVaultSpec

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

func (*KongVaultSpec) DeepCopyInto

func (in *KongVaultSpec) DeepCopyInto(out *KongVaultSpec)

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

type KongVaultStatus

type KongVaultStatus struct {
	// Konnect contains the Konnect entity status.
	// +optional
	Konnect *konnectv1alpha1.KonnectEntityStatusWithControlPlaneRef `json:"konnect,omitempty"`

	// Conditions describe the current conditions of the KongVaultStatus.
	//
	// Known condition types are:
	//
	// * "Programmed"
	//
	// +listType=map
	// +listMapKey=type
	// +kubebuilder:validation:MaxItems=8
	// +kubebuilder:default={{type: "Programmed", status: "Unknown", reason:"Pending", message:"Waiting for controller", lastTransitionTime: "1970-01-01T00:00:00Z"}}
	Conditions []metav1.Condition `json:"conditions"`
}

KongVaultStatus represents the current status of the KongVault resource.

func (*KongVaultStatus) DeepCopy

func (in *KongVaultStatus) DeepCopy() *KongVaultStatus

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

func (*KongVaultStatus) DeepCopyInto

func (in *KongVaultStatus) DeepCopyInto(out *KongVaultStatus)

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

type KonnectNamespacedRef

type KonnectNamespacedRef struct {
	// Name is the name of the Konnect Control Plane.
	// +kubebuilder:validation:Required
	Name string `json:"name"`

	// Namespace is the namespace where the Konnect Control Plane is in.
	// Currently only cluster scoped resources (KongVault) are allowed to set `konnectNamespacedRef.namespace`.
	//
	// +optional
	Namespace string `json:"namespace,omitempty"`
}

KonnectNamespacedRef is the schema for the KonnectNamespacedRef type.

func (*KonnectNamespacedRef) DeepCopy

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

func (*KonnectNamespacedRef) DeepCopyInto

func (in *KonnectNamespacedRef) DeepCopyInto(out *KonnectNamespacedRef)

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

type Namespace

type Namespace string

Namespace refers to a Kubernetes namespace. It must be a RFC 1123 label. +kubebuilder:validation:Pattern=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?$` +kubebuilder:validation:MinLength=1 +kubebuilder:validation:MaxLength=63

type NamespacedServiceRef

type NamespacedServiceRef struct {
	// +kubebuilder:validation:Required
	Name string `json:"name"`

	// +kubebuilder:validation:Optional
	Namespace string `json:"namespace,omitempty"`
}

func (*NamespacedServiceRef) DeepCopy

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

func (*NamespacedServiceRef) DeepCopyInto

func (in *NamespacedServiceRef) DeepCopyInto(out *NamespacedServiceRef)

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

type ObjectName

type ObjectName string

ObjectName refers to the name of a Kubernetes object. Object names can have a variety of forms, including RFC1123 subdomains, RFC 1123 labels, or RFC 1035 labels.

+kubebuilder:validation:MinLength=1 +kubebuilder:validation:MaxLength=253

type ObjectReference

type ObjectReference struct {
	Group *string `json:"group,omitempty"`
	Kind  *string `json:"kind,omitempty"`
	// Empty namespace means the same namespace of the owning object.
	Namespace *string `json:"namespace,omitempty"`
	Name      string  `json:"name"`
}

ObjectReference defines reference of a kubernetes object.

func (*ObjectReference) DeepCopy

func (in *ObjectReference) DeepCopy() *ObjectReference

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

func (*ObjectReference) DeepCopyInto

func (in *ObjectReference) DeepCopyInto(out *ObjectReference)

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

type PEMKeyPair added in v0.0.16

type PEMKeyPair struct {
	// The private key in PEM format.
	// +kubebuilder:validation:MinLength=1
	PrivateKey string `json:"private_key"`

	// The public key in PEM format.
	// +kubebuilder:validation:MinLength=1
	PublicKey string `json:"public_key"`
}

PEMKeyPair defines a keypair in PEM format.

func (*PEMKeyPair) DeepCopy added in v0.0.16

func (in *PEMKeyPair) DeepCopy() *PEMKeyPair

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

func (*PEMKeyPair) DeepCopyInto added in v0.0.16

func (in *PEMKeyPair) DeepCopyInto(out *PEMKeyPair)

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

type PluginRef

type PluginRef struct {

	// Name is the name of the KongPlugin or KongClusterPlugin resource.
	// +kubebuilder:validation:Required
	Name string `json:"name"`

	// Kind can be KongPlugin or KongClusterPlugin. If not set, it is assumed to be KongPlugin.
	// +kubebuilder:validation:Enum=KongPlugin;KongClusterPlugin
	// +kubebuilder:default:=KongPlugin
	Kind *string `json:"kind,omitempty"`
}

PluginRef is a reference to a KongPlugin or KongClusterPlugin resource.

func (*PluginRef) DeepCopy

func (in *PluginRef) DeepCopy() *PluginRef

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

func (*PluginRef) DeepCopyInto

func (in *PluginRef) DeepCopyInto(out *PluginRef)

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

type ServiceRef

type ServiceRef struct {
	// Type can be one of:
	// - namespacedRef
	Type string `json:"type,omitempty"`

	// NamespacedRef is a reference to a KongService.
	NamespacedRef *NamespacedServiceRef `json:"namespacedRef,omitempty"`
}

ServiceRef is a reference to a KongService. +kubebuilder:validation:XValidation:rule="self.type == 'namespacedRef' ? has(self.namespacedRef) : true", message="when type is namespacedRef, namespacedRef must be set"

func (*ServiceRef) DeepCopy

func (in *ServiceRef) DeepCopy() *ServiceRef

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

func (*ServiceRef) DeepCopyInto

func (in *ServiceRef) DeepCopyInto(out *ServiceRef)

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

type TargetRef added in v0.0.2

type TargetRef struct {
	// Name is the name of the entity.
	// +kubebuilder:validation:Required
	Name string `json:"name"`
}

TargetRef is a reference based on the object's name.

func (*TargetRef) DeepCopy added in v0.0.2

func (in *TargetRef) DeepCopy() *TargetRef

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

func (*TargetRef) DeepCopyInto added in v0.0.2

func (in *TargetRef) DeepCopyInto(out *TargetRef)

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

type TargetRefWithGroupKind added in v0.0.2

type TargetRefWithGroupKind struct {
	// Name is the name of the entity.
	// +kubebuilder:validation:Required
	Name string `json:"name"`

	// +kubebuilder:validation:Enum=Service;Ingress;HTTPRoute;GRPCRoute;KongService;KongRoute
	Kind string `json:"kind"`

	// +kubebuilder:validation:Enum="";core;networking.k8s.io;gateway.networking.k8s.io;configuration.konghq.com
	Group string `json:"group"`
}

TargetRefWithGroupKind is a reference based on the object's group, kind, and name.

func (*TargetRefWithGroupKind) DeepCopy added in v0.0.2

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

func (*TargetRefWithGroupKind) DeepCopyInto added in v0.0.2

func (in *TargetRefWithGroupKind) DeepCopyInto(out *TargetRefWithGroupKind)

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