status

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Jul 17, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Clock

type Clock interface {
	Now() metav1.Time
}

Clock returns the current local time.

type GatewayClassStatus

type GatewayClassStatus struct {
	Conditions         []conditions.Condition
	ObservedGeneration int64
}

GatewayClassStatus holds status-related information about the GatewayClass resource.

type GatewayClassStatuses

type GatewayClassStatuses map[types.NamespacedName]GatewayClassStatus

GatewayClassStatuses holds the statuses of GatewayClasses where the key is the namespaced name of a GatewayClass.

type GatewayStatus

type GatewayStatus struct {
	// ListenerStatuses holds the statuses of listeners defined on the Gateway.
	ListenerStatuses ListenerStatuses
	// Conditions is the list of conditions for this Gateway.
	Conditions []conditions.Condition
	// ObservedGeneration is the generation of the resource that was processed.
	ObservedGeneration int64
}

GatewayStatus holds the status of the winning Gateway resource.

type GatewayStatuses

type GatewayStatuses map[types.NamespacedName]GatewayStatus

GatewayStatuses holds the statuses of Gateways where the key is the namespaced name of a Gateway.

type HTTPRouteStatus

type HTTPRouteStatus struct {
	// ParentStatuses holds the statuses for parentRefs of the HTTPRoute.
	ParentStatuses []ParentStatus
	// ObservedGeneration is the generation of the resource that was processed.
	ObservedGeneration int64
}

HTTPRouteStatus holds the status-related information about an HTTPRoute resource.

type HTTPRouteStatuses

type HTTPRouteStatuses map[types.NamespacedName]HTTPRouteStatus

HTTPRouteStatuses holds the statuses of HTTPRoutes where the key is the namespaced name of an HTTPRoute.

type ListenerStatus

type ListenerStatus struct {
	// Conditions is the list of conditions for this listener.
	Conditions []conditions.Condition
	// SupportedKinds is the list of SupportedKinds for this listener.
	SupportedKinds []v1beta1.RouteGroupKind
	// AttachedRoutes is the number of routes attached to the listener.
	AttachedRoutes int32
}

ListenerStatus holds the status-related information about a listener in the Gateway resource.

type ListenerStatuses

type ListenerStatuses map[string]ListenerStatus

ListenerStatuses holds the statuses of listeners where the key is the name of a listener in the Gateway resource.

type ParentStatus

type ParentStatus struct {
	// GatewayNsName is the Namespaced name of the Gateway, which the parentRef references.
	GatewayNsName types.NamespacedName
	// SectionName is the SectionName of the parentRef.
	SectionName *v1beta1.SectionName
	// Conditions is the list of conditions that are relevant to the parentRef.
	Conditions []conditions.Condition
}

ParentStatus holds status-related information related to how the HTTPRoute binds to a specific parentRef.

type RealClock

type RealClock struct{}

RealClock returns the current local time.

func NewRealClock

func NewRealClock() *RealClock

NewRealClock creates a new RealClock.

func (*RealClock) Now

func (c *RealClock) Now() metav1.Time

Now returns the current local time.

type Statuses

type Statuses struct {
	GatewayClassStatuses GatewayClassStatuses
	GatewayStatuses      GatewayStatuses
	HTTPRouteStatuses    HTTPRouteStatuses
}

Statuses holds the status-related information about Gateway API resources.

type Updater

type Updater interface {
	// Update updates the statuses of the resources.
	Update(context.Context, Statuses)
}

Updater updates statuses of the Gateway API resources.

func NewUpdater

func NewUpdater(cfg UpdaterConfig) Updater

NewUpdater creates a new Updater.

type UpdaterConfig

type UpdaterConfig struct {
	// Client is a Kubernetes API client.
	Client client.Client
	// Clock is used as a source of time for the LastTransitionTime field in Conditions in resource statuses.
	Clock Clock
	// Logger holds a logger to be used.
	Logger logr.Logger
	// GatewayCtlrName is the name of the Gateway controller.
	GatewayCtlrName string
	// GatewayClassName is the name of the GatewayClass resource.
	GatewayClassName string
	// PodIP is the IP address of this Pod.
	PodIP string
	// UpdateGatewayClassStatus enables updating the status of the GatewayClass resource.
	UpdateGatewayClassStatus bool
}

UpdaterConfig holds configuration parameters for Updater.

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

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