contour

package
v1.32.2 Latest Latest
Warning

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

Go to latest
Published: Dec 22, 2025 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package contour contains the translation business logic that listens to Kubernetes ResourceEventHandler events and translates those into additions/deletions in caches connected to the Envoy xDS gRPC API server.

Package contour contains the translation business logic that listens to Kubernetes ResourceEventHandler events and translates those into additions/deletions in caches connected to the Envoy xDS gRPC API server.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type EventHandler added in v1.0.0

type EventHandler struct {
	logrus.FieldLogger
	// contains filtered or unexported fields
}

EventHandler implements cache.ResourceEventHandler, filters k8s events towards a dag.Builder and calls through to the Observer to notify it that a new DAG is available.

func NewEventHandler added in v1.20.0

func NewEventHandler(config EventHandlerConfig, upstreamHasSynced cache.InformerSynced) *EventHandler

func (*EventHandler) HasBuiltInitialDag added in v1.27.0

func (e *EventHandler) HasBuiltInitialDag() bool

func (*EventHandler) NeedLeaderElection added in v1.20.0

func (e *EventHandler) NeedLeaderElection() bool

NeedLeaderElection is included to implement manager.LeaderElectionRunnable

func (*EventHandler) OnAdd added in v1.0.0

func (e *EventHandler) OnAdd(obj any, isInInitialList bool)

func (*EventHandler) OnDelete added in v1.0.0

func (e *EventHandler) OnDelete(obj any)

func (*EventHandler) OnElectedLeader added in v1.20.0

func (e *EventHandler) OnElectedLeader()

Implements leadership.NeedLeaderElectionNotification

func (*EventHandler) OnUpdate added in v1.0.0

func (e *EventHandler) OnUpdate(oldObj, newObj any)

func (*EventHandler) Sequence added in v1.0.0

func (e *EventHandler) Sequence() <-chan int

Sequence returns a channel that receives a incrementing sequence number for each update processed. The updates may be processed immediately, or delayed by a holdoff timer. In each case a non blocking send to the sequence channel will be made once the resource update is received (note that the DAG is not guaranteed to be called each time).

func (*EventHandler) Start added in v1.0.0

func (e *EventHandler) Start(ctx context.Context) error

type EventHandlerConfig added in v1.20.0

type EventHandlerConfig struct {
	Logger                        logrus.FieldLogger
	Builder                       *dag.Builder
	Observer                      dag.Observer
	HoldoffDelay, HoldoffMaxDelay time.Duration
	StatusUpdater                 k8s.StatusUpdater
}

type EventRecorder added in v1.2.0

type EventRecorder struct {
	Next    cache.ResourceEventHandler
	Counter *prometheus.CounterVec
}

EventRecorder records the count and kind of events forwarded to another ResourceEventHandler.

func (*EventRecorder) OnAdd added in v1.2.0

func (e *EventRecorder) OnAdd(obj any, isInInitialList bool)

func (*EventRecorder) OnDelete added in v1.2.0

func (e *EventRecorder) OnDelete(obj any)

func (*EventRecorder) OnUpdate added in v1.2.0

func (e *EventRecorder) OnUpdate(oldObj, newObj any)

type Observer added in v1.9.0

type Observer interface {
	Refresh()
}

Observer is an interface for receiving notifications.

func ComposeObservers added in v1.9.0

func ComposeObservers(observers ...Observer) Observer

ComposeObservers returns a new Observer that calls each of its arguments in turn.

type ObserverFunc added in v1.9.0

type ObserverFunc func()

ObserverFunc is a function that implements the Observer interface by calling itself. It can be nil.

func (ObserverFunc) Refresh added in v1.9.0

func (f ObserverFunc) Refresh()

type RebuildMetricsObserver added in v1.8.0

type RebuildMetricsObserver struct {
	// contains filtered or unexported fields
}

RebuildMetricsObserver is a dag.Observer that emits metrics for DAG rebuilds.

func NewRebuildMetricsObserver added in v1.20.0

func NewRebuildMetricsObserver(metrics *metrics.Metrics, nextObserver dag.Observer) *RebuildMetricsObserver

func (*RebuildMetricsObserver) OnChange added in v1.8.0

func (m *RebuildMetricsObserver) OnChange(d *dag.DAG)

func (*RebuildMetricsObserver) OnElectedLeader added in v1.20.0

func (m *RebuildMetricsObserver) OnElectedLeader()

Jump to

Keyboard shortcuts

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