Documentation
¶
Index ¶
- Constants
- Variables
- type BackendRef
- type Gateway
- type GatewayAddress
- type GatewayClass
- type GatewayClassReconciler
- type GatewayReconciler
- type Group
- type HTTPRoute
- type HTTPRouteReconciler
- type Hostname
- type Kind
- type Listener
- type ListenerStatus
- type ListenerTracker
- type Namespace
- type ObjectName
- type ParentReference
- type PortNumber
- type ProtocolType
- type ReferenceGrantReconciler
- type RouteParentStatus
- type SectionName
- type TCPRoute
- type TCPRouteReconciler
- type TLSRoute
- type TLSRouteReconciler
- type UDPRoute
- type UDPRouteReconciler
Constants ¶
const ( HTTPProtocolType = gatewayv1beta1.HTTPProtocolType HTTPSProtocolType = gatewayv1beta1.HTTPSProtocolType TLSProtocolType = gatewayv1beta1.TLSProtocolType TCPProtocolType = gatewayv1beta1.TCPProtocolType UDPProtocolType = gatewayv1beta1.UDPProtocolType )
const ( // This reason is used with the "Accepted" condition when there are // no matching Parents. In the case of Gateways, this can occur when // a Route ParentRef specifies a Port and/or SectionName that does not // match any Listeners in the Gateway. // // NOTE: This is already in uptsream, albeit unreleased: // https://github.com/kubernetes-sigs/gateway-api/pull/1516 // TODO: swap this out with upstream const when released. RouteReasonNoMatchingParent gatewayv1beta1.RouteConditionReason = "NoMatchingParent" )
Variables ¶
var ControllerName gatewayv1beta1.GatewayController = "konghq.com/kic-gateway-controller"
ControllerName is the unique identifier for this controller and is used within GatewayClass resources to indicate that this controller should support connected Gateway resources.
var ErrNoMatchingListenerHostname = fmt.Errorf("no matching hostnames in listener")
var (
ErrUnmanagedAnnotation = errors.New("invalid unmanaged annotation value")
)
Functions ¶
This section is empty.
Types ¶
type BackendRef ¶ added in v2.8.0
type BackendRef = gatewayv1beta1.BackendRef
type Gateway ¶ added in v2.6.0
type Gateway = gatewayv1beta1.Gateway
type GatewayAddress ¶ added in v2.6.0
type GatewayAddress = gatewayv1beta1.GatewayAddress
type GatewayClass ¶ added in v2.6.0
type GatewayClass = gatewayv1beta1.GatewayClass
type GatewayClassReconciler ¶ added in v2.3.0
type GatewayClassReconciler struct { client.Client Log logr.Logger Scheme *runtime.Scheme CacheSyncTimeout time.Duration }
GatewayClassReconciler reconciles a GatewayClass object.
func (*GatewayClassReconciler) GatewayClassIsUnmanaged ¶ added in v2.6.0
func (r *GatewayClassReconciler) GatewayClassIsUnmanaged(obj client.Object) bool
GatewayClassIsUnmanaged is a watch predicate which filters out reconciliation events for gateway objects which aren't annotated as unmanaged.
func (*GatewayClassReconciler) Reconcile ¶ added in v2.3.0
func (r *GatewayClassReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)
Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.
func (*GatewayClassReconciler) SetupWithManager ¶ added in v2.3.0
func (r *GatewayClassReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type GatewayReconciler ¶
type GatewayReconciler struct { client.Client Log logr.Logger Scheme *runtime.Scheme DataplaneClient *dataplane.KongClient PublishService string WatchNamespaces []string // If EnableReferenceGrant is true, controller will watch ReferenceGrants // to invalidate or allow cross-namespace TLSConfigs in gateways. EnableReferenceGrant bool CacheSyncTimeout time.Duration ReferenceIndexers ctrlref.CacheIndexers // contains filtered or unexported fields }
GatewayReconciler reconciles a Gateway object.
func (*GatewayReconciler) Reconcile ¶
Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.
func (*GatewayReconciler) SetupWithManager ¶
func (r *GatewayReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type Group ¶ added in v2.6.0
type Group = gatewayv1beta1.Group
type HTTPRoute ¶ added in v2.6.0
type HTTPRoute = gatewayv1beta1.HTTPRoute
type HTTPRouteReconciler ¶
type HTTPRouteReconciler struct { client.Client Log logr.Logger Scheme *runtime.Scheme DataplaneClient *dataplane.KongClient // If EnableReferenceGrant is true, we will check for ReferenceGrant if backend in another // namespace is in backendRefs. // If it is false, referencing backend in different namespace will be rejected. EnableReferenceGrant bool CacheSyncTimeout time.Duration }
HTTPRouteReconciler reconciles an HTTPRoute object.
func (*HTTPRouteReconciler) Reconcile ¶
Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.
func (*HTTPRouteReconciler) SetupWithManager ¶
func (r *HTTPRouteReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type Hostname ¶ added in v2.6.0
type Hostname = gatewayv1beta1.Hostname
type Kind ¶ added in v2.6.0
type Kind = gatewayv1beta1.Kind
type Listener ¶ added in v2.6.0
type Listener = gatewayv1beta1.Listener
type ListenerStatus ¶ added in v2.6.0
type ListenerStatus = gatewayv1beta1.ListenerStatus
type ListenerTracker ¶ added in v2.5.0
type ListenerTracker struct { // actual listeners Listeners map[SectionName]Listener // statuses Statuses map[SectionName]ListenerStatus // contains filtered or unexported fields }
ListenerTracker holds Gateway Listeners and their statuses, and provides methods to update statuses upon reconciliation.
func NewListenerTracker ¶ added in v2.5.0
func NewListenerTracker() ListenerTracker
NewListenerTracker returns a ListenerTracker with empty maps.
type Namespace ¶ added in v2.6.0
type Namespace = gatewayv1beta1.Namespace
type ObjectName ¶ added in v2.6.0
type ObjectName = gatewayv1beta1.ObjectName
type ParentReference ¶ added in v2.6.0
type ParentReference = gatewayv1beta1.ParentReference
type PortNumber ¶ added in v2.6.0
type PortNumber = gatewayv1beta1.PortNumber
type ProtocolType ¶ added in v2.6.0
type ProtocolType = gatewayv1beta1.ProtocolType
type ReferenceGrantReconciler ¶ added in v2.6.0
type ReferenceGrantReconciler struct { client.Client Log logr.Logger Scheme *runtime.Scheme DataplaneClient *dataplane.KongClient PublishService string WatchNamespaces []string CacheSyncTimeout time.Duration }
ReferenceGrantReconciler reconciles a ReferenceGrant object.
func (*ReferenceGrantReconciler) Reconcile ¶ added in v2.6.0
func (r *ReferenceGrantReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)
Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.
func (*ReferenceGrantReconciler) SetupWithManager ¶ added in v2.6.0
func (r *ReferenceGrantReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type RouteParentStatus ¶ added in v2.6.0
type RouteParentStatus = gatewayv1beta1.RouteParentStatus
type SectionName ¶ added in v2.6.0
type SectionName = gatewayv1beta1.SectionName
type TCPRoute ¶ added in v2.8.0
type TCPRoute = gatewayv1alpha2.TCPRoute
type TCPRouteReconciler ¶ added in v2.4.0
type TCPRouteReconciler struct { client.Client Log logr.Logger Scheme *runtime.Scheme DataplaneClient *dataplane.KongClient CacheSyncTimeout time.Duration }
TCPRouteReconciler reconciles an TCPRoute object.
func (*TCPRouteReconciler) Reconcile ¶ added in v2.4.0
Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.
func (*TCPRouteReconciler) SetupWithManager ¶ added in v2.4.0
func (r *TCPRouteReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type TLSRoute ¶ added in v2.8.0
type TLSRoute = gatewayv1alpha2.TLSRoute
type TLSRouteReconciler ¶ added in v2.4.0
type TLSRouteReconciler struct { client.Client Log logr.Logger Scheme *runtime.Scheme DataplaneClient *dataplane.KongClient CacheSyncTimeout time.Duration }
TLSRouteReconciler reconciles an TLSRoute object.
func (*TLSRouteReconciler) Reconcile ¶ added in v2.4.0
Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.
func (*TLSRouteReconciler) SetupWithManager ¶ added in v2.4.0
func (r *TLSRouteReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.
type UDPRoute ¶ added in v2.8.0
type UDPRoute = gatewayv1alpha2.UDPRoute
type UDPRouteReconciler ¶ added in v2.3.0
type UDPRouteReconciler struct { client.Client Log logr.Logger Scheme *runtime.Scheme DataplaneClient *dataplane.KongClient CacheSyncTimeout time.Duration }
UDPRouteReconciler reconciles an UDPRoute object.
func (*UDPRouteReconciler) Reconcile ¶ added in v2.3.0
Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.
func (*UDPRouteReconciler) SetupWithManager ¶ added in v2.3.0
func (r *UDPRouteReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager.