service

package
v0.40.4 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateRevRecordsFromRevList

func CreateRevRecordsFromRevList(revList []*servingv1.Revision) (records map[string]resources.RevisionRecord)

CreateRevRecordsFromRevList converts the revision list into a map of revision records.

func LoadConfigFromService

func LoadConfigFromService(annotation map[string]string, serviceAnnotation map[string]string, rolloutConfig *RolloutConfig)

LoadConfigFromService reads the configurations: OverConsumptionRatio and StageRolloutTimeoutMinutes available in the annotation of the knative service.

func NewController

func NewController(
	ctx context.Context,
	cmw configmap.Watcher,
) *controller.Impl

NewController initializes the controller and is called by the generated code Registers eventhandlers to enqueue events

func TransformService

func TransformService(service *servingv1.Service, ro *v1.RolloutOrchestrator, rc *RolloutConfig) *servingv1.Service

Types

type Reconciler

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

Reconciler implements controller.Reconciler for Service resources.

func NewReconciler

func NewReconciler(prclient clientset.Interface, client servingclientset.Interface, configurationLister servinglisters.ConfigurationLister,
	revisionLister servinglisters.RevisionLister, routeLister servinglisters.RouteLister,
	rolloutOrchestratorLister listers.RolloutOrchestratorLister,
	podAutoscalerLister palisters.PodAutoscalerLister, spaLister listers.StagePodAutoscalerLister,
	configmapLister corev1listers.ConfigMapLister,
	deploymentLister appsv1listers.DeploymentLister) *Reconciler

NewReconciler creates the reference to the Reconciler based on servingclientset.Interface, servinglisters.ConfigurationLister, servinglisters.RevisionLister, servinglisters.RouteLister, listers.RolloutOrchestratorLister and palisters.PodAutoscalerLister.

func (*Reconciler) ReconcileKind

func (c *Reconciler) ReconcileKind(ctx context.Context, service *servingv1.Service) pkgreconciler.Event

ReconcileKind implements Interface.ReconcileKind.

type RolloutConfig

type RolloutConfig struct {
	// OverConsumptionRatio sets the percentage about how much resource more than the requested can be used
	// to accomplish the rolling upgrade.
	OverConsumptionRatio int

	// ProgressiveRolloutEnabled is boolean value that determines whether progressive rollout feature is enabled or not.
	ProgressiveRolloutEnabled bool

	// StageRolloutTimeoutMinutes contains the timeout value of minutes to use for each stage to accomplish in the rollout process.
	StageRolloutTimeoutMinutes int

	// RolloutDuration contains the minimal duration in seconds over which the Configuration traffic targets are
	// rolled out to the newest revision
	RolloutDuration string
}

RolloutConfig includes the configuration options for the rollout orchestrator.

func NewConfigFromConfigMapFunc

func NewConfigFromConfigMapFunc(configMap *corev1.ConfigMap, configMapN *corev1.ConfigMap) (*RolloutConfig, error)

NewConfigFromConfigMapFunc reads the configurations: OverConsumptionRatio, ProgressiveRolloutEnabled and StageRolloutTimeoutMinutes available in the configmap.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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