trafficrouting

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2023 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Manager

type Manager struct {
	client.Client
}

Manager responsible for adjusting network resources such as Service, Ingress, Gateway API, etc., to achieve traffic grayscale.

func NewTrafficRoutingManager

func NewTrafficRoutingManager(c client.Client) *Manager

func (*Manager) DoTrafficRouting

func (m *Manager) DoTrafficRouting(c *TrafficRoutingContext) (bool, error)

func (*Manager) FinalisingTrafficRouting

func (m *Manager) FinalisingTrafficRouting(c *TrafficRoutingContext, onlyRestoreStableService bool) (bool, error)

func (*Manager) InitializeTrafficRouting

func (m *Manager) InitializeTrafficRouting(c *TrafficRoutingContext) error

InitializeTrafficRouting determine if the network resources(service & ingress & gateway api) exist. If it is Ingress, init method will create the canary ingress resources, and set weight=0.

type TrafficRoutingContext added in v0.4.0

type TrafficRoutingContext struct {
	// only for log info
	Key       string
	Namespace string
	ObjectRef []v1beta1.TrafficRoutingRef
	Strategy  v1beta1.TrafficRoutingStrategy
	// OnlyTrafficRouting
	OnlyTrafficRouting bool
	OwnerRef           metav1.OwnerReference
	// workload.RevisionLabelKey
	RevisionLabelKey string
	// status.CanaryStatus.StableRevision
	StableRevision string
	// status.CanaryStatus.PodTemplateHash
	CanaryRevision string
	// newStatus.canaryStatus.LastUpdateTime
	LastUpdateTime *metav1.Time
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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