api

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Nov 5, 2014 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

View Source
const DeploymentConfigLabel = "deploymentConfig"

DeploymentConfigLabel is the key of a Deployment label whose value is the ID of a DeploymentConfig on which the Deployment is based.

Variables

This section is empty.

Functions

This section is empty.

Types

type CustomPodDeploymentStrategy

type CustomPodDeploymentStrategy struct {
	// Image specifies a Docker image which can carry out a deployment.
	Image string `json:"image,omitempty" yaml:"image,omitempty"`
	// Environment holds the environment which will be given to the container for Image.
	Environment []api.EnvVar `json:"environment,omitempty" yaml:"environment,omitempty"`
}

CustomPodDeploymentStrategy represents parameters for the CustomPod strategy.

type Deployment

type Deployment struct {
	api.TypeMeta       `json:",inline" yaml:",inline"`
	Labels             map[string]string              `json:"labels,omitempty" yaml:"labels,omitempty"`
	Strategy           DeploymentStrategy             `json:"strategy,omitempty" yaml:"strategy,omitempty"`
	ControllerTemplate api.ReplicationControllerState `json:"controllerTemplate,omitempty" yaml:"controllerTemplate,omitempty"`
	Status             DeploymentStatus               `json:"status,omitempty" yaml:"status,omitempty"`
	// Details captures the causes for the creation of this deployment resource.
	// This could be based on a change made by the user to the deployment config
	// or caused by an automatic trigger that was specified in the deployment config.
	// Multiple triggers could have caused this deployment.
	// If no trigger is specified here, then the deployment was likely created as a result of an
	// explicit client request to create a new deployment resource.
	Details *DeploymentDetails `json:"details,omitempty" yaml:"details,omitempty"`
}

A deployment represents a single configuration of a pod deployed into the cluster, and may represent both a current deployment or a historical deployment.

func (*Deployment) IsAnAPIObject

func (*Deployment) IsAnAPIObject()

type DeploymentCause

type DeploymentCause struct {
	// The type of the trigger that resulted in the creation of a new deployment
	Type DeploymentTriggerType `json:"type" yaml:"type"`
	// The image trigger details, if this trigger was fired based on an image change
	ImageTrigger *DeploymentCauseImageTrigger `json:"imageTrigger,omitempty" yaml:"imageTrigger,omitempty"`
}

DeploymentCause captures information about a particular cause of a deployment.

type DeploymentCauseImageTrigger

type DeploymentCauseImageTrigger struct {
	// RepositoryName is the identifier for a Docker image repository that was updated.
	RepositoryName string `json:"repositoryName,omitempty" yaml:"repositoryName,omitempty"`
	// Tag is the name of an image repository tag that is now pointing to a new image.
	Tag string `json:"tag,omitempty" yaml:"tag,omitempty"`
}

type DeploymentConfig

type DeploymentConfig struct {
	api.TypeMeta `json:",inline" yaml:",inline"`
	Labels       map[string]string `json:"labels,omitempty" yaml:"labels,omitempty"`
	// Triggers determine how updates to a DeploymentConfig result in new deployments. If no triggers
	// are defined, a new deployment can only occur as a result of an explicit client update to the
	// DeploymentConfig with a new LatestVersion.
	Triggers []DeploymentTriggerPolicy `json:"triggers,omitempty" yaml:"triggers,omitempty"`
	// Template represents a desired deployment state and how to deploy it.
	Template DeploymentTemplate `json:"template,omitempty" yaml:"template,omitempty"`
	// LatestVersion is used to determine whether the current deployment associated with a DeploymentConfig
	// is out of sync.
	LatestVersion int `json:"latestVersion,omitempty" yaml:"latestVersion,omitempty"`
	// The reasons for the update to this deployment config.
	// This could be based on a change made by the user or caused by an automatic trigger
	Details *DeploymentDetails `json:"details,omitempty" yaml:"details,omitempty"`
}

DeploymentConfig represents a configuration for a single deployment of a replication controller: what the template is for the deployment, how new deployments are triggered, what the desired deployment state is.

func (*DeploymentConfig) IsAnAPIObject

func (*DeploymentConfig) IsAnAPIObject()

type DeploymentConfigList

type DeploymentConfigList struct {
	api.TypeMeta `json:",inline" yaml:",inline"`
	Items        []DeploymentConfig `json:"items,omitempty" yaml:"items,omitempty"`
}

A DeploymentConfigList is a collection of deployment configs.

func (*DeploymentConfigList) IsAnAPIObject

func (*DeploymentConfigList) IsAnAPIObject()

type DeploymentDetails

type DeploymentDetails struct {
	// The user specified change message, if this deployment was triggered manually by the user
	Message string `json:"message,omitempty" yaml:"message,omitempty"`
	// Extended data associated with all the causes for creating a new deployment
	Causes []*DeploymentCause `json:"causes,omitempty" yaml:"causes,omitempty"`
}

