Class EC2DeploymentOptions
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<EC2DeploymentOptions.Builder,EC2DeploymentOptions>
Options that control how CodeDeploy manages Amazon EC2 Auto Scaling groups during a deployment.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionfinal List<AutoScalingGroupProcess> The Amazon EC2 Auto Scaling processes to suspend during the deployment.The Amazon EC2 Auto Scaling processes to suspend during the deployment.static EC2DeploymentOptions.Builderbuilder()final booleanfinal booleanequalsBySdkFields(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz) final booleanFor responses, this returns true if the service returned a value for the AutoScalingGroupProcessesToSuspend property.final inthashCode()static Class<? extends EC2DeploymentOptions.Builder> Take this object and create a builder that contains all of the current property values of this object.final StringtoString()Returns a string representation of this object.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
autoScalingGroupProcessesToSuspend
The Amazon EC2 Auto Scaling processes to suspend during the deployment. CodeDeploy suspends these processes before it deploys to instances in an Auto Scaling group, and resumes them when the deployment succeeds, fails, or is stopped. Valid values are
Terminate,AZRebalance,InstanceRefresh, andScheduledActions.This parameter applies only to in-place deployments on the EC2/On-premises compute platform. If the list is empty, or if the deployment does not target instances in an Auto Scaling group, no processes are suspended.
The service role for the deployment group must have permission to call
autoscaling:SuspendProcessesandautoscaling:ResumeProcesseson the target Auto Scaling groups. If the processes cannot be suspended, the deployment fails before any instance is updated.If you suspend
ScheduledActions, scheduled actions with a start time during the deployment are skipped and do not run after the process resumes.If CodeDeploy cannot resume the processes, the deployment fails and the processes stay suspended until you resume them with the Auto Scaling
ResumeProcessesaction. WhileTerminateis suspended, Auto Scaling does not replace unhealthy instances. If you suspendTerminate, configure a trigger that notifies you when a deployment fails.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasAutoScalingGroupProcessesToSuspend()method.- Returns:
- The Amazon EC2 Auto Scaling processes to suspend during the deployment. CodeDeploy suspends these
processes before it deploys to instances in an Auto Scaling group, and resumes them when the deployment
succeeds, fails, or is stopped. Valid values are
Terminate,AZRebalance,InstanceRefresh, andScheduledActions.This parameter applies only to in-place deployments on the EC2/On-premises compute platform. If the list is empty, or if the deployment does not target instances in an Auto Scaling group, no processes are suspended.
The service role for the deployment group must have permission to call
autoscaling:SuspendProcessesandautoscaling:ResumeProcesseson the target Auto Scaling groups. If the processes cannot be suspended, the deployment fails before any instance is updated.If you suspend
ScheduledActions, scheduled actions with a start time during the deployment are skipped and do not run after the process resumes.If CodeDeploy cannot resume the processes, the deployment fails and the processes stay suspended until you resume them with the Auto Scaling
ResumeProcessesaction. WhileTerminateis suspended, Auto Scaling does not replace unhealthy instances. If you suspendTerminate, configure a trigger that notifies you when a deployment fails.
-
hasAutoScalingGroupProcessesToSuspend
public final boolean hasAutoScalingGroupProcessesToSuspend()For responses, this returns true if the service returned a value for the AutoScalingGroupProcessesToSuspend property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
autoScalingGroupProcessesToSuspendAsStrings
The Amazon EC2 Auto Scaling processes to suspend during the deployment. CodeDeploy suspends these processes before it deploys to instances in an Auto Scaling group, and resumes them when the deployment succeeds, fails, or is stopped. Valid values are
Terminate,AZRebalance,InstanceRefresh, andScheduledActions.This parameter applies only to in-place deployments on the EC2/On-premises compute platform. If the list is empty, or if the deployment does not target instances in an Auto Scaling group, no processes are suspended.
The service role for the deployment group must have permission to call
autoscaling:SuspendProcessesandautoscaling:ResumeProcesseson the target Auto Scaling groups. If the processes cannot be suspended, the deployment fails before any instance is updated.If you suspend
ScheduledActions, scheduled actions with a start time during the deployment are skipped and do not run after the process resumes.If CodeDeploy cannot resume the processes, the deployment fails and the processes stay suspended until you resume them with the Auto Scaling
ResumeProcessesaction. WhileTerminateis suspended, Auto Scaling does not replace unhealthy instances. If you suspendTerminate, configure a trigger that notifies you when a deployment fails.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasAutoScalingGroupProcessesToSuspend()method.- Returns:
- The Amazon EC2 Auto Scaling processes to suspend during the deployment. CodeDeploy suspends these
processes before it deploys to instances in an Auto Scaling group, and resumes them when the deployment
succeeds, fails, or is stopped. Valid values are
Terminate,AZRebalance,InstanceRefresh, andScheduledActions.This parameter applies only to in-place deployments on the EC2/On-premises compute platform. If the list is empty, or if the deployment does not target instances in an Auto Scaling group, no processes are suspended.
The service role for the deployment group must have permission to call
autoscaling:SuspendProcessesandautoscaling:ResumeProcesseson the target Auto Scaling groups. If the processes cannot be suspended, the deployment fails before any instance is updated.If you suspend
ScheduledActions, scheduled actions with a start time during the deployment are skipped and do not run after the process resumes.If CodeDeploy cannot resume the processes, the deployment fails and the processes stay suspended until you resume them with the Auto Scaling
ResumeProcessesaction. WhileTerminateis suspended, Auto Scaling does not replace unhealthy instances. If you suspendTerminate, configure a trigger that notifies you when a deployment fails.
-
toBuilder
Description copied from interface:ToCopyableBuilderTake this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilderin interfaceToCopyableBuilder<EC2DeploymentOptions.Builder,EC2DeploymentOptions> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
-
equals
-
equalsBySdkFields
Description copied from interface:SdkPojoIndicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojoclass, and is generated based on a service model.If an
SdkPojoclass does not have any inherited fields,equalsBySdkFieldsandequalsare essentially the same.- Specified by:
equalsBySdkFieldsin interfaceSdkPojo- Parameters:
obj- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
-
sdkFields
-
sdkFieldNameToField
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo- Returns:
- The mapping between the field name and its corresponding field.
-