a84e5bdc |
package v1beta3
import ( |
987aca9b |
"k8s.io/kubernetes/pkg/api/unversioned" |
83c702b4 |
kapi "k8s.io/kubernetes/pkg/api/v1beta3" |
f638b86d |
"k8s.io/kubernetes/pkg/util/intstr" |
a84e5bdc |
)
// DeploymentPhase describes the possible states a deployment can be in.
type DeploymentPhase string
const (
// DeploymentPhaseNew means the deployment has been accepted but not yet acted upon.
DeploymentPhaseNew DeploymentPhase = "New"
// DeploymentPhasePending means the deployment been handed over to a deployment strategy,
// but the strategy has not yet declared the deployment to be running.
DeploymentPhasePending DeploymentPhase = "Pending"
// DeploymentPhaseRunning means the deployment strategy has reported the deployment as
// being in-progress.
DeploymentPhaseRunning DeploymentPhase = "Running"
// DeploymentPhaseComplete means the deployment finished without an error.
DeploymentPhaseComplete DeploymentPhase = "Complete"
// DeploymentPhaseFailed means the deployment finished with an error.
DeploymentPhaseFailed DeploymentPhase = "Failed"
)
// DeploymentStrategy describes how to perform a deployment.
type DeploymentStrategy struct {
// Type is the name of a deployment strategy. |
a746c13e |
Type DeploymentStrategyType `json:"type,omitempty"` |
3d8b8d54 |
|
a84e5bdc |
// CustomParams are the input to the Custom deployment strategy. |
a746c13e |
CustomParams *CustomDeploymentStrategyParams `json:"customParams,omitempty"` |
a84e5bdc |
// RecreateParams are the input to the Recreate deployment strategy. |
a746c13e |
RecreateParams *RecreateDeploymentStrategyParams `json:"recreateParams,omitempty"` |
4ad08f13 |
// RollingParams are the input to the Rolling deployment strategy. |
a746c13e |
RollingParams *RollingDeploymentStrategyParams `json:"rollingParams,omitempty"` |
3d8b8d54 |
|
56de3877 |
// Compute resource requirements to execute the deployment |
a746c13e |
Resources kapi.ResourceRequirements `json:"resources,omitempty"` |
f2ba544c |
// Labels is a set of key, value pairs added to custom deployer and lifecycle pre/post hook pods. |
a746c13e |
Labels map[string]string `json:"labels,omitempty"` |
f2ba544c |
// Annotations is a set of key, value pairs added to custom deployer and lifecycle pre/post hook pods. |
a746c13e |
Annotations map[string]string `json:"annotations,omitempty"` |
a84e5bdc |
}
// DeploymentStrategyType refers to a specific DeploymentStrategy implementation.
type DeploymentStrategyType string
const (
// DeploymentStrategyTypeRecreate is a simple strategy suitable as a default.
DeploymentStrategyTypeRecreate DeploymentStrategyType = "Recreate"
// DeploymentStrategyTypeCustom is a user defined strategy.
DeploymentStrategyTypeCustom DeploymentStrategyType = "Custom" |
4ad08f13 |
// DeploymentStrategyTypeRolling uses the Kubernetes RollingUpdater.
DeploymentStrategyTypeRolling DeploymentStrategyType = "Rolling" |
a84e5bdc |
)
// CustomParams are the input to the Custom deployment strategy.
type CustomDeploymentStrategyParams struct {
// Image specifies a Docker image which can carry out a deployment. |
a746c13e |
Image string `json:"image,omitempty"` |
a84e5bdc |
// Environment holds the environment which will be given to the container for Image. |
a746c13e |
Environment []kapi.EnvVar `json:"environment,omitempty"` |
a84e5bdc |
// Command is optional and overrides CMD in the container Image. |
a746c13e |
Command []string `json:"command,omitempty"` |
a84e5bdc |
}
// RecreateDeploymentStrategyParams are the input to the Recreate deployment
// strategy.
type RecreateDeploymentStrategyParams struct { |
e722cc2b |
// TimeoutSeconds is the time to wait for updates before giving up. If the
// value is nil, a default will be used. |
a746c13e |
TimeoutSeconds *int64 `json:"timeoutSeconds,omitempty"` |
a84e5bdc |
// Pre is a lifecycle hook which is executed before the strategy manipulates
// the deployment. All LifecycleHookFailurePolicy values are supported. |
a746c13e |
Pre *LifecycleHook `json:"pre,omitempty"` |
bde59831 |
// Mid is a lifecycle hook which is executed while the deployment is scaled down to zero before the first new
// pod is created. All LifecycleHookFailurePolicy values are supported. |
a746c13e |
Mid *LifecycleHook `json:"mid,omitempty"` |
a84e5bdc |
// Post is a lifecycle hook which is executed after the strategy has
// finished all deployment logic. The LifecycleHookFailurePolicyAbort policy
// is NOT supported. |
a746c13e |
Post *LifecycleHook `json:"post,omitempty"` |
a84e5bdc |
}
|
3d8b8d54 |
// LifecycleHook defines a specific deployment lifecycle action. Only one type of action may be specified at any time. |
a84e5bdc |
type LifecycleHook struct {
// FailurePolicy specifies what action to take if the hook fails. |
a746c13e |
FailurePolicy LifecycleHookFailurePolicy `json:"failurePolicy"` |
3d8b8d54 |
|
a84e5bdc |
// ExecNewPod specifies the options for a lifecycle hook backed by a pod. |
a746c13e |
ExecNewPod *ExecNewPodHook `json:"execNewPod,omitempty"` |
3d8b8d54 |
// TagImages instructs the deployer to tag the current image referenced under a container onto an image stream tag if the deployment succeeds. |
a746c13e |
TagImages []TagImageHook `json:"tagImages,omitempty"` |
a84e5bdc |
}
// HandlerFailurePolicy describes possibles actions to take if a hook fails.
type LifecycleHookFailurePolicy string
const (
// LifecycleHookFailurePolicyRetry means retry the hook until it succeeds.
LifecycleHookFailurePolicyRetry LifecycleHookFailurePolicy = "Retry"
// LifecycleHookFailurePolicyAbort means abort the deployment (if possible).
LifecycleHookFailurePolicyAbort LifecycleHookFailurePolicy = "Abort"
// LifecycleHookFailurePolicyIgnore means ignore failure and continue the deployment.
LifecycleHookFailurePolicyIgnore LifecycleHookFailurePolicy = "Ignore"
)
// ExecNewPodHook is a hook implementation which runs a command in a new pod
// based on the specified container which is assumed to be part of the
// deployment template.
type ExecNewPodHook struct {
// Command is the action command and its arguments. |
a746c13e |
Command []string `json:"command"` |
a84e5bdc |
// Env is a set of environment variables to supply to the hook pod's container. |
a746c13e |
Env []kapi.EnvVar `json:"env,omitempty"` |
a84e5bdc |
// ContainerName is the name of a container in the deployment pod template
// whose Docker image will be used for the hook pod's container. |
a746c13e |
ContainerName string `json:"containerName"` |
b4011ff7 |
// Volumes is a list of named volumes from the pod template which should be
// copied to the hook pod. Volumes names not found in pod spec are ignored.
// An empty list means no volumes will be copied. |
a746c13e |
Volumes []string `json:"volumes,omitempty"` |
a84e5bdc |
}
|
3d8b8d54 |
// TagImageHook is a request to tag the image in a particular container onto an ImageStreamTag.
type TagImageHook struct {
// ContainerName is the name of a container in the deployment config whose image value will be used as the source of the tag |
a746c13e |
ContainerName string `json:"containerName"` |
3d8b8d54 |
// To is the target ImageStreamTag to set the image of |
a746c13e |
To kapi.ObjectReference `json:"to"` |
3d8b8d54 |
}
|
4ad08f13 |
// RollingDeploymentStrategyParams are the input to the Rolling deployment
// strategy.
type RollingDeploymentStrategyParams struct {
// UpdatePeriodSeconds is the time to wait between individual pod updates.
// If the value is nil, a default will be used. |
a746c13e |
UpdatePeriodSeconds *int64 `json:"updatePeriodSeconds,omitempty"` |
4ad08f13 |
// IntervalSeconds is the time to wait between polling deployment status
// after update. If the value is nil, a default will be used. |
a746c13e |
IntervalSeconds *int64 `json:"intervalSeconds,omitempty"` |
4ad08f13 |
// TimeoutSeconds is the time to wait for updates before giving up. If the
// value is nil, a default will be used. |
a746c13e |
TimeoutSeconds *int64 `json:"timeoutSeconds,omitempty"` |
086d72f1 |
// MaxUnavailable is the maximum number of pods that can be unavailable
// during the update. Value can be an absolute number (ex: 5) or a
// percentage of total pods at the start of update (ex: 10%). Absolute
// number is calculated from percentage by rounding up.
//
// This cannot be 0 if MaxSurge is 0. By default, 25% is used.
//
// Example: when this is set to 30%, the old RC can be scaled down by 30%
// immediately when the rolling update starts. Once new pods are ready, old
// RC can be scaled down further, followed by scaling up the new RC,
// ensuring that at least 70% of original number of pods are available at
// all times during the update. |
a746c13e |
MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"` |
086d72f1 |
// MaxSurge is the maximum number of pods that can be scheduled above the
// original number of pods. Value can be an absolute number (ex: 5) or a
// percentage of total pods at the start of the update (ex: 10%). Absolute
// number is calculated from percentage by rounding up.
//
// This cannot be 0 if MaxUnavailable is 0. By default, 25% is used.
//
// Example: when this is set to 30%, the new RC can be scaled up by 30%
// immediately when the rolling update starts. Once old pods have been
// killed, new RC can be scaled up further, ensuring that total number of
// pods running at any time during the update is atmost 130% of original
// pods. |
a746c13e |
MaxSurge *intstr.IntOrString `json:"maxSurge,omitempty"` |
1e89ad0b |
// UpdatePercent is the percentage of replicas to scale up or down each
// interval. If nil, one replica will be scaled up and down each interval.
// If negative, the scale order will be down/up instead of up/down. |
086d72f1 |
// DEPRECATED: Use MaxUnavailable/MaxSurge instead. |
a746c13e |
UpdatePercent *int `json:"updatePercent,omitempty"` |
776b8158 |
// Pre is a lifecycle hook which is executed before the deployment process
// begins. All LifecycleHookFailurePolicy values are supported. |
a746c13e |
Pre *LifecycleHook `json:"pre,omitempty"` |
776b8158 |
// Post is a lifecycle hook which is executed after the strategy has
// finished all deployment logic. The LifecycleHookFailurePolicyAbort policy
// is NOT supported. |
a746c13e |
Post *LifecycleHook `json:"post,omitempty"` |
4ad08f13 |
}
|
a84e5bdc |
// These constants represent keys used for correlating objects related to deployments.
const (
// DeploymentConfigAnnotation is an annotation name used to correlate a deployment with the
// DeploymentConfig on which the deployment is based. |
b73a77b1 |
DeploymentConfigAnnotation = "openshift.io/deployment-config.name" |
a84e5bdc |
// DeploymentAnnotation is an annotation on a deployer Pod. The annotation value is the name
// of the deployment (a ReplicationController) on which the deployer Pod acts. |
b73a77b1 |
DeploymentAnnotation = "openshift.io/deployment.name" |
a84e5bdc |
// DeploymentPodAnnotation is an annotation on a deployment (a ReplicationController). The
// annotation value is the name of the deployer Pod which will act upon the ReplicationController
// to implement the deployment behavior. |
b73a77b1 |
DeploymentPodAnnotation = "openshift.io/deployer-pod.name" |
1cd520a2 |
// DeploymentPodTypeLabel is a label with which contains a type of deployment pod.
DeploymentPodTypeLabel = "openshift.io/deployer-pod.type" |
42b6f658 |
// DeployerPodForDeploymentLabel is a label which groups pods related to a
// deployment. The value is a deployment name. The deployer pod and hook pods
// created by the internal strategies will have this label. Custom
// strategies can apply this label to any pods they create, enabling
// platform-provided cancellation and garbage collection support.
DeployerPodForDeploymentLabel = "openshift.io/deployer-pod-for.name" |
a84e5bdc |
// DeploymentPhaseAnnotation is an annotation name used to retrieve the DeploymentPhase of
// a deployment. |
b73a77b1 |
DeploymentPhaseAnnotation = "openshift.io/deployment.phase" |
a84e5bdc |
// DeploymentEncodedConfigAnnotation is an annotation name used to retrieve specific encoded
// DeploymentConfig on which a given deployment is based. |
b73a77b1 |
DeploymentEncodedConfigAnnotation = "openshift.io/encoded-deployment-config" |
a84e5bdc |
// DeploymentVersionAnnotation is an annotation on a deployment (a ReplicationController). The
// annotation value is the LatestVersion value of the DeploymentConfig which was the basis for
// the deployment. |
b73a77b1 |
DeploymentVersionAnnotation = "openshift.io/deployment-config.latest-version" |
a84e5bdc |
// DeploymentLabel is the name of a label used to correlate a deployment with the Pod created
// to execute the deployment logic.
// TODO: This is a workaround for upstream's lack of annotation support on PodTemplate. Once
// annotations are available on PodTemplate, audit this constant with the goal of removing it.
DeploymentLabel = "deployment"
// DeploymentConfigLabel is the name of a label used to correlate a deployment with the
// DeploymentConfigs on which the deployment is based.
DeploymentConfigLabel = "deploymentconfig" |
4c5ddeff |
// DeploymentStatusReasonAnnotation represents the reason for deployment being in a given state
// Used for specifying the reason for cancellation or failure of a deployment
DeploymentStatusReasonAnnotation = "openshift.io/deployment.status-reason"
// DeploymentCancelledAnnotation indicates that the deployment has been cancelled
// The annotation value does not matter and its mere presence indicates cancellation
DeploymentCancelledAnnotation = "openshift.io/deployment.cancelled" |
dda90ccb |
// DeploymentInstantiatedAnnotation indicates that the deployment has been instantiated.
// The annotation value does not matter and its mere presence indicates instantiation.
DeploymentInstantiatedAnnotation = "openshift.io/deployment.instantiated" |
a84e5bdc |
)
|
df0cf4ac |
// These constants represent the various reasons for cancelling a deployment
// or for a deployment being placed in a failed state
const ( |
42829b36 |
DeploymentCancelledByUser = "cancelled by the user"
DeploymentCancelledNewerDeploymentExists = "cancelled as a newer deployment was found running"
DeploymentFailedUnrelatedDeploymentExists = "unrelated pod with the same name as this deployment is already running"
DeploymentFailedDeployerPodNoLongerExists = "deployer pod no longer exists" |
df0cf4ac |
)
|
898c2a6f |
// This constant represents the maximum duration that a deployment is allowed to run
// This is set as the default value for ActiveDeadlineSeconds for the deployer pod
// Currently set to 6 hours
const MaxDeploymentDurationSeconds int64 = 21600
|
120c5b7d |
// This constant represents the value for the DeploymentCancelledAnnotation annotation
// that signifies that the deployment should be cancelled
const DeploymentCancelledAnnotationValue = "true"
|
a84e5bdc |
// DeploymentConfig represents a configuration for a single deployment (represented as a
// ReplicationController). It also contains details about changes which resulted in the current
// state of the DeploymentConfig. Each change to the DeploymentConfig which should result in
// a new deployment results in an increment of LatestVersion.
type DeploymentConfig struct { |
987aca9b |
unversioned.TypeMeta `json:",inline"`
kapi.ObjectMeta `json:"metadata,omitempty"` |
a84e5bdc |
// Spec represents a desired deployment state and how to deploy to it. |
a746c13e |
Spec DeploymentConfigSpec `json:"spec"` |
a84e5bdc |
// Status represents a desired deployment state and how to deploy to it. |
a746c13e |
Status DeploymentConfigStatus `json:"status"` |
a84e5bdc |
}
// DeploymentTemplate contains all the necessary information to create a deployment from a
// DeploymentStrategy.
type DeploymentConfigSpec struct {
// Strategy describes how a deployment is executed. |
a746c13e |
Strategy DeploymentStrategy `json:"strategy,omitempty"` |
a84e5bdc |
// 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. |
a746c13e |
Triggers []DeploymentTriggerPolicy `json:"triggers,omitempty"` |
a84e5bdc |
// Replicas is the number of desired replicas. |
a746c13e |
Replicas int `json:"replicas"` |
a84e5bdc |
|
aa9b471e |
// Test ensures that this deployment config will have zero replicas except while a deployment is running. This allows the
// deployment config to be used as a continuous deployment test - triggering on images, running the deployment, and then succeeding
// or failing. Post strategy hooks and After actions can be used to integrate successful deployment with an action. |
a746c13e |
Test bool `json:"test"` |
aa9b471e |
|
a84e5bdc |
// Selector is a label query over pods that should match the Replicas count. |
a746c13e |
Selector map[string]string `json:"selector,omitempty"` |
a84e5bdc |
// Template is the object that describes the pod that will be created if |
3ebf9a97 |
// insufficient replicas are detected. |
a746c13e |
Template *kapi.PodTemplateSpec `json:"template,omitempty"` |
a84e5bdc |
}
type DeploymentConfigStatus struct {
// LatestVersion is used to determine whether the current deployment associated with a DeploymentConfig
// is out of sync. |
a746c13e |
LatestVersion int `json:"latestVersion,omitempty"` |
a84e5bdc |
// 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 |
a746c13e |
Details *DeploymentDetails `json:"details,omitempty"` |
f12aca35 |
// ObservedGeneration is the most recent generation observed by the controller.
ObservedGeneration int64 `json:"observedGeneration,omitempty"` |
a84e5bdc |
}
// DeploymentTriggerPolicy describes a policy for a single trigger that results in a new deployment.
type DeploymentTriggerPolicy struct { |
a746c13e |
Type DeploymentTriggerType `json:"type,omitempty"` |
a84e5bdc |
// ImageChangeParams represents the parameters for the ImageChange trigger. |
a746c13e |
ImageChangeParams *DeploymentTriggerImageChangeParams `json:"imageChangeParams,omitempty"` |
a84e5bdc |
}
// DeploymentTriggerType refers to a specific DeploymentTriggerPolicy implementation.
type DeploymentTriggerType string
const (
// 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"
)
// DeploymentTriggerImageChangeParams represents the parameters to the ImageChange trigger.
type DeploymentTriggerImageChangeParams struct { |
e3510a74 |
// Automatic means that the detection of a new tag value should result in an image update
// inside the pod template. Deployment configs that haven't been deployed yet will always
// have their images updated. Deployment configs that have been deployed at least once, will
// have their images updated only if this is set to true. |
a746c13e |
Automatic bool `json:"automatic,omitempty"` |
a84e5bdc |
// ContainerNames is used to restrict tag updates to the specified set of container names in a pod. |
a746c13e |
ContainerNames []string `json:"containerNames,omitempty"` |
3d421d42 |
// From is a reference to an image stream tag to watch for changes. From.Name is the only
// required subfield - if From.Namespace is blank, the namespace of the current deployment |
a84e5bdc |
// trigger will be used. |
a746c13e |
From kapi.ObjectReference `json:"from"` |
a84e5bdc |
// LastTriggeredImage is the last image to be triggered. |
a746c13e |
LastTriggeredImage string `json:"lastTriggeredImage"` |
a84e5bdc |
}
// DeploymentDetails captures information about the causes of a deployment.
type DeploymentDetails struct {
// The user specified change message, if this deployment was triggered manually by the user |
a746c13e |
Message string `json:"message,omitempty"` |
a84e5bdc |
// Extended data associated with all the causes for creating a new deployment |
812042ee |
Causes []DeploymentCause `json:"causes"` |
a84e5bdc |
}
// DeploymentCause captures information about a particular cause of a deployment.
type DeploymentCause struct {
// The type of the trigger that resulted in the creation of a new deployment |
a746c13e |
Type DeploymentTriggerType `json:"type"` |
a84e5bdc |
// The image trigger details, if this trigger was fired based on an image change |
a746c13e |
ImageTrigger *DeploymentCauseImageTrigger `json:"imageTrigger,omitempty"` |
a84e5bdc |
}
// DeploymentCauseImageTrigger represents details about the cause of a deployment originating
// from an image change trigger
type DeploymentCauseImageTrigger struct { |
58247893 |
// From is a reference to the changed object which triggered a deployment. The field may have |
a84e5bdc |
// the kinds DockerImage, ImageStreamTag, or ImageStreamImage. |
a746c13e |
From kapi.ObjectReference `json:"from"` |
a84e5bdc |
}
// A DeploymentConfigList is a collection of deployment configs.
type DeploymentConfigList struct { |
987aca9b |
unversioned.TypeMeta `json:",inline"`
unversioned.ListMeta `json:"metadata,omitempty"` |
a746c13e |
Items []DeploymentConfig `json:"items"` |
a84e5bdc |
}
// DeploymentConfigRollback provides the input to rollback generation.
type DeploymentConfigRollback struct { |
987aca9b |
unversioned.TypeMeta `json:",inline"` |
a84e5bdc |
// Spec defines the options to rollback generation. |
a746c13e |
Spec DeploymentConfigRollbackSpec `json:"spec"` |
a84e5bdc |
}
// DeploymentConfigRollbackSpec represents the options for rollback generation.
type DeploymentConfigRollbackSpec struct {
// From points to a ReplicationController which is a deployment. |
a746c13e |
From kapi.ObjectReference `json:"from"` |
a84e5bdc |
// IncludeTriggers specifies whether to include config Triggers. |
a746c13e |
IncludeTriggers bool `json:"includeTriggers"` |
a84e5bdc |
// IncludeTemplate specifies whether to include the PodTemplateSpec. |
a746c13e |
IncludeTemplate bool `json:"includeTemplate"` |
a84e5bdc |
// IncludeReplicationMeta specifies whether to include the replica count and selector. |
a746c13e |
IncludeReplicationMeta bool `json:"includeReplicationMeta"` |
a84e5bdc |
// IncludeStrategy specifies whether to include the deployment Strategy. |
a746c13e |
IncludeStrategy bool `json:"includeStrategy"` |
a84e5bdc |
} |
e8fcbf26 |
// DeploymentLog represents the logs for a deployment
type DeploymentLog struct {
unversioned.TypeMeta `json:",inline"`
}
// DeploymentLogOptions is the REST options for a deployment log
type DeploymentLogOptions struct {
unversioned.TypeMeta `json:",inline"`
|
298c6b44 |
// The container for which to stream logs. Defaults to only container if there is one container in the pod. |
a746c13e |
Container string `json:"container,omitempty"` |
298c6b44 |
// Follow if true indicates that the build log should be streamed until
// the build terminates. |
a746c13e |
Follow bool `json:"follow,omitempty"` |
38ccc41a |
// Return previous deployment logs. Defaults to false. |
a746c13e |
Previous bool `json:"previous,omitempty"` |
298c6b44 |
// A relative time in seconds before the current time from which to show logs. If this value
// precedes the time a pod was started, only logs since the pod start will be returned.
// If this value is in the future, no logs will be returned.
// Only one of sinceSeconds or sinceTime may be specified. |
a746c13e |
SinceSeconds *int64 `json:"sinceSeconds,omitempty"` |
298c6b44 |
// An RFC3339 timestamp from which to show logs. If this value |
604ac45d |
// precedes the time a pod was started, only logs since the pod start will be returned. |
298c6b44 |
// If this value is in the future, no logs will be returned.
// Only one of sinceSeconds or sinceTime may be specified. |
a746c13e |
SinceTime *unversioned.Time `json:"sinceTime,omitempty"` |
298c6b44 |
// If true, add an RFC3339 or RFC3339Nano timestamp at the beginning of every line
// of log output. Defaults to false. |
a746c13e |
Timestamps bool `json:"timestamps,omitempty"` |
298c6b44 |
// If set, the number of lines from the end of the logs to show. If not specified,
// logs are shown from the creation of the container or sinceSeconds or sinceTime |
a746c13e |
TailLines *int64 `json:"tailLines,omitempty"` |
298c6b44 |
// If set, the number of bytes to read from the server before terminating the
// log output. This may not display a complete final line of logging, and may return
// slightly more or slightly less than the specified limit. |
a746c13e |
LimitBytes *int64 `json:"limitBytes,omitempty"` |
e8fcbf26 |
// NoWait if true causes the call to return immediately even if the deployment
// is not available yet. Otherwise the server will wait until the deployment has started. |
a746c13e |
NoWait bool `json:"nowait,omitempty"` |
e8fcbf26 |
|
f5305c51 |
// Version of the deployment for which to view logs. |
a746c13e |
Version *int64 `json:"version,omitempty"` |
e8fcbf26 |
} |