DeploymentDetails captures information about the causes of a deployment.

type DeploymentList

type DeploymentList struct {
	api.TypeMeta `json:",inline" yaml:",inline"`
	Items        []Deployment `json:"items,omitempty" yaml:"items,omitempty"`
}

A DeploymentList is a collection of deployments.

func (*DeploymentList) IsAnAPIObject

func (*DeploymentList) IsAnAPIObject()

type DeploymentStatus

type DeploymentStatus string

DeploymentStatus decribes the possible states a Deployment can be in.

const (
	// DeploymentStatusNew means the deployment has been accepted but not yet acted upon.
	DeploymentStatusNew DeploymentStatus = "New"
	// DeploymentStatusPending means the deployment been handed over to a deployment strategy,
	// but the strategy has not yet declared the deployment to be running.
	DeploymentStatusPending DeploymentStatus = "Pending"
	// DeploymentStatusRunning means the deployment strategy has reported the deployment as
	// being in-progress.
	DeploymentStatusRunning DeploymentStatus = "Running"
	// DeploymentStatusComplete means the deployment finished without an error.
	DeploymentStatusComplete DeploymentStatus = "Complete"
	// DeploymentStatusFailed means the deployment finished with an error.
	DeploymentStatusFailed DeploymentStatus = "Failed"
)

type DeploymentStrategy

type DeploymentStrategy struct {
	Type DeploymentStrategyType `json:"type,omitempty" yaml:"type,omitempty"`
	// CustomPod represents the parameters for the CustomPod strategy.
	CustomPod *CustomPodDeploymentStrategy `json:"customPod,omitempty" yaml:"customPod,omitempty"`
}

DeploymentStrategy describes how to perform a deployment.

type DeploymentStrategyType

type DeploymentStrategyType string

DeploymentStrategyType refers to a specific DeploymentStrategy implementation.

const (
	// DeploymentStrategyTypeBasic is a simple remove-and-replace deployment strategy.
	DeploymentStrategyTypeBasic DeploymentStrategyType = "Basic"
	// DeploymentStrategyTypeCustomPod is a custom deployment strategy carried out by a pod.
	DeploymentStrategyTypeCustomPod DeploymentStrategyType = "CustomPod"
)

type DeploymentTemplate

type DeploymentTemplate struct {
	Strategy           DeploymentStrategy             `json:"strategy,omitempty" yaml:"strategy,omitempty"`
	ControllerTemplate api.ReplicationControllerState `json:"controllerTemplate,omitempty" yaml:"controllerTemplate,omitempty"`
}

DeploymentTemplate contains all the necessary information to create a Deployment from a DeploymentStrategy.

type DeploymentTriggerImageChangeParams

type DeploymentTriggerImageChangeParams struct {
	// Automatic means that the detection of a new tag value should result in a new deployment.
	Automatic bool `json:"automatic,omitempty" yaml:"automatic,omitempty"`
	// ContainerNames is used to restrict tag updates to the specified set of container names in a pod.
	ContainerNames []string `json:"containerNames,omitempty" yaml:"containerNames,omitempty"`
	// RepositoryName is the identifier for a Docker image repository to watch for changes.
	RepositoryName string `json:"repositoryName,omitempty" yaml:"repositoryName,omitempty"`
	// Tag is the name of an image repository tag to watch for changes.
	Tag string `json:"tag,omitempty" yaml:"tag,omitempty"`
}

DeploymentTriggerImageChangeParams represents the parameters to the ImageChange trigger.

type DeploymentTriggerPolicy

type DeploymentTriggerPolicy struct {
	Type DeploymentTriggerType `json:"type,omitempty" yaml:"type,omitempty"`
	// ImageChangeParams represents the parameters for the ImageChange trigger.
	ImageChangeParams *DeploymentTriggerImageChangeParams `json:"imageChangeParams,omitempty" yaml:"imageChangeParams,omitempty"`
}

DeploymentTriggerPolicy describes a policy for a single trigger that results in a new Deployment.

type DeploymentTriggerType

type DeploymentTriggerType string

DeploymentTriggerType refers to a specific DeploymentTriggerPolicy implementation.

const (
	// DeploymentTriggerManual is a placeholder implementation which does nothing.
	DeploymentTriggerManual DeploymentTriggerType = "Manual"
	// DeploymentTriggerOnImageChange will create new deployments in response to updated tags from
	// a Docker image repository.
	DeploymentTriggerOnImageChange DeploymentTriggerType = "ImageChange"
	// DeploymentTriggerOnConfigChange will create new deployments in response to changes to
	// the ControllerTemplate of a DeploymentConfig.
	DeploymentTriggerOnConfigChange DeploymentTriggerType = "ConfigChange"
)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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