routechecks

package
v1.16.0 Latest Latest
Warning

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

Go to latest
Published: Jul 24, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckAgainstCrossNamespaceBackendReferences

func CheckAgainstCrossNamespaceBackendReferences(input Input) (bool, error)

func CheckBackend added in v1.16.0

func CheckBackend(input Input) (bool, error)

func CheckBackendIsExistingService

func CheckBackendIsExistingService(input Input) (bool, error)

func CheckGammaServiceAllowedForNamespace added in v1.16.0

func CheckGammaServiceAllowedForNamespace(input Input, parentRef gatewayv1.ParentReference) (bool, error)

func CheckGatewayAllowedForNamespace

func CheckGatewayAllowedForNamespace(input Input, parentRef gatewayv1.ParentReference) (bool, error)

func CheckGatewayMatchingHostnames

func CheckGatewayMatchingHostnames(input Input, parentRef gatewayv1.ParentReference) (bool, error)

func CheckGatewayMatchingPorts

func CheckGatewayMatchingPorts(input Input, parentRef gatewayv1.ParentReference) (bool, error)

func CheckGatewayMatchingSection

func CheckGatewayMatchingSection(input Input, parentRef gatewayv1.ParentReference) (bool, error)

func CheckGatewayRouteKindAllowed

func CheckGatewayRouteKindAllowed(input Input, parentRef gatewayv1.ParentReference) (bool, error)

func CheckHasServiceImportSupport added in v1.16.0

func CheckHasServiceImportSupport(input Input) (bool, error)

func GetAllListenerHostNames added in v1.16.0

func GetAllListenerHostNames(listeners []gatewayv1.Listener) []gatewayv1.Hostname

Types

type CheckParentFunc added in v1.16.0

type CheckParentFunc func(input Input, ref gatewayv1.ParentReference) (bool, error)

type CheckRuleFunc

type CheckRuleFunc func(input Input) (bool, error)

type GRPCRouteInput added in v1.15.0

type GRPCRouteInput struct {
	Ctx       context.Context
	Logger    *logrus.Entry
	Client    client.Client
	Grants    *gatewayv1beta1.ReferenceGrantList
	GRPCRoute *gatewayv1.GRPCRoute
	// contains filtered or unexported fields
}

GRPCRouteInput is used to implement the Input interface for GRPCRoute

func (*GRPCRouteInput) GetClient added in v1.15.0

func (g *GRPCRouteInput) GetClient() client.Client

func (*GRPCRouteInput) GetContext added in v1.15.0

func (g *GRPCRouteInput) GetContext() context.Context

func (*GRPCRouteInput) GetGVK added in v1.15.0

func (*GRPCRouteInput) GetGateway added in v1.15.0

func (g *GRPCRouteInput) GetGateway(parent gatewayv1.ParentReference) (*gatewayv1.Gateway, error)

func (*GRPCRouteInput) GetGrants added in v1.15.0

func (g *GRPCRouteInput) GetGrants() []gatewayv1beta1.ReferenceGrant

func (*GRPCRouteInput) GetHostnames added in v1.15.0

func (g *GRPCRouteInput) GetHostnames() []gatewayv1beta1.Hostname

func (*GRPCRouteInput) GetNamespace added in v1.15.0

func (g *GRPCRouteInput) GetNamespace() string

func (*GRPCRouteInput) GetParentGammaService added in v1.16.0

func (g *GRPCRouteInput) GetParentGammaService(parent gatewayv1.ParentReference) (*corev1.Service, error)

func (*GRPCRouteInput) GetRules added in v1.15.0

func (g *GRPCRouteInput) GetRules() []GenericRule

func (*GRPCRouteInput) Log added in v1.15.0

func (g *GRPCRouteInput) Log() *logrus.Entry

func (*GRPCRouteInput) SetAllParentCondition added in v1.15.0

func (g *GRPCRouteInput) SetAllParentCondition(condition metav1.Condition)

func (*GRPCRouteInput) SetParentCondition added in v1.15.0

func (g *GRPCRouteInput) SetParentCondition(ref gatewayv1beta1.ParentReference, condition metav1.Condition)

type GRPCRouteRule added in v1.15.0

type GRPCRouteRule struct {
	Rule gatewayv1.GRPCRouteRule
}

GRPCRouteRule is used to implement the GenericRule interface for GRPCRoute

func (*GRPCRouteRule) GetBackendRefs added in v1.15.0

func (g *GRPCRouteRule) GetBackendRefs() []gatewayv1.BackendRef

type GenericRule

type GenericRule interface {
	GetBackendRefs() []gatewayv1.BackendRef
}

type HTTPRouteInput

type HTTPRouteInput struct {
	Ctx       context.Context
	Logger    *logrus.Entry
	Client    client.Client
	Grants    *gatewayv1beta1.ReferenceGrantList
	HTTPRoute *gatewayv1.HTTPRoute
	// contains filtered or unexported fields
}

