router

package
v0.0.0-...-2637031 Latest Latest
Warning

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

Go to latest
Published: Nov 3, 2024 License: Apache-2.0 Imports: 33 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AppMeshRouter

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

AppMeshRouter is managing AppMesh virtual services

func (*AppMeshRouter) GetRoutes

func (ar *AppMeshRouter) GetRoutes(canary *flaggerv1.Canary) (
	primaryWeight int,
	canaryWeight int,
	err error,
)

GetRoutes returns the destinations weight for primary and canary

func (*AppMeshRouter) Reconcile

func (ar *AppMeshRouter) Reconcile(canary *flaggerv1.Canary) error

Reconcile creates or updates App Mesh virtual nodes and virtual services

func (*AppMeshRouter) SetRoutes

func (ar *AppMeshRouter) SetRoutes(
	canary *flaggerv1.Canary,
	primaryWeight int,
	canaryWeight int,
) error

SetRoutes updates the destinations weight for primary and canary

type Factory

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

func NewFactory

func NewFactory(kubeConfig *restclient.Config, kubeClient kubernetes.Interface,
	flaggerClient clientset.Interface,
	logger *zap.SugaredLogger,
	meshClient clientset.Interface) *Factory

func (*Factory) KubernetesRouter

func (factory *Factory) KubernetesRouter(label string, ports *map[string]int32) *KubernetesRouter

KubernetesRouter returns a ClusterIP service router

func (*Factory) MeshRouter

func (factory *Factory) MeshRouter(provider string) Interface

MeshRouter returns a service mesh router

type GlooRouter

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

GlooRouter is managing Istio virtual services

func NewGlooRouter

func NewGlooRouter(ctx context.Context, provider string, flaggerClient clientset.Interface, logger *zap.SugaredLogger, cfg *rest.Config) (*GlooRouter, error)

func NewGlooRouterWithClient

func NewGlooRouterWithClient(ctx context.Context, routingRuleClient gloov1.UpstreamGroupClient, upstreamDiscoveryNs string, logger *zap.SugaredLogger) *GlooRouter

func (*GlooRouter) GetRoutes

func (gr *GlooRouter) GetRoutes(canary *flaggerv1.Canary) (
	primaryWeight int,
	canaryWeight int,
	err error,
)

GetRoutes returns the destinations weight for primary and canary

func (*GlooRouter) Reconcile

func (gr *GlooRouter) Reconcile(canary *flaggerv1.Canary) error

Reconcile creates or updates the Istio virtual service

func (*GlooRouter) SetRoutes

func (gr *GlooRouter) SetRoutes(
	canary *flaggerv1.Canary,
	primaryWeight int,
	canaryWeight int,
) error

SetRoutes updates the destinations weight for primary and canary

type IngressRouter

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

func (*IngressRouter) GetRoutes

func (i *IngressRouter) GetRoutes(canary *flaggerv1.Canary) (
	primaryWeight int,
	canaryWeight int,
	err error,
)

func (*IngressRouter) Reconcile

func (i *IngressRouter) Reconcile(canary *flaggerv1.Canary) error

func (*IngressRouter) SetRoutes

func (i *IngressRouter) SetRoutes(
	canary *flaggerv1.Canary,
	primaryWeight int,
	canaryWeight int,
) error

type Interface

type Interface interface {
	Reconcile(canary *flaggerv1.Canary) error
	SetRoutes(canary *flaggerv1.Canary, primaryWeight int, canaryWeight int) error
	GetRoutes(canary *flaggerv1.Canary) (primaryWeight int, canaryWeight int, err error)
}

type IstioRouter

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

IstioRouter is managing Istio virtual services

func (*IstioRouter) GetRoutes

func (ir *IstioRouter) GetRoutes(canary *flaggerv1.Canary) (
	primaryWeight int,
	canaryWeight int,
	err error,
)

GetRoutes returns the destinations weight for primary and canary

func (*IstioRouter) Reconcile

func (ir *IstioRouter) Reconcile(canary *flaggerv1.Canary) error

Reconcile creates or updates the Istio virtual service and destination rules

func (*IstioRouter) SetRoutes

func (ir *IstioRouter) SetRoutes(
	canary *flaggerv1.Canary,
	primaryWeight int,
	canaryWeight int,
) error

SetRoutes updates the destinations weight for primary and canary

type KubernetesRouter

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

KubernetesRouter is managing ClusterIP services

func (*KubernetesRouter) GetRoutes

func (c *KubernetesRouter) GetRoutes(canary *flaggerv1.Canary) (primaryRoute int, canaryRoute int, err error)

func (*KubernetesRouter) Reconcile

func (c *KubernetesRouter) Reconcile(canary *flaggerv1.Canary) error

Reconcile creates or updates the primary and canary services

func (*KubernetesRouter) SetRoutes

func (c *KubernetesRouter) SetRoutes(canary *flaggerv1.Canary, primaryRoute int, canaryRoute int) error

type NopRouter

type NopRouter struct {
}

NopRouter no-operation router

func (*NopRouter) GetRoutes

func (*NopRouter) GetRoutes(canary *flaggerv1.Canary) (primaryWeight int, canaryWeight int, err error)

func (*NopRouter) Reconcile

func (*NopRouter) Reconcile(canary *flaggerv1.Canary) error

func (*NopRouter) SetRoutes

func (*NopRouter) SetRoutes(canary *flaggerv1.Canary, primaryWeight int, canaryWeight int) error

type SmiRouter

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

func (*SmiRouter) GetRoutes

func (sr *SmiRouter) GetRoutes(canary *flaggerv1.Canary) (
	primaryWeight int,
	canaryWeight int,
	err error,
)

GetRoutes returns the destinations weight for primary and canary

func (*SmiRouter) Reconcile

func (sr *SmiRouter) Reconcile(canary *flaggerv1.Canary) error

Reconcile creates or updates the SMI traffic split

func (*SmiRouter) SetRoutes

func (sr *SmiRouter) SetRoutes(
	canary *flaggerv1.Canary,
	primaryWeight int,
	canaryWeight int,
) error

SetRoutes updates the destinations weight for primary and canary

type SuperglooRouter

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

SuperglooRouter is managing Istio virtual services

func NewSuperglooRouter

func NewSuperglooRouter(ctx context.Context, provider string, flaggerClient clientset.Interface, logger *zap.SugaredLogger, cfg *rest.Config) (*SuperglooRouter, error)

func NewSuperglooRouterWithClient

func NewSuperglooRouterWithClient(ctx context.Context, routingRuleClient supergloov1.RoutingRuleClient, targetMesh solokitcore.ResourceRef, logger *zap.SugaredLogger) *SuperglooRouter

func (*SuperglooRouter) GetRoutes

func (sr *SuperglooRouter) GetRoutes(canary *flaggerv1.Canary) (
	primaryWeight int,
	canaryWeight int,
	err error,
)

GetRoutes returns the destinations weight for primary and canary

func (*SuperglooRouter) Reconcile

func (sr *SuperglooRouter) Reconcile(canary *flaggerv1.Canary) error

Reconcile creates or updates the Istio virtual service

func (*SuperglooRouter) SetRoutes

func (sr *SuperglooRouter) SetRoutes(
	canary *flaggerv1.Canary,
	primaryWeight int,
	canaryWeight int,
) error

SetRoutes updates the destinations weight for primary and canary

Jump to

Keyboard shortcuts

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