delivery

package
v0.0.0-...-45caf10 Latest Latest
Warning

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

Go to latest
Published: Aug 21, 2020 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ReconcilerName is the name of the reconciler
	ReconcilerName = "Delivery"
	// KCDNamespace is the namespace of this project (KCD = Knative Continuous Delivery)
	KCDNamespace = "knative-serving"
	// KCDName is the name of this project
	KCDName = "knative-continuous-delivery"
	// WaitForReady makes sure that when a newly created Revision becomes ready, it triggers the reconciler
	WaitForReady = 5 * time.Second
	// TimeFormat specifies the format used by time.Parse and time.Format
	TimeFormat = time.RFC3339
)

Variables

This section is empty.

Functions

func NewController

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

NewController returns a controller to be called by generated knative pkg main.

Types

type Policy

type Policy struct {
	// Mode specifies the metric that the policy is based on
	// Possible values are: "time", "request", "error"
	Mode string

	// Stages specifies the traffic percentages that the NEW Revision is expected to have
	// at successive rollout stages; the list of integers must start at 0
	// all entries must be in the range [0, 100), and must be sorted in increasing order
	// Technically the final rollout percentage is 100, but this is implicitly understood,
	// and should NOT be explicitly specified in Stages
	// In addition to the traffic percentages, each stage can OPTIONALLY specify its own threshold
	// this gives greater flexibility to policy design
	// The threshold value for stage N is the value that must be achieved BEFORE moving to stage N+1
	Stages []Stage

	// DefaultThreshold is the threshold value that is used when a rollout stage doesn't specify
	// a threshold of its own; this can be useful when the threshold is a constant value across
	// all rollout stages, in which case there is no need to copy paste the same value in all entries
	// The interpretation of DefaultThreshold depends on the value of Mode
	DefaultThreshold int
}

Policy represents the rollout strategy used to update Route objects

type Reconciler

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

Reconciler implements controller.Reconciler

func (*Reconciler) ReconcileKind

func (c *Reconciler) ReconcileKind(ctx context.Context, cfg *v1.Configuration) pkgreconciler.Event

ReconcileKind is triggered to enforce the rollout policy

type Stage

type Stage struct {
	Percent   int
	Threshold *int
}

Stage contains information about a progressive rollout stage

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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