Documentation ¶
Index ¶
- Constants
- Variables
- func ActiveDeployment(input []*api.ReplicationController) *api.ReplicationController
- func ActiveDeploymentV1(input []*v1.ReplicationController) *v1.ReplicationController
- func CanTransitionPhase(current, next appsapi.DeploymentStatus) bool
- func ConfigSelector(name string) labels.Selector
- func CopyApiEnvVarToV1EnvVar(in []api.EnvVar) []v1.EnvVar
- func CopyApiResourcesToV1Resources(in *api.ResourceRequirements) v1.ResourceRequirements
- func DecodeDeploymentConfig(controller metav1.ObjectMetaAccessor) (*appsapi.DeploymentConfig, error)
- func DeployerPodNameFor(obj runtime.Object) string
- func DeployerPodNameForDeployment(deployment string) string
- func DeployerPodSelector(name string) labels.Selector
- func DeploymentConfigNameFor(obj runtime.Object) string
- func DeploymentDesiredReplicas(obj runtime.Object) (int32, bool)
- func DeploymentNameFor(obj runtime.Object) string
- func DeploymentNameForConfigVersion(name string, version int64) string
- func DeploymentStatusFor(obj runtime.Object) appsapi.DeploymentStatus
- func DeploymentStatusReasonFor(obj runtime.Object) string
- func DeploymentVersionFor(obj runtime.Object) int64
- func DeploymentsForCleanup(configuration *appsapi.DeploymentConfig, ...) []v1.ReplicationController
- func GetAvailableReplicaCountForReplicationControllers(replicationControllers []*v1.ReplicationController) int32
- func GetDeploymentCondition(status appsapi.DeploymentConfigStatus, ...) *appsapi.DeploymentCondition
- func GetReadyReplicaCountForReplicationControllers(replicationControllers []*v1.ReplicationController) int32
- func GetReplicaCountForDeployments(deployments []*v1.ReplicationController) int32
- func GetStatusReplicaCountForDeployments(deployments []*v1.ReplicationController) int32
- func GetTimeoutSecondsForStrategy(config *appsapi.DeploymentConfig) int64
- func HasChangeTrigger(config *appsapi.DeploymentConfig) bool
- func HasImageChangeTrigger(config *appsapi.DeploymentConfig) bool
- func HasLastTriggeredImage(config *appsapi.DeploymentConfig) bool
- func HasLatestPodTemplate(currentConfig *appsapi.DeploymentConfig, rc *v1.ReplicationController) (bool, string, error)
- func HasSynced(dc *appsapi.DeploymentConfig, generation int64) bool
- func HasTrigger(config *appsapi.DeploymentConfig) bool
- func HasUpdatedImages(dc *appsapi.DeploymentConfig, rc *v1.ReplicationController) (bool, []string)
- func IsCompleteDeployment(deployment runtime.Object) bool
- func IsDeploymentCancelled(deployment runtime.Object) bool
- func IsFailedDeployment(deployment runtime.Object) bool
- func IsInitialDeployment(config *appsapi.DeploymentConfig) bool
- func IsOwnedByConfig(obj metav1.Object) bool
- func IsProgressing(config *appsapi.DeploymentConfig, newStatus *appsapi.DeploymentConfigStatus) bool
- func IsRollingConfig(config *appsapi.DeploymentConfig) bool
- func IsTerminatedDeployment(deployment runtime.Object) bool
- func LabelForDeployment(deployment *api.ReplicationController) string
- func LabelForDeploymentConfig(config *appsapi.DeploymentConfig) string
- func LabelForDeploymentV1(deployment *v1.ReplicationController) string
- func LatestDeploymentInfo(config *appsapi.DeploymentConfig, deployments []*v1.ReplicationController) (bool, *v1.ReplicationController)
- func LatestDeploymentNameForConfig(config *appsapi.DeploymentConfig) string
- func LatestDeploymentNameForConfigV1(config *appsapiv1.DeploymentConfig) string
- func MakeDeploymentV1(config *appsapi.DeploymentConfig) (*v1.ReplicationController, error)
- func MakeTestOnlyInternalDeployment(config *appsapi.DeploymentConfig) (*api.ReplicationController, error)
- func MaxSurge(config appsapi.DeploymentConfig) int32
- func MaxUnavailable(config *appsapi.DeploymentConfig) int32
- func NewControllerRef(config *appsapi.DeploymentConfig) *metav1.OwnerReference
- func NewDeploymentCondition(condType appsapi.DeploymentConditionType, status api.ConditionStatus, ...) *appsapi.DeploymentCondition
- func NewReplicationControllerV1ScaleClient(client kclientset.Interface) scaleclient.ScalesGetter
- func NewReplicationControllerV1Scaler(client kclientset.Interface) kubectl.Scaler
- func RecordConfigChangeCause(config *appsapi.DeploymentConfig)
- func RecordImageChangeCauses(config *appsapi.DeploymentConfig, imageNames []string)
- func RemoveDeploymentCondition(status *appsapi.DeploymentConfigStatus, ...)
- func RolloutExceededTimeoutSeconds(config *appsapi.DeploymentConfig, latestRC *v1.ReplicationController) bool
- func SetDeploymentCondition(status *appsapi.DeploymentConfigStatus, condition appsapi.DeploymentCondition)
- type ByLatestVersionAsc
- type ByLatestVersionAscV1
- type ByLatestVersionDesc
- type ByLatestVersionDescV1
- type ByMostRecent
Constants ¶
const DeployerPodSuffix = "deploy"
DeployerPodSuffix is the suffix added to pods created from a deployment
Variables ¶
var ( // DeploymentConfigControllerRefKind contains the schema.GroupVersionKind for the // deployment config. This is used in the ownerRef and GC client picks the appropriate // client to get the deployment config. DeploymentConfigControllerRefKind = appsapiv1.SchemeGroupVersion.WithKind("DeploymentConfig") )
Functions ¶
func ActiveDeployment ¶
func ActiveDeployment(input []*api.ReplicationController) *api.ReplicationController
ActiveDeployment returns the latest complete deployment, or nil if there is no such deployment. The active deployment is not always the same as the latest deployment.
func ActiveDeploymentV1 ¶
func ActiveDeploymentV1(input []*v1.ReplicationController) *v1.ReplicationController
ActiveDeploymentV1 returns the latest complete deployment, or nil if there is no such deployment. The active deployment is not always the same as the latest deployment.
func CanTransitionPhase ¶
func CanTransitionPhase(current, next appsapi.DeploymentStatus) bool
CanTransitionPhase returns whether it is allowed to go from the current to the next phase.
func ConfigSelector ¶
ConfigSelector returns a label Selector which can be used to find all deployments for a DeploymentConfig.
TODO: Using the annotation constant for now since the value is correct but we could consider adding a new constant to the public types.
func CopyApiResourcesToV1Resources ¶
func CopyApiResourcesToV1Resources(in *api.ResourceRequirements) v1.ResourceRequirements
func DecodeDeploymentConfig ¶
func DecodeDeploymentConfig(controller metav1.ObjectMetaAccessor) (*appsapi.DeploymentConfig, error)
DecodeDeploymentConfig decodes a DeploymentConfig from controller using codec. An error is returned if the controller doesn't contain an encoded config.
func DeployerPodNameFor ¶
func DeployerPodNameForDeployment ¶
DeployerPodNameForDeployment returns the name of a pod for a given deployment
func DeployerPodSelector ¶
DeployerPodSelector returns a label Selector which can be used to find all deployer pods associated with a deployment with name.
func DeploymentConfigNameFor ¶
func DeploymentNameFor ¶
func DeploymentNameForConfigVersion ¶
DeploymentNameForConfigVersion returns the name of the version-th deployment for the config that has the provided name
func DeploymentStatusFor ¶
func DeploymentStatusFor(obj runtime.Object) appsapi.DeploymentStatus
func DeploymentVersionFor ¶
func DeploymentsForCleanup ¶
func DeploymentsForCleanup(configuration *appsapi.DeploymentConfig, deployments []*v1.ReplicationController) []v1.ReplicationController
DeploymentsForCleanup determines which deployments for a configuration are relevant for the revision history limit quota
func GetAvailableReplicaCountForReplicationControllers ¶
func GetAvailableReplicaCountForReplicationControllers(replicationControllers []*v1.ReplicationController) int32
GetAvailableReplicaCountForReplicationControllers returns the number of available pods corresponding to the given replication controller.
func GetDeploymentCondition ¶
func GetDeploymentCondition(status appsapi.DeploymentConfigStatus, condType appsapi.DeploymentConditionType) *appsapi.DeploymentCondition
GetDeploymentCondition returns the condition with the provided type.
func GetReadyReplicaCountForReplicationControllers ¶
func GetReadyReplicaCountForReplicationControllers(replicationControllers []*v1.ReplicationController) int32
GetReadyReplicaCountForReplicationControllers returns the number of ready pods corresponding to the given replication controller.
func GetReplicaCountForDeployments ¶
func GetReplicaCountForDeployments(deployments []*v1.ReplicationController) int32
GetReplicaCountForDeployments returns the sum of all replicas for the given deployments.
func GetStatusReplicaCountForDeployments ¶
func GetStatusReplicaCountForDeployments(deployments []*v1.ReplicationController) int32
GetStatusReplicaCountForDeployments returns the sum of the replicas reported in the status of the given deployments.
func GetTimeoutSecondsForStrategy ¶
func GetTimeoutSecondsForStrategy(config *appsapi.DeploymentConfig) int64
GetTimeoutSecondsForStrategy returns the timeout in seconds defined in the deployment config strategy.
func HasChangeTrigger ¶
func HasChangeTrigger(config *appsapi.DeploymentConfig) bool
HasChangeTrigger returns whether the provided deployment configuration has a config change trigger or not
func HasImageChangeTrigger ¶
func HasImageChangeTrigger(config *appsapi.DeploymentConfig) bool
HasImageChangeTrigger returns whether the provided deployment configuration has an image change trigger or not.
func HasLastTriggeredImage ¶
func HasLastTriggeredImage(config *appsapi.DeploymentConfig) bool
HasLastTriggeredImage returns whether all image change triggers in provided deployment configuration has the lastTriggerImage field set (iow. all images were updated for them). Returns false if deployment configuration has no image change trigger defined.
func HasLatestPodTemplate ¶
func HasLatestPodTemplate(currentConfig *appsapi.DeploymentConfig, rc *v1.ReplicationController) (bool, string, error)
HasLatestPodTemplate checks for differences between current deployment config template and deployment config template encoded in the latest replication controller. If they are different it will return an string diff containing the change.
func HasSynced ¶
func HasSynced(dc *appsapi.DeploymentConfig, generation int64) bool
HasSynced checks if the provided deployment config has been noticed by the deployment config controller.
func HasTrigger ¶
func HasTrigger(config *appsapi.DeploymentConfig) bool
HasTrigger returns whether the provided deployment configuration has any trigger defined or not.
func HasUpdatedImages ¶
func HasUpdatedImages(dc *appsapi.DeploymentConfig, rc *v1.ReplicationController) (bool, []string)
HasUpdatedImages indicates if the deployment configuration images were updated.
func IsCompleteDeployment ¶
IsCompleteDeployment returns true if the passed deployment is in state complete.
func IsDeploymentCancelled ¶
func IsFailedDeployment ¶
IsFailedDeployment returns true if the passed deployment failed.
func IsInitialDeployment ¶
func IsInitialDeployment(config *appsapi.DeploymentConfig) bool
IsInitialDeployment returns whether the deployment configuration is the first version of this configuration.
func IsOwnedByConfig ¶
IsOwnedByConfig checks whether the provided replication controller is part of a deployment configuration. TODO: Switch to use owner references once we got those working.
func IsProgressing ¶
func IsProgressing(config *appsapi.DeploymentConfig, newStatus *appsapi.DeploymentConfigStatus) bool
IsProgressing expects a state deployment config and its updated status in order to determine if there is any progress.
func IsRollingConfig ¶
func IsRollingConfig(config *appsapi.DeploymentConfig) bool
IsRollingConfig returns true if the strategy type is a rolling update.
func IsTerminatedDeployment ¶
IsTerminatedDeployment returns true if the passed deployment has terminated (either complete or failed).
func LabelForDeployment ¶
func LabelForDeployment(deployment *api.ReplicationController) string
LabelForDeployment builds a string identifier for a Deployment.
func LabelForDeploymentConfig ¶
func LabelForDeploymentConfig(config *appsapi.DeploymentConfig) string
LabelForDeploymentConfig builds a string identifier for a DeploymentConfig.
func LabelForDeploymentV1 ¶
func LabelForDeploymentV1(deployment *v1.ReplicationController) string
LabelForDeployment builds a string identifier for a Deployment.
func LatestDeploymentInfo ¶
func LatestDeploymentInfo(config *appsapi.DeploymentConfig, deployments []*v1.ReplicationController) (bool, *v1.ReplicationController)
LatestDeploymentInfo returns info about the latest deployment for a config, or nil if there is no latest deployment. The latest deployment is not always the same as the active deployment.
func LatestDeploymentNameForConfig ¶
func LatestDeploymentNameForConfig(config *appsapi.DeploymentConfig) string
LatestDeploymentNameForConfig returns a stable identifier for config based on its version.
func LatestDeploymentNameForConfigV1 ¶
func LatestDeploymentNameForConfigV1(config *appsapiv1.DeploymentConfig) string
LatestDeploymentNameForConfigV1 returns a stable identifier for config based on its version.
func MakeDeploymentV1 ¶
func MakeDeploymentV1(config *appsapi.DeploymentConfig) (*v1.ReplicationController, error)
MakeDeploymentV1 creates a deployment represented as a ReplicationController and based on the given DeploymentConfig. The controller replica count will be zero.
func MakeTestOnlyInternalDeployment ¶
func MakeTestOnlyInternalDeployment(config *appsapi.DeploymentConfig) (*api.ReplicationController, error)
MakeDeployment creates a deployment represented as an internal ReplicationController and based on the given DeploymentConfig. The controller replica count will be zero. DEPRECATED: Will be replaced with external version eventually.
func MaxSurge ¶
func MaxSurge(config appsapi.DeploymentConfig) int32
MaxSurge returns the maximum surge pods a rolling deployment config can take.
func MaxUnavailable ¶
func MaxUnavailable(config *appsapi.DeploymentConfig) int32
MaxUnavailable returns the maximum unavailable pods a rolling deployment config can take.
func NewControllerRef ¶
func NewControllerRef(config *appsapi.DeploymentConfig) *metav1.OwnerReference
func NewDeploymentCondition ¶
func NewDeploymentCondition(condType appsapi.DeploymentConditionType, status api.ConditionStatus, reason appsapi.DeploymentConditionReason, message string) *appsapi.DeploymentCondition
NewDeploymentCondition creates a new deployment condition.
func NewReplicationControllerV1ScaleClient ¶
func NewReplicationControllerV1ScaleClient(client kclientset.Interface) scaleclient.ScalesGetter
func NewReplicationControllerV1Scaler ¶
func NewReplicationControllerV1Scaler(client kclientset.Interface) kubectl.Scaler
func RecordConfigChangeCause ¶
func RecordConfigChangeCause(config *appsapi.DeploymentConfig)
RecordConfigChangeCause sets a deployment config cause for config change.
func RecordImageChangeCauses ¶
func RecordImageChangeCauses(config *appsapi.DeploymentConfig, imageNames []string)
RecordImageChangeCauses sets a deployment config cause for image change. It takes a list of changed images and record an cause for each image.
func RemoveDeploymentCondition ¶
func RemoveDeploymentCondition(status *appsapi.DeploymentConfigStatus, condType appsapi.DeploymentConditionType)
RemoveDeploymentCondition removes the deployment condition with the provided type.
func RolloutExceededTimeoutSeconds ¶
func RolloutExceededTimeoutSeconds(config *appsapi.DeploymentConfig, latestRC *v1.ReplicationController) bool
RolloutExceededTimeoutSeconds returns true if the current deployment exceeded the timeoutSeconds defined for its strategy. Note that this is different than activeDeadlineSeconds which is the timeout set for the deployer pod. In some cases, the deployer pod cannot be created (like quota, etc...). In that case deployer controller use this function to measure if the created deployment (RC) exceeded the timeout.
func SetDeploymentCondition ¶
func SetDeploymentCondition(status *appsapi.DeploymentConfigStatus, condition appsapi.DeploymentCondition)
SetDeploymentCondition updates the deployment to include the provided condition. If the condition that we are about to add already exists and has the same status and reason then we are not going to update.
Types ¶
type ByLatestVersionAsc ¶
type ByLatestVersionAsc []*api.ReplicationController
ByLatestVersionAsc sorts deployments by LatestVersion ascending.
func (ByLatestVersionAsc) Len ¶
func (d ByLatestVersionAsc) Len() int
func (ByLatestVersionAsc) Less ¶
func (d ByLatestVersionAsc) Less(i, j int) bool
func (ByLatestVersionAsc) Swap ¶
func (d ByLatestVersionAsc) Swap(i, j int)
type ByLatestVersionAscV1 ¶
type ByLatestVersionAscV1 []*v1.ReplicationController
func (ByLatestVersionAscV1) Len ¶
func (d ByLatestVersionAscV1) Len() int
func (ByLatestVersionAscV1) Less ¶
func (d ByLatestVersionAscV1) Less(i, j int) bool
func (ByLatestVersionAscV1) Swap ¶
func (d ByLatestVersionAscV1) Swap(i, j int)
type ByLatestVersionDesc ¶
type ByLatestVersionDesc []*api.ReplicationController
ByLatestVersionDesc sorts deployments by LatestVersion descending.
func (ByLatestVersionDesc) Len ¶
func (d ByLatestVersionDesc) Len() int
func (ByLatestVersionDesc) Less ¶
func (d ByLatestVersionDesc) Less(i, j int) bool
func (ByLatestVersionDesc) Swap ¶
func (d ByLatestVersionDesc) Swap(i, j int)
type ByLatestVersionDescV1 ¶
type ByLatestVersionDescV1 []*v1.ReplicationController
ByLatestVersionDescV1 sorts deployments by LatestVersion descending.
func (ByLatestVersionDescV1) Len ¶
func (d ByLatestVersionDescV1) Len() int
func (ByLatestVersionDescV1) Less ¶
func (d ByLatestVersionDescV1) Less(i, j int) bool
func (ByLatestVersionDescV1) Swap ¶
func (d ByLatestVersionDescV1) Swap(i, j int)
type ByMostRecent ¶
type ByMostRecent []*api.ReplicationController
ByMostRecent sorts deployments by most recently created.
func (ByMostRecent) Len ¶
func (s ByMostRecent) Len() int
func (ByMostRecent) Less ¶
func (s ByMostRecent) Less(i, j int) bool
func (ByMostRecent) Swap ¶
func (s ByMostRecent) Swap(i, j int)