v4.1.0 Latest Latest

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

Go to latest
Published: May 1, 2019 License: Apache-2.0 Imports: 3 Imported by: 0



Package strategy contains implementations of core deployment strategies.

The code in this package will be more verbose with logging given the intended application as standalone Docker container CLI support.



This section is empty.


This section is empty.


func IsConditionReached

func IsConditionReached(err error) bool

func NewConditionReachedErr

func NewConditionReachedErr(msg string) error

func Percentage

func Percentage(until string) (int, bool)

func PercentageBetween

func PercentageBetween(until string, min, max int) bool


type DeploymentStrategy

type DeploymentStrategy interface {
	// Deploy transitions an old deployment to a new one.
	Deploy(from *corev1.ReplicationController, to *corev1.ReplicationController, desiredReplicas int) error

DeploymentStrategy knows how to make a deployment active.

type UpdateAcceptor

type UpdateAcceptor interface {
	// Accept returns nil if the controller is okay, otherwise returns an error.
	Accept(*corev1.ReplicationController) error

UpdateAcceptor is given a chance to accept or reject the new controller during a deployment each time the controller is scaled up.

After the successful scale-up of the controller, the controller is given to the UpdateAcceptor. If the UpdateAcceptor rejects the controller, the deployment is stopped with an error.

DEPRECATED: Acceptance checking has been incorporated into the rolling strategy, but we still need this around to support Recreate.


Path Synopsis
Package support is a library of code useful to any strategy.
Package support is a library of code useful to any strategy.

Jump to

Keyboard shortcuts

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