strategy

package
v3.11.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Oct 9, 2018 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Overview

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.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

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

Types

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.

Directories

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