Class: Aws::ECS::Types::DeploymentConfiguration

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-ecs/types.rb

Overview

Note:

When making an API call, you may pass DeploymentConfiguration data as a hash:

{
  deployment_circuit_breaker: {
    enable: false, # required
    rollback: false, # required
  },
  maximum_percent: 1,
  minimum_healthy_percent: 1,
}

Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#deployment_circuit_breakerTypes::DeploymentCircuitBreaker

<note markdown=“1”> The deployment circuit breaker can only be used for services using the rolling update (`ECS`) deployment type.

</note>

The **deployment circuit breaker** determines whether a service deployment will fail if the service can't reach a steady state. If deployment circuit breaker is enabled, a service deployment will transition to a failed state and stop launching new tasks. If rollback is enabled, when a service deployment fails, the service is rolled back to the last deployment that completed successfully.


3870
3871
3872
3873
3874
3875
3876
# File 'lib/aws-sdk-ecs/types.rb', line 3870

class DeploymentConfiguration < Struct.new(
  :deployment_circuit_breaker,
  :maximum_percent,
  :minimum_healthy_percent)
  SENSITIVE = []
  include Aws::Structure
end

#maximum_percentInteger

If a service is using the rolling update (`ECS`) deployment type, the **maximum percent** parameter represents an upper limit on the number of tasks in a service that are allowed in the `RUNNING` or `PENDING` state during a deployment, as a percentage of the desired number of tasks (rounded down to the nearest integer), and while any container instances are in the `DRAINING` state if the service contains tasks using the EC2 launch type. This parameter enables you to define the deployment batch size. For example, if your service has a desired number of four tasks and a maximum percent value of 200%, the scheduler may start four new tasks before stopping the four older tasks (provided that the cluster resources required to do this are available). The default value for maximum percent is 200%.

If a service is using the blue/green (`CODE_DEPLOY`) or `EXTERNAL` deployment types and tasks that use the EC2 launch type, the **maximum percent** value is set to the default value and is used to define the upper limit on the number of the tasks in the service that remain in the `RUNNING` state while the container instances are in the `DRAINING` state. If the tasks in the service use the Fargate launch type, the maximum percent value is not used, although it is returned when describing your service.

Returns:

  • (Integer)

3870
3871
3872
3873
3874
3875
3876
# File 'lib/aws-sdk-ecs/types.rb', line 3870

class DeploymentConfiguration < Struct.new(
  :deployment_circuit_breaker,
  :maximum_percent,
  :minimum_healthy_percent)
  SENSITIVE = []
  include Aws::Structure
end

#minimum_healthy_percentInteger

If a service is using the rolling update (`ECS`) deployment type, the **minimum healthy percent** represents a lower limit on the number of tasks in a service that must remain in the `RUNNING` state during a deployment, as a percentage of the desired number of tasks (rounded up to the nearest integer), and while any container instances are in the `DRAINING` state if the service contains tasks using the EC2 launch type. This parameter enables you to deploy without using additional cluster capacity. For example, if your service has a desired number of four tasks and a minimum healthy percent of 50%, the scheduler may stop two existing tasks to free up cluster capacity before starting two new tasks. Tasks for services that *do not* use a load balancer are considered healthy if they are in the `RUNNING` state; tasks for services that do use a load balancer are considered healthy if they are in the `RUNNING` state and they are reported as healthy by the load balancer. The default value for minimum healthy percent is 100%.

If a service is using the blue/green (`CODE_DEPLOY`) or `EXTERNAL` deployment types and tasks that use the EC2 launch type, the **minimum healthy percent** value is set to the default value and is used to define the lower limit on the number of the tasks in the service that remain in the `RUNNING` state while the container instances are in the `DRAINING` state. If the tasks in the service use the Fargate launch type, the minimum healthy percent value is not used, although it is returned when describing your service.

Returns:

  • (Integer)

3870
3871
3872
3873
3874
3875
3876
# File 'lib/aws-sdk-ecs/types.rb', line 3870

class DeploymentConfiguration < Struct.new(
  :deployment_circuit_breaker,
  :maximum_percent,
  :minimum_healthy_percent)
  SENSITIVE = []
  include Aws::Structure
end