HTTPRouteInput is used to implement the Input interface for HTTPRoute

func (*HTTPRouteInput) GetClient

func (h *HTTPRouteInput) GetClient() client.Client

func (*HTTPRouteInput) GetContext

func (h *HTTPRouteInput) GetContext() context.Context

func (*HTTPRouteInput) GetGVK

func (*HTTPRouteInput) GetGateway

func (h *HTTPRouteInput) GetGateway(parent gatewayv1.ParentReference) (*gatewayv1.Gateway, error)

func (*HTTPRouteInput) GetGrants

func (h *HTTPRouteInput) GetGrants() []gatewayv1beta1.ReferenceGrant

func (*HTTPRouteInput) GetHostnames

func (h *HTTPRouteInput) GetHostnames() []gatewayv1.Hostname

func (*HTTPRouteInput) GetNamespace

func (h *HTTPRouteInput) GetNamespace() string

func (*HTTPRouteInput) GetParentGammaService added in v1.16.0

func (h *HTTPRouteInput) GetParentGammaService(parent gatewayv1.ParentReference) (*corev1.Service, error)

func (*HTTPRouteInput) GetRules

func (h *HTTPRouteInput) GetRules() []GenericRule

func (*HTTPRouteInput) Log

func (h *HTTPRouteInput) Log() *logrus.Entry

func (*HTTPRouteInput) SetAllParentCondition

func (h *HTTPRouteInput) SetAllParentCondition(condition metav1.Condition)

func (*HTTPRouteInput) SetParentCondition

func (h *HTTPRouteInput) SetParentCondition(ref gatewayv1.ParentReference, condition metav1.Condition)

type HTTPRouteRule

type HTTPRouteRule struct {
	Rule gatewayv1.HTTPRouteRule
}

HTTPRouteRule is used to implement the GenericRule interface for TLSRoute

func (*HTTPRouteRule) GetBackendRefs

func (t *HTTPRouteRule) GetBackendRefs() []gatewayv1.BackendRef

type Input

type Input interface {
	GetRules() []GenericRule
	GetNamespace() string
	GetClient() client.Client
	GetContext() context.Context
	GetGVK() schema.GroupVersionKind
	GetGrants() []gatewayv1beta1.ReferenceGrant
	GetGateway(parent gatewayv1.ParentReference) (*gatewayv1.Gateway, error)
	GetParentGammaService(parent gatewayv1.ParentReference) (*corev1.Service, error)
	GetHostnames() []gatewayv1.Hostname

	SetParentCondition(ref gatewayv1.ParentReference, condition metav1.Condition)
	SetAllParentCondition(condition metav1.Condition)
	Log() *logrus.Entry
}

type TLSRouteInput

type TLSRouteInput struct {
	Ctx      context.Context
	Logger   *logrus.Entry
	Client   client.Client
	Grants   *gatewayv1beta1.ReferenceGrantList
	TLSRoute *gatewayv1alpha2.TLSRoute
	// contains filtered or unexported fields
}

TLSRouteInput is used to implement the Input interface for TLSRoute

func (*TLSRouteInput) GetClient

func (t *TLSRouteInput) GetClient() client.Client

func (*TLSRouteInput) GetContext

func (t *TLSRouteInput) GetContext() context.Context

func (*TLSRouteInput) GetGVK

func (*TLSRouteInput) GetGateway

func (t *TLSRouteInput) GetGateway(parent gatewayv1.ParentReference) (*gatewayv1.Gateway, error)

func (*TLSRouteInput) GetGrants

func (t *TLSRouteInput) GetGrants() []gatewayv1beta1.ReferenceGrant

func (*TLSRouteInput) GetHostnames

func (t *TLSRouteInput) GetHostnames() []gatewayv1.Hostname

func (*TLSRouteInput) GetNamespace

func (t *TLSRouteInput) GetNamespace() string

func (*TLSRouteInput) GetParentGammaService added in v1.16.0

func (t *TLSRouteInput) GetParentGammaService(parent gatewayv1.ParentReference) (*corev1.Service, error)

func (*TLSRouteInput) GetRules

func (t *TLSRouteInput) GetRules() []GenericRule

func (*TLSRouteInput) Log

func (t *TLSRouteInput) Log() *logrus.Entry

func (*TLSRouteInput) SetAllParentCondition

func (t *TLSRouteInput) SetAllParentCondition(condition metav1.Condition)

func (*TLSRouteInput) SetParentCondition

func (t *TLSRouteInput) SetParentCondition(ref gatewayv1.ParentReference, condition metav1.Condition)

type TLSRouteRule

type TLSRouteRule struct {
	Rule gatewayv1alpha2.TLSRouteRule
}

TLSRouteRule is used to implement the GenericRule interface for TLSRoute

func (*TLSRouteRule) GetBackendRefs

func (t *TLSRouteRule) GetBackendRefs() []gatewayv1.BackendRef

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL