com.amazonaws.services.codedeploy.model.CreateDeploymentRequest Maven / Gradle / Ivy
Show all versions of aws-java-sdk-codedeploy Show documentation
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.codedeploy.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.AmazonWebServiceRequest;
/**
*
* Represents the input of a CreateDeployment
operation.
*
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreateDeploymentRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {
/**
*
* The name of an CodeDeploy application associated with the user or Amazon Web Services account.
*
*/
private String applicationName;
/**
*
* The name of the deployment group.
*
*/
private String deploymentGroupName;
/**
*
* The type and location of the revision to deploy.
*
*/
private RevisionLocation revision;
/**
*
* The name of a deployment configuration associated with the user or Amazon Web Services account.
*
*
* If not specified, the value configured in the deployment group is used as the default. If the deployment group
* does not have a deployment configuration associated with it, CodeDeployDefault
.
* OneAtATime
is used by default.
*
*/
private String deploymentConfigName;
/**
*
* A comment about the deployment.
*
*/
private String description;
/**
*
* If true, then if an ApplicationStop
, BeforeBlockTraffic
, or
* AfterBlockTraffic
deployment lifecycle event to an instance fails, then the deployment continues to
* the next deployment lifecycle event. For example, if ApplicationStop
fails, the deployment continues
* with DownloadBundle
. If BeforeBlockTraffic
fails, the deployment continues with
* BlockTraffic
. If AfterBlockTraffic
fails, the deployment continues with
* ApplicationStop
.
*
*
* If false or not specified, then if a lifecycle event fails during a deployment to an instance, that deployment
* fails. If deployment to that instance is part of an overall deployment and the number of healthy hosts is not
* less than the minimum number of healthy hosts, then a deployment to the next instance is attempted.
*
*
* During a deployment, the CodeDeploy agent runs the scripts specified for ApplicationStop
,
* BeforeBlockTraffic
, and AfterBlockTraffic
in the AppSpec file from the previous
* successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If one of
* these scripts contains an error and does not run successfully, the deployment can fail.
*
*
* If the cause of the failure is a script from the last successful deployment that will never run successfully,
* create a new deployment and use ignoreApplicationStopFailures
to specify that the
* ApplicationStop
, BeforeBlockTraffic
, and AfterBlockTraffic
failures should
* be ignored.
*
*/
private Boolean ignoreApplicationStopFailures;
/**
*
* Information about the instances that belong to the replacement environment in a blue/green deployment.
*
*/
private TargetInstances targetInstances;
/**
*
* Configuration information for an automatic rollback that is added when a deployment is created.
*
*/
private AutoRollbackConfiguration autoRollbackConfiguration;
/**
*
* Indicates whether to deploy to all instances or only to instances that are not running the latest application
* revision.
*
*/
private Boolean updateOutdatedInstancesOnly;
/**
*
* Information about how CodeDeploy handles files that already exist in a deployment target location but weren't
* part of the previous successful deployment.
*
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the version
* already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
*
*/
private String fileExistsBehavior;
/**
*
* Allows you to specify information about alarms associated with a deployment. The alarm configuration that you
* specify here will override the alarm configuration at the deployment group level. Consider overriding the alarm
* configuration if you have set up alarms at the deployment group level that are causing deployment failures. In
* this case, you would call CreateDeployment
to create a new deployment that uses a previous
* application revision that is known to work, and set its alarm configuration to turn off alarm polling. Turning
* off alarm polling ensures that the new deployment proceeds without being blocked by the alarm that was generated
* by the previous, failed, deployment.
*
*
*
* If you specify an overrideAlarmConfiguration
, you need the UpdateDeploymentGroup
IAM
* permission when calling CreateDeployment
.
*
*
*/
private AlarmConfiguration overrideAlarmConfiguration;
/**
*
* The name of an CodeDeploy application associated with the user or Amazon Web Services account.
*
*
* @param applicationName
* The name of an CodeDeploy application associated with the user or Amazon Web Services account.
*/
public void setApplicationName(String applicationName) {
this.applicationName = applicationName;
}
/**
*
* The name of an CodeDeploy application associated with the user or Amazon Web Services account.
*
*
* @return The name of an CodeDeploy application associated with the user or Amazon Web Services account.
*/
public String getApplicationName() {
return this.applicationName;
}
/**
*
* The name of an CodeDeploy application associated with the user or Amazon Web Services account.
*
*
* @param applicationName
* The name of an CodeDeploy application associated with the user or Amazon Web Services account.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withApplicationName(String applicationName) {
setApplicationName(applicationName);
return this;
}
/**
*
* The name of the deployment group.
*
*
* @param deploymentGroupName
* The name of the deployment group.
*/
public void setDeploymentGroupName(String deploymentGroupName) {
this.deploymentGroupName = deploymentGroupName;
}
/**
*
* The name of the deployment group.
*
*
* @return The name of the deployment group.
*/
public String getDeploymentGroupName() {
return this.deploymentGroupName;
}
/**
*
* The name of the deployment group.
*
*
* @param deploymentGroupName
* The name of the deployment group.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withDeploymentGroupName(String deploymentGroupName) {
setDeploymentGroupName(deploymentGroupName);
return this;
}
/**
*
* The type and location of the revision to deploy.
*
*
* @param revision
* The type and location of the revision to deploy.
*/
public void setRevision(RevisionLocation revision) {
this.revision = revision;
}
/**
*
* The type and location of the revision to deploy.
*
*
* @return The type and location of the revision to deploy.
*/
public RevisionLocation getRevision() {
return this.revision;
}
/**
*
* The type and location of the revision to deploy.
*
*
* @param revision
* The type and location of the revision to deploy.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withRevision(RevisionLocation revision) {
setRevision(revision);
return this;
}
/**
*
* The name of a deployment configuration associated with the user or Amazon Web Services account.
*
*
* If not specified, the value configured in the deployment group is used as the default. If the deployment group
* does not have a deployment configuration associated with it, CodeDeployDefault
.
* OneAtATime
is used by default.
*
*
* @param deploymentConfigName
* The name of a deployment configuration associated with the user or Amazon Web Services account.
*
* If not specified, the value configured in the deployment group is used as the default. If the deployment
* group does not have a deployment configuration associated with it, CodeDeployDefault
.
* OneAtATime
is used by default.
*/
public void setDeploymentConfigName(String deploymentConfigName) {
this.deploymentConfigName = deploymentConfigName;
}
/**
*
* The name of a deployment configuration associated with the user or Amazon Web Services account.
*
*
* If not specified, the value configured in the deployment group is used as the default. If the deployment group
* does not have a deployment configuration associated with it, CodeDeployDefault
.
* OneAtATime
is used by default.
*
*
* @return The name of a deployment configuration associated with the user or Amazon Web Services account.
*
* If not specified, the value configured in the deployment group is used as the default. If the deployment
* group does not have a deployment configuration associated with it, CodeDeployDefault
.
* OneAtATime
is used by default.
*/
public String getDeploymentConfigName() {
return this.deploymentConfigName;
}
/**
*
* The name of a deployment configuration associated with the user or Amazon Web Services account.
*
*
* If not specified, the value configured in the deployment group is used as the default. If the deployment group
* does not have a deployment configuration associated with it, CodeDeployDefault
.
* OneAtATime
is used by default.
*
*
* @param deploymentConfigName
* The name of a deployment configuration associated with the user or Amazon Web Services account.
*
* If not specified, the value configured in the deployment group is used as the default. If the deployment
* group does not have a deployment configuration associated with it, CodeDeployDefault
.
* OneAtATime
is used by default.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withDeploymentConfigName(String deploymentConfigName) {
setDeploymentConfigName(deploymentConfigName);
return this;
}
/**
*
* A comment about the deployment.
*
*
* @param description
* A comment about the deployment.
*/
public void setDescription(String description) {
this.description = description;
}
/**
*
* A comment about the deployment.
*
*
* @return A comment about the deployment.
*/
public String getDescription() {
return this.description;
}
/**
*
* A comment about the deployment.
*
*
* @param description
* A comment about the deployment.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withDescription(String description) {
setDescription(description);
return this;
}
/**
*
* If true, then if an ApplicationStop
, BeforeBlockTraffic
, or
* AfterBlockTraffic
deployment lifecycle event to an instance fails, then the deployment continues to
* the next deployment lifecycle event. For example, if ApplicationStop
fails, the deployment continues
* with DownloadBundle
. If BeforeBlockTraffic
fails, the deployment continues with
* BlockTraffic
. If AfterBlockTraffic
fails, the deployment continues with
* ApplicationStop
.
*
*
* If false or not specified, then if a lifecycle event fails during a deployment to an instance, that deployment
* fails. If deployment to that instance is part of an overall deployment and the number of healthy hosts is not
* less than the minimum number of healthy hosts, then a deployment to the next instance is attempted.
*
*
* During a deployment, the CodeDeploy agent runs the scripts specified for ApplicationStop
,
* BeforeBlockTraffic
, and AfterBlockTraffic
in the AppSpec file from the previous
* successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If one of
* these scripts contains an error and does not run successfully, the deployment can fail.
*
*
* If the cause of the failure is a script from the last successful deployment that will never run successfully,
* create a new deployment and use ignoreApplicationStopFailures
to specify that the
* ApplicationStop
, BeforeBlockTraffic
, and AfterBlockTraffic
failures should
* be ignored.
*
*
* @param ignoreApplicationStopFailures
* If true, then if an ApplicationStop
, BeforeBlockTraffic
, or
* AfterBlockTraffic
deployment lifecycle event to an instance fails, then the deployment
* continues to the next deployment lifecycle event. For example, if ApplicationStop
fails, the
* deployment continues with DownloadBundle
. If BeforeBlockTraffic
fails, the
* deployment continues with BlockTraffic
. If AfterBlockTraffic
fails, the
* deployment continues with ApplicationStop
.
*
* If false or not specified, then if a lifecycle event fails during a deployment to an instance, that
* deployment fails. If deployment to that instance is part of an overall deployment and the number of
* healthy hosts is not less than the minimum number of healthy hosts, then a deployment to the next instance
* is attempted.
*
*
* During a deployment, the CodeDeploy agent runs the scripts specified for ApplicationStop
,
* BeforeBlockTraffic
, and AfterBlockTraffic
in the AppSpec file from the previous
* successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If one
* of these scripts contains an error and does not run successfully, the deployment can fail.
*
*
* If the cause of the failure is a script from the last successful deployment that will never run
* successfully, create a new deployment and use ignoreApplicationStopFailures
to specify that
* the ApplicationStop
, BeforeBlockTraffic
, and AfterBlockTraffic
* failures should be ignored.
*/
public void setIgnoreApplicationStopFailures(Boolean ignoreApplicationStopFailures) {
this.ignoreApplicationStopFailures = ignoreApplicationStopFailures;
}
/**
*
* If true, then if an ApplicationStop
, BeforeBlockTraffic
, or
* AfterBlockTraffic
deployment lifecycle event to an instance fails, then the deployment continues to
* the next deployment lifecycle event. For example, if ApplicationStop
fails, the deployment continues
* with DownloadBundle
. If BeforeBlockTraffic
fails, the deployment continues with
* BlockTraffic
. If AfterBlockTraffic
fails, the deployment continues with
* ApplicationStop
.
*
*
* If false or not specified, then if a lifecycle event fails during a deployment to an instance, that deployment
* fails. If deployment to that instance is part of an overall deployment and the number of healthy hosts is not
* less than the minimum number of healthy hosts, then a deployment to the next instance is attempted.
*
*
* During a deployment, the CodeDeploy agent runs the scripts specified for ApplicationStop
,
* BeforeBlockTraffic
, and AfterBlockTraffic
in the AppSpec file from the previous
* successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If one of
* these scripts contains an error and does not run successfully, the deployment can fail.
*
*
* If the cause of the failure is a script from the last successful deployment that will never run successfully,
* create a new deployment and use ignoreApplicationStopFailures
to specify that the
* ApplicationStop
, BeforeBlockTraffic
, and AfterBlockTraffic
failures should
* be ignored.
*
*
* @return If true, then if an ApplicationStop
, BeforeBlockTraffic
, or
* AfterBlockTraffic
deployment lifecycle event to an instance fails, then the deployment
* continues to the next deployment lifecycle event. For example, if ApplicationStop
fails, the
* deployment continues with DownloadBundle
. If BeforeBlockTraffic
fails, the
* deployment continues with BlockTraffic
. If AfterBlockTraffic
fails, the
* deployment continues with ApplicationStop
.
*
* If false or not specified, then if a lifecycle event fails during a deployment to an instance, that
* deployment fails. If deployment to that instance is part of an overall deployment and the number of
* healthy hosts is not less than the minimum number of healthy hosts, then a deployment to the next
* instance is attempted.
*
*
* During a deployment, the CodeDeploy agent runs the scripts specified for ApplicationStop
,
* BeforeBlockTraffic
, and AfterBlockTraffic
in the AppSpec file from the previous
* successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If
* one of these scripts contains an error and does not run successfully, the deployment can fail.
*
*
* If the cause of the failure is a script from the last successful deployment that will never run
* successfully, create a new deployment and use ignoreApplicationStopFailures
to specify that
* the ApplicationStop
, BeforeBlockTraffic
, and AfterBlockTraffic
* failures should be ignored.
*/
public Boolean getIgnoreApplicationStopFailures() {
return this.ignoreApplicationStopFailures;
}
/**
*
* If true, then if an ApplicationStop
, BeforeBlockTraffic
, or
* AfterBlockTraffic
deployment lifecycle event to an instance fails, then the deployment continues to
* the next deployment lifecycle event. For example, if ApplicationStop
fails, the deployment continues
* with DownloadBundle
. If BeforeBlockTraffic
fails, the deployment continues with
* BlockTraffic
. If AfterBlockTraffic
fails, the deployment continues with
* ApplicationStop
.
*
*
* If false or not specified, then if a lifecycle event fails during a deployment to an instance, that deployment
* fails. If deployment to that instance is part of an overall deployment and the number of healthy hosts is not
* less than the minimum number of healthy hosts, then a deployment to the next instance is attempted.
*
*
* During a deployment, the CodeDeploy agent runs the scripts specified for ApplicationStop
,
* BeforeBlockTraffic
, and AfterBlockTraffic
in the AppSpec file from the previous
* successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If one of
* these scripts contains an error and does not run successfully, the deployment can fail.
*
*
* If the cause of the failure is a script from the last successful deployment that will never run successfully,
* create a new deployment and use ignoreApplicationStopFailures
to specify that the
* ApplicationStop
, BeforeBlockTraffic
, and AfterBlockTraffic
failures should
* be ignored.
*
*
* @param ignoreApplicationStopFailures
* If true, then if an ApplicationStop
, BeforeBlockTraffic
, or
* AfterBlockTraffic
deployment lifecycle event to an instance fails, then the deployment
* continues to the next deployment lifecycle event. For example, if ApplicationStop
fails, the
* deployment continues with DownloadBundle
. If BeforeBlockTraffic
fails, the
* deployment continues with BlockTraffic
. If AfterBlockTraffic
fails, the
* deployment continues with ApplicationStop
.
*
* If false or not specified, then if a lifecycle event fails during a deployment to an instance, that
* deployment fails. If deployment to that instance is part of an overall deployment and the number of
* healthy hosts is not less than the minimum number of healthy hosts, then a deployment to the next instance
* is attempted.
*
*
* During a deployment, the CodeDeploy agent runs the scripts specified for ApplicationStop
,
* BeforeBlockTraffic
, and AfterBlockTraffic
in the AppSpec file from the previous
* successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If one
* of these scripts contains an error and does not run successfully, the deployment can fail.
*
*
* If the cause of the failure is a script from the last successful deployment that will never run
* successfully, create a new deployment and use ignoreApplicationStopFailures
to specify that
* the ApplicationStop
, BeforeBlockTraffic
, and AfterBlockTraffic
* failures should be ignored.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withIgnoreApplicationStopFailures(Boolean ignoreApplicationStopFailures) {
setIgnoreApplicationStopFailures(ignoreApplicationStopFailures);
return this;
}
/**
*
* If true, then if an ApplicationStop
, BeforeBlockTraffic
, or
* AfterBlockTraffic
deployment lifecycle event to an instance fails, then the deployment continues to
* the next deployment lifecycle event. For example, if ApplicationStop
fails, the deployment continues
* with DownloadBundle
. If BeforeBlockTraffic
fails, the deployment continues with
* BlockTraffic
. If AfterBlockTraffic
fails, the deployment continues with
* ApplicationStop
.
*
*
* If false or not specified, then if a lifecycle event fails during a deployment to an instance, that deployment
* fails. If deployment to that instance is part of an overall deployment and the number of healthy hosts is not
* less than the minimum number of healthy hosts, then a deployment to the next instance is attempted.
*
*
* During a deployment, the CodeDeploy agent runs the scripts specified for ApplicationStop
,
* BeforeBlockTraffic
, and AfterBlockTraffic
in the AppSpec file from the previous
* successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If one of
* these scripts contains an error and does not run successfully, the deployment can fail.
*
*
* If the cause of the failure is a script from the last successful deployment that will never run successfully,
* create a new deployment and use ignoreApplicationStopFailures
to specify that the
* ApplicationStop
, BeforeBlockTraffic
, and AfterBlockTraffic
failures should
* be ignored.
*
*
* @return If true, then if an ApplicationStop
, BeforeBlockTraffic
, or
* AfterBlockTraffic
deployment lifecycle event to an instance fails, then the deployment
* continues to the next deployment lifecycle event. For example, if ApplicationStop
fails, the
* deployment continues with DownloadBundle
. If BeforeBlockTraffic
fails, the
* deployment continues with BlockTraffic
. If AfterBlockTraffic
fails, the
* deployment continues with ApplicationStop
.
*
* If false or not specified, then if a lifecycle event fails during a deployment to an instance, that
* deployment fails. If deployment to that instance is part of an overall deployment and the number of
* healthy hosts is not less than the minimum number of healthy hosts, then a deployment to the next
* instance is attempted.
*
*
* During a deployment, the CodeDeploy agent runs the scripts specified for ApplicationStop
,
* BeforeBlockTraffic
, and AfterBlockTraffic
in the AppSpec file from the previous
* successful deployment. (All other scripts are run from the AppSpec file in the current deployment.) If
* one of these scripts contains an error and does not run successfully, the deployment can fail.
*
*
* If the cause of the failure is a script from the last successful deployment that will never run
* successfully, create a new deployment and use ignoreApplicationStopFailures
to specify that
* the ApplicationStop
, BeforeBlockTraffic
, and AfterBlockTraffic
* failures should be ignored.
*/
public Boolean isIgnoreApplicationStopFailures() {
return this.ignoreApplicationStopFailures;
}
/**
*
* Information about the instances that belong to the replacement environment in a blue/green deployment.
*
*
* @param targetInstances
* Information about the instances that belong to the replacement environment in a blue/green deployment.
*/
public void setTargetInstances(TargetInstances targetInstances) {
this.targetInstances = targetInstances;
}
/**
*
* Information about the instances that belong to the replacement environment in a blue/green deployment.
*
*
* @return Information about the instances that belong to the replacement environment in a blue/green deployment.
*/
public TargetInstances getTargetInstances() {
return this.targetInstances;
}
/**
*
* Information about the instances that belong to the replacement environment in a blue/green deployment.
*
*
* @param targetInstances
* Information about the instances that belong to the replacement environment in a blue/green deployment.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withTargetInstances(TargetInstances targetInstances) {
setTargetInstances(targetInstances);
return this;
}
/**
*
* Configuration information for an automatic rollback that is added when a deployment is created.
*
*
* @param autoRollbackConfiguration
* Configuration information for an automatic rollback that is added when a deployment is created.
*/
public void setAutoRollbackConfiguration(AutoRollbackConfiguration autoRollbackConfiguration) {
this.autoRollbackConfiguration = autoRollbackConfiguration;
}
/**
*
* Configuration information for an automatic rollback that is added when a deployment is created.
*
*
* @return Configuration information for an automatic rollback that is added when a deployment is created.
*/
public AutoRollbackConfiguration getAutoRollbackConfiguration() {
return this.autoRollbackConfiguration;
}
/**
*
* Configuration information for an automatic rollback that is added when a deployment is created.
*
*
* @param autoRollbackConfiguration
* Configuration information for an automatic rollback that is added when a deployment is created.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withAutoRollbackConfiguration(AutoRollbackConfiguration autoRollbackConfiguration) {
setAutoRollbackConfiguration(autoRollbackConfiguration);
return this;
}
/**
*
* Indicates whether to deploy to all instances or only to instances that are not running the latest application
* revision.
*
*
* @param updateOutdatedInstancesOnly
* Indicates whether to deploy to all instances or only to instances that are not running the latest
* application revision.
*/
public void setUpdateOutdatedInstancesOnly(Boolean updateOutdatedInstancesOnly) {
this.updateOutdatedInstancesOnly = updateOutdatedInstancesOnly;
}
/**
*
* Indicates whether to deploy to all instances or only to instances that are not running the latest application
* revision.
*
*
* @return Indicates whether to deploy to all instances or only to instances that are not running the latest
* application revision.
*/
public Boolean getUpdateOutdatedInstancesOnly() {
return this.updateOutdatedInstancesOnly;
}
/**
*
* Indicates whether to deploy to all instances or only to instances that are not running the latest application
* revision.
*
*
* @param updateOutdatedInstancesOnly
* Indicates whether to deploy to all instances or only to instances that are not running the latest
* application revision.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withUpdateOutdatedInstancesOnly(Boolean updateOutdatedInstancesOnly) {
setUpdateOutdatedInstancesOnly(updateOutdatedInstancesOnly);
return this;
}
/**
*
* Indicates whether to deploy to all instances or only to instances that are not running the latest application
* revision.
*
*
* @return Indicates whether to deploy to all instances or only to instances that are not running the latest
* application revision.
*/
public Boolean isUpdateOutdatedInstancesOnly() {
return this.updateOutdatedInstancesOnly;
}
/**
*
* Information about how CodeDeploy handles files that already exist in a deployment target location but weren't
* part of the previous successful deployment.
*
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the version
* already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
*
*
* @param fileExistsBehavior
* Information about how CodeDeploy handles files that already exist in a deployment target location but
* weren't part of the previous successful deployment.
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the
* version already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
* @see FileExistsBehavior
*/
public void setFileExistsBehavior(String fileExistsBehavior) {
this.fileExistsBehavior = fileExistsBehavior;
}
/**
*
* Information about how CodeDeploy handles files that already exist in a deployment target location but weren't
* part of the previous successful deployment.
*
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the version
* already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
*
*
* @return Information about how CodeDeploy handles files that already exist in a deployment target location but
* weren't part of the previous successful deployment.
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the
* version already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
* @see FileExistsBehavior
*/
public String getFileExistsBehavior() {
return this.fileExistsBehavior;
}
/**
*
* Information about how CodeDeploy handles files that already exist in a deployment target location but weren't
* part of the previous successful deployment.
*
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the version
* already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
*
*
* @param fileExistsBehavior
* Information about how CodeDeploy handles files that already exist in a deployment target location but
* weren't part of the previous successful deployment.
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the
* version already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see FileExistsBehavior
*/
public CreateDeploymentRequest withFileExistsBehavior(String fileExistsBehavior) {
setFileExistsBehavior(fileExistsBehavior);
return this;
}
/**
*
* Information about how CodeDeploy handles files that already exist in a deployment target location but weren't
* part of the previous successful deployment.
*
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the version
* already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
*
*
* @param fileExistsBehavior
* Information about how CodeDeploy handles files that already exist in a deployment target location but
* weren't part of the previous successful deployment.
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the
* version already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
* @see FileExistsBehavior
*/
public void setFileExistsBehavior(FileExistsBehavior fileExistsBehavior) {
withFileExistsBehavior(fileExistsBehavior);
}
/**
*
* Information about how CodeDeploy handles files that already exist in a deployment target location but weren't
* part of the previous successful deployment.
*
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the version
* already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
*
*
* @param fileExistsBehavior
* Information about how CodeDeploy handles files that already exist in a deployment target location but
* weren't part of the previous successful deployment.
*
* The fileExistsBehavior
parameter takes any of the following values:
*
*
* -
*
* DISALLOW: The deployment fails. This is also the default behavior if no option is specified.
*
*
* -
*
* OVERWRITE: The version of the file from the application revision currently being deployed replaces the
* version already on the instance.
*
*
* -
*
* RETAIN: The version of the file already on the instance is kept and used as part of the new deployment.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see FileExistsBehavior
*/
public CreateDeploymentRequest withFileExistsBehavior(FileExistsBehavior fileExistsBehavior) {
this.fileExistsBehavior = fileExistsBehavior.toString();
return this;
}
/**
*
* Allows you to specify information about alarms associated with a deployment. The alarm configuration that you
* specify here will override the alarm configuration at the deployment group level. Consider overriding the alarm
* configuration if you have set up alarms at the deployment group level that are causing deployment failures. In
* this case, you would call CreateDeployment
to create a new deployment that uses a previous
* application revision that is known to work, and set its alarm configuration to turn off alarm polling. Turning
* off alarm polling ensures that the new deployment proceeds without being blocked by the alarm that was generated
* by the previous, failed, deployment.
*
*
*
* If you specify an overrideAlarmConfiguration
, you need the UpdateDeploymentGroup
IAM
* permission when calling CreateDeployment
.
*
*
*
* @param overrideAlarmConfiguration
* Allows you to specify information about alarms associated with a deployment. The alarm configuration that
* you specify here will override the alarm configuration at the deployment group level. Consider overriding
* the alarm configuration if you have set up alarms at the deployment group level that are causing
* deployment failures. In this case, you would call CreateDeployment
to create a new deployment
* that uses a previous application revision that is known to work, and set its alarm configuration to turn
* off alarm polling. Turning off alarm polling ensures that the new deployment proceeds without being
* blocked by the alarm that was generated by the previous, failed, deployment.
*
* If you specify an overrideAlarmConfiguration
, you need the UpdateDeploymentGroup
* IAM permission when calling CreateDeployment
.
*
*/
public void setOverrideAlarmConfiguration(AlarmConfiguration overrideAlarmConfiguration) {
this.overrideAlarmConfiguration = overrideAlarmConfiguration;
}
/**
*
* Allows you to specify information about alarms associated with a deployment. The alarm configuration that you
* specify here will override the alarm configuration at the deployment group level. Consider overriding the alarm
* configuration if you have set up alarms at the deployment group level that are causing deployment failures. In
* this case, you would call CreateDeployment
to create a new deployment that uses a previous
* application revision that is known to work, and set its alarm configuration to turn off alarm polling. Turning
* off alarm polling ensures that the new deployment proceeds without being blocked by the alarm that was generated
* by the previous, failed, deployment.
*
*
*
* If you specify an overrideAlarmConfiguration
, you need the UpdateDeploymentGroup
IAM
* permission when calling CreateDeployment
.
*
*
*
* @return Allows you to specify information about alarms associated with a deployment. The alarm configuration that
* you specify here will override the alarm configuration at the deployment group level. Consider overriding
* the alarm configuration if you have set up alarms at the deployment group level that are causing
* deployment failures. In this case, you would call CreateDeployment
to create a new
* deployment that uses a previous application revision that is known to work, and set its alarm
* configuration to turn off alarm polling. Turning off alarm polling ensures that the new deployment
* proceeds without being blocked by the alarm that was generated by the previous, failed, deployment.
*
*
* If you specify an overrideAlarmConfiguration
, you need the
* UpdateDeploymentGroup
IAM permission when calling CreateDeployment
.
*
*/
public AlarmConfiguration getOverrideAlarmConfiguration() {
return this.overrideAlarmConfiguration;
}
/**
*
* Allows you to specify information about alarms associated with a deployment. The alarm configuration that you
* specify here will override the alarm configuration at the deployment group level. Consider overriding the alarm
* configuration if you have set up alarms at the deployment group level that are causing deployment failures. In
* this case, you would call CreateDeployment
to create a new deployment that uses a previous
* application revision that is known to work, and set its alarm configuration to turn off alarm polling. Turning
* off alarm polling ensures that the new deployment proceeds without being blocked by the alarm that was generated
* by the previous, failed, deployment.
*
*
*
* If you specify an overrideAlarmConfiguration
, you need the UpdateDeploymentGroup
IAM
* permission when calling CreateDeployment
.
*
*
*
* @param overrideAlarmConfiguration
* Allows you to specify information about alarms associated with a deployment. The alarm configuration that
* you specify here will override the alarm configuration at the deployment group level. Consider overriding
* the alarm configuration if you have set up alarms at the deployment group level that are causing
* deployment failures. In this case, you would call CreateDeployment
to create a new deployment
* that uses a previous application revision that is known to work, and set its alarm configuration to turn
* off alarm polling. Turning off alarm polling ensures that the new deployment proceeds without being
* blocked by the alarm that was generated by the previous, failed, deployment.
*
* If you specify an overrideAlarmConfiguration
, you need the UpdateDeploymentGroup
* IAM permission when calling CreateDeployment
.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDeploymentRequest withOverrideAlarmConfiguration(AlarmConfiguration overrideAlarmConfiguration) {
setOverrideAlarmConfiguration(overrideAlarmConfiguration);
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getApplicationName() != null)
sb.append("ApplicationName: ").append(getApplicationName()).append(",");
if (getDeploymentGroupName() != null)
sb.append("DeploymentGroupName: ").append(getDeploymentGroupName()).append(",");
if (getRevision() != null)
sb.append("Revision: ").append(getRevision()).append(",");
if (getDeploymentConfigName() != null)
sb.append("DeploymentConfigName: ").append(getDeploymentConfigName()).append(",");
if (getDescription() != null)
sb.append("Description: ").append(getDescription()).append(",");
if (getIgnoreApplicationStopFailures() != null)
sb.append("IgnoreApplicationStopFailures: ").append(getIgnoreApplicationStopFailures()).append(",");
if (getTargetInstances() != null)
sb.append("TargetInstances: ").append(getTargetInstances()).append(",");
if (getAutoRollbackConfiguration() != null)
sb.append("AutoRollbackConfiguration: ").append(getAutoRollbackConfiguration()).append(",");
if (getUpdateOutdatedInstancesOnly() != null)
sb.append("UpdateOutdatedInstancesOnly: ").append(getUpdateOutdatedInstancesOnly()).append(",");
if (getFileExistsBehavior() != null)
sb.append("FileExistsBehavior: ").append(getFileExistsBehavior()).append(",");
if (getOverrideAlarmConfiguration() != null)
sb.append("OverrideAlarmConfiguration: ").append(getOverrideAlarmConfiguration());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof CreateDeploymentRequest == false)
return false;
CreateDeploymentRequest other = (CreateDeploymentRequest) obj;
if (other.getApplicationName() == null ^ this.getApplicationName() == null)
return false;
if (other.getApplicationName() != null && other.getApplicationName().equals(this.getApplicationName()) == false)
return false;
if (other.getDeploymentGroupName() == null ^ this.getDeploymentGroupName() == null)
return false;
if (other.getDeploymentGroupName() != null && other.getDeploymentGroupName().equals(this.getDeploymentGroupName()) == false)
return false;
if (other.getRevision() == null ^ this.getRevision() == null)
return false;
if (other.getRevision() != null && other.getRevision().equals(this.getRevision()) == false)
return false;
if (other.getDeploymentConfigName() == null ^ this.getDeploymentConfigName() == null)
return false;
if (other.getDeploymentConfigName() != null && other.getDeploymentConfigName().equals(this.getDeploymentConfigName()) == false)
return false;
if (other.getDescription() == null ^ this.getDescription() == null)
return false;
if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false)
return false;
if (other.getIgnoreApplicationStopFailures() == null ^ this.getIgnoreApplicationStopFailures() == null)
return false;
if (other.getIgnoreApplicationStopFailures() != null
&& other.getIgnoreApplicationStopFailures().equals(this.getIgnoreApplicationStopFailures()) == false)
return false;
if (other.getTargetInstances() == null ^ this.getTargetInstances() == null)
return false;
if (other.getTargetInstances() != null && other.getTargetInstances().equals(this.getTargetInstances()) == false)
return false;
if (other.getAutoRollbackConfiguration() == null ^ this.getAutoRollbackConfiguration() == null)
return false;
if (other.getAutoRollbackConfiguration() != null && other.getAutoRollbackConfiguration().equals(this.getAutoRollbackConfiguration()) == false)
return false;
if (other.getUpdateOutdatedInstancesOnly() == null ^ this.getUpdateOutdatedInstancesOnly() == null)
return false;
if (other.getUpdateOutdatedInstancesOnly() != null && other.getUpdateOutdatedInstancesOnly().equals(this.getUpdateOutdatedInstancesOnly()) == false)
return false;
if (other.getFileExistsBehavior() == null ^ this.getFileExistsBehavior() == null)
return false;
if (other.getFileExistsBehavior() != null && other.getFileExistsBehavior().equals(this.getFileExistsBehavior()) == false)
return false;
if (other.getOverrideAlarmConfiguration() == null ^ this.getOverrideAlarmConfiguration() == null)
return false;
if (other.getOverrideAlarmConfiguration() != null && other.getOverrideAlarmConfiguration().equals(this.getOverrideAlarmConfiguration()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getApplicationName() == null) ? 0 : getApplicationName().hashCode());
hashCode = prime * hashCode + ((getDeploymentGroupName() == null) ? 0 : getDeploymentGroupName().hashCode());
hashCode = prime * hashCode + ((getRevision() == null) ? 0 : getRevision().hashCode());
hashCode = prime * hashCode + ((getDeploymentConfigName() == null) ? 0 : getDeploymentConfigName().hashCode());
hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode());
hashCode = prime * hashCode + ((getIgnoreApplicationStopFailures() == null) ? 0 : getIgnoreApplicationStopFailures().hashCode());
hashCode = prime * hashCode + ((getTargetInstances() == null) ? 0 : getTargetInstances().hashCode());
hashCode = prime * hashCode + ((getAutoRollbackConfiguration() == null) ? 0 : getAutoRollbackConfiguration().hashCode());
hashCode = prime * hashCode + ((getUpdateOutdatedInstancesOnly() == null) ? 0 : getUpdateOutdatedInstancesOnly().hashCode());
hashCode = prime * hashCode + ((getFileExistsBehavior() == null) ? 0 : getFileExistsBehavior().hashCode());
hashCode = prime * hashCode + ((getOverrideAlarmConfiguration() == null) ? 0 : getOverrideAlarmConfiguration().hashCode());
return hashCode;
}
@Override
public CreateDeploymentRequest clone() {
return (CreateDeploymentRequest) super.clone();
}
}