v1alpha1

package
v3.1.4 Latest Latest
Warning

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

Go to latest
Published: Apr 26, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

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

Index

Constants

View Source
const (
	// KongServiceFacadeKind is the string value representing the KongServiceFacade kind in Kubernetes.
	KongServiceFacadeKind = "KongServiceFacade"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "incubator.ingress-controller.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 KongServiceFacade

type KongServiceFacade struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              KongServiceFacadeSpec   `json:"spec"`
	Status            KongServiceFacadeStatus `json:"status,omitempty"`
}

KongServiceFacade allows creating separate Kong Services for a single Kubernetes Service. It can be used as Kubernetes Ingress' backend (via its path's `backend.resource` field). It's designed to enable creating two "virtual" Services in Kong that will point to the same Kubernetes Service, but will have different configuration (e.g. different set of plugins, different load balancing algorithm, etc.).

KongServiceFacade requires `kubernetes.io/ingress.class` annotation with a value matching the ingressClass of the Kong Ingress Controller (`kong` by default) to be reconciled.

+genclient +kubebuilder:object:root=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:categories=kong-ingress-controller +kubebuilder:subresource:status +kubebuilder:storageversion

func (*KongServiceFacade) DeepCopy

func (in *KongServiceFacade) DeepCopy() *KongServiceFacade

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

func (*KongServiceFacade) DeepCopyInto

func (in *KongServiceFacade) DeepCopyInto(out *KongServiceFacade)

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

func (*KongServiceFacade) DeepCopyObject

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

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

type KongServiceFacadeBackend

type KongServiceFacadeBackend struct {
	// Name is the name of the referenced Kubernetes Service.
	// +kubebuilder:validation:Required
	Name string `json:"name"`

	// Port is the port of the referenced Kubernetes Service.
	// +kubebuilder:validation:Required
	Port int32 `json:"port"`
}

KongServiceFacadeBackend is a reference to a Kubernetes Service that is used as a backend for a Kong Service Facade.

func (*KongServiceFacadeBackend) DeepCopy

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

func (*KongServiceFacadeBackend) DeepCopyInto

func (in *KongServiceFacadeBackend) DeepCopyInto(out *KongServiceFacadeBackend)

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

type KongServiceFacadeList

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

KongServiceFacadeList contains a list of KongServiceFacade. +kubebuilder:object:root=true

func (*KongServiceFacadeList) DeepCopy

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

func (*KongServiceFacadeList) DeepCopyInto

func (in *KongServiceFacadeList) DeepCopyInto(out *KongServiceFacadeList)

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

func (*KongServiceFacadeList) DeepCopyObject

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

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

type KongServiceFacadeSpec

type KongServiceFacadeSpec struct {
	// Backend is a reference to a Kubernetes Service that is used as a backend
	// for this Kong Service Facade.
	// +kubebuilder:validation:Required
	Backend KongServiceFacadeBackend `json:"backendRef"`
}

KongServiceFacadeSpec defines the desired state of KongServiceFacade.

func (*KongServiceFacadeSpec) DeepCopy

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

func (*KongServiceFacadeSpec) DeepCopyInto

func (in *KongServiceFacadeSpec) DeepCopyInto(out *KongServiceFacadeSpec)

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

type KongServiceFacadeStatus

type KongServiceFacadeStatus struct {
	// Conditions describe the current conditions of the KongServiceFacade.
	//
	// 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,omitempty"`
}

KongServiceFacadeStatus defines the observed state of KongServiceFacade.

func (*KongServiceFacadeStatus) DeepCopy

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

func (*KongServiceFacadeStatus) DeepCopyInto

func (in *KongServiceFacadeStatus) DeepCopyInto(out *KongServiceFacadeStatus)

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