aws-sdk-ecs 1.243.0 → 1.245.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9366ff6ed6b8482522d9b8231b92dd962ae58f0a44939bcafbcd1b269a8a240b
4
- data.tar.gz: 8b7e281f0769cd094da1c2af138a55c117f872ff61045d0f1bec1de3b5037a10
3
+ metadata.gz: 2402e50dc323ed071e86bb122b79353201529300fdaa16f72f408862e0e5eb0a
4
+ data.tar.gz: 6c1f67cdef580414962857d81ef250fd75e523e0a0c09ceeda54b457ff04f885
5
5
  SHA512:
6
- metadata.gz: 8dc9d1171be423cfb2389ca9462452030cf589e0dbbc4282e4a67085268b86e3ddc2e2121827db48210c181fb98a6eb328571d95ac97cf0d90014043c847bbce
7
- data.tar.gz: a051cb9189072a95f5e50e5d0524c5e1db56c16b8350e9bb38c1dcd2cd33cb202a466e2c684b6cd1fd4d3c7ca8df1d6acce549739d6bb9dd648aa40651563491
6
+ metadata.gz: 6cc5b6eb5d08c2834459c486aad82cdf4c6b7c64b3af8b8b5657461a61631a44142a6ab89433036b3531308c2e3b2f2ff83042970ba98c8301de8ad21b9f850c
7
+ data.tar.gz: 752869a59eb22f9c65a2020501be14b3bdad1d61213b5ac13797bca9d0c5112c5778f9b206166e64f0abe6728ac23a6749a6fcaeae7a5da480874281ba25b038
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.245.0 (2026-09-03)
5
+ ------------------
6
+
7
+ * Feature - Adds a critical parameter to the Amazon ECS managed daemon APIs that controls whether a daemon task failure drains the container instance. Non-critical daemon failures no longer drain the instance or block instance registration.
8
+
9
+ 1.244.0 (2026-08-28)
10
+ ------------------
11
+
12
+ * Feature - Amazon Elastic Container Service - This release adds support for early success criteria on ECS rolling deployments, letting deployment complete once a configurable percentage of tasks are healthy, with configurable BLOCKING (required) or DEFERRED (asynchronous) cleanup of previous service revisions.
13
+
4
14
  1.243.0 (2026-08-05)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.243.0
1
+ 1.245.0
@@ -1240,6 +1240,25 @@ module Aws::ECS
1240
1240
  # request. It must be unique and is case sensitive. Up to 36 ASCII
1241
1241
  # characters in the range of 33-126 (inclusive) are allowed.
1242
1242
  #
1243
+ # @option params [Boolean] :critical
1244
+ # If the `critical` parameter of a daemon is `true`, and the daemon task
1245
+ # fails, stops, or becomes unhealthy, Amazon ECS drains the container
1246
+ # instance and stops the other tasks running on it. If the `critical`
1247
+ # parameter is `false`, the daemon task failure doesn't affect the
1248
+ # other tasks on the instance. The default value is `true`.
1249
+ #
1250
+ # A non-critical daemon doesn't block instance registration. The
1251
+ # container instance becomes active and continues to run your other
1252
+ # tasks, whether the daemon task fails during scale-out or during a
1253
+ # deployment.
1254
+ #
1255
+ # Amazon ECS emits an EventBridge event when a daemon task fails to
1256
+ # start, for both critical and non-critical daemons.
1257
+ #
1258
+ # Daemon task launch failures during a deployment are still counted by
1259
+ # the deployment circuit breaker. The circuit breaker can roll back an
1260
+ # unstable target revision.
1261
+ #
1243
1262
  # @return [Types::CreateDaemonResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1244
1263
  #
1245
1264
  # * {Types::CreateDaemonResponse#daemon_arn #daemon_arn} => String
@@ -1299,6 +1318,7 @@ module Aws::ECS
1299
1318
  # enable_ecs_managed_tags: false,
1300
1319
  # enable_execute_command: false,
1301
1320
  # client_token: "String",
1321
+ # critical: false,
1302
1322
  # })
1303
1323
  #
1304
1324
  # @example Response structure
@@ -2497,6 +2517,11 @@ module Aws::ECS
2497
2517
  # canary_percent: 1.0,
2498
2518
  # canary_bake_time_in_minutes: 1,
2499
2519
  # },
2520
+ # early_success_criteria: {
2521
+ # enable: false, # required
2522
+ # healthy_percent: 1,
2523
+ # source_service_revision_cleanup: "BLOCKING", # accepts BLOCKING, DEFERRED
2524
+ # },
2500
2525
  # },
2501
2526
  # placement_constraints: [
2502
2527
  # {
@@ -2685,6 +2710,9 @@ module Aws::ECS
2685
2710
  # resp.service.deployment_configuration.linear_configuration.step_bake_time_in_minutes #=> Integer
2686
2711
  # resp.service.deployment_configuration.canary_configuration.canary_percent #=> Float
2687
2712
  # resp.service.deployment_configuration.canary_configuration.canary_bake_time_in_minutes #=> Integer
2713
+ # resp.service.deployment_configuration.early_success_criteria.enable #=> Boolean
2714
+ # resp.service.deployment_configuration.early_success_criteria.healthy_percent #=> Integer
2715
+ # resp.service.deployment_configuration.early_success_criteria.source_service_revision_cleanup #=> String, one of "BLOCKING", "DEFERRED"
2688
2716
  # resp.service.task_sets #=> Array
2689
2717
  # resp.service.task_sets[0].id #=> String
2690
2718
  # resp.service.task_sets[0].task_set_arn #=> String
@@ -3927,6 +3955,9 @@ module Aws::ECS
3927
3955
  # resp.service.deployment_configuration.linear_configuration.step_bake_time_in_minutes #=> Integer
3928
3956
  # resp.service.deployment_configuration.canary_configuration.canary_percent #=> Float
3929
3957
  # resp.service.deployment_configuration.canary_configuration.canary_bake_time_in_minutes #=> Integer
3958
+ # resp.service.deployment_configuration.early_success_criteria.enable #=> Boolean
3959
+ # resp.service.deployment_configuration.early_success_criteria.healthy_percent #=> Integer
3960
+ # resp.service.deployment_configuration.early_success_criteria.source_service_revision_cleanup #=> String, one of "BLOCKING", "DEFERRED"
3930
3961
  # resp.service.task_sets #=> Array
3931
3962
  # resp.service.task_sets[0].id #=> String
3932
3963
  # resp.service.task_sets[0].task_set_arn #=> String
@@ -5554,7 +5585,9 @@ module Aws::ECS
5554
5585
  # resp.daemon.current_revisions[0].capacity_providers #=> Array
5555
5586
  # resp.daemon.current_revisions[0].capacity_providers[0].arn #=> String
5556
5587
  # resp.daemon.current_revisions[0].capacity_providers[0].running_count #=> Integer
5588
+ # resp.daemon.current_revisions[0].capacity_providers[0].without_daemon_count #=> Integer
5557
5589
  # resp.daemon.current_revisions[0].total_running_count #=> Integer
5590
+ # resp.daemon.current_revisions[0].total_without_daemon_count #=> Integer
5558
5591
  # resp.daemon.deployment_arn #=> String
5559
5592
  # resp.daemon.created_at #=> Time
5560
5593
  # resp.daemon.updated_at #=> Time
@@ -5673,16 +5706,20 @@ module Aws::ECS
5673
5706
  # resp.daemon_deployments[0].target_daemon_revision.capacity_providers #=> Array
5674
5707
  # resp.daemon_deployments[0].target_daemon_revision.capacity_providers[0].arn #=> String
5675
5708
  # resp.daemon_deployments[0].target_daemon_revision.capacity_providers[0].running_instance_count #=> Integer
5709
+ # resp.daemon_deployments[0].target_daemon_revision.capacity_providers[0].without_daemon_instance_count #=> Integer
5676
5710
  # resp.daemon_deployments[0].target_daemon_revision.capacity_providers[0].draining_instance_count #=> Integer
5677
5711
  # resp.daemon_deployments[0].target_daemon_revision.total_running_instance_count #=> Integer
5712
+ # resp.daemon_deployments[0].target_daemon_revision.total_without_daemon_instance_count #=> Integer
5678
5713
  # resp.daemon_deployments[0].target_daemon_revision.total_draining_instance_count #=> Integer
5679
5714
  # resp.daemon_deployments[0].source_daemon_revisions #=> Array
5680
5715
  # resp.daemon_deployments[0].source_daemon_revisions[0].arn #=> String
5681
5716
  # resp.daemon_deployments[0].source_daemon_revisions[0].capacity_providers #=> Array
5682
5717
  # resp.daemon_deployments[0].source_daemon_revisions[0].capacity_providers[0].arn #=> String
5683
5718
  # resp.daemon_deployments[0].source_daemon_revisions[0].capacity_providers[0].running_instance_count #=> Integer
5719
+ # resp.daemon_deployments[0].source_daemon_revisions[0].capacity_providers[0].without_daemon_instance_count #=> Integer
5684
5720
  # resp.daemon_deployments[0].source_daemon_revisions[0].capacity_providers[0].draining_instance_count #=> Integer
5685
5721
  # resp.daemon_deployments[0].source_daemon_revisions[0].total_running_instance_count #=> Integer
5722
+ # resp.daemon_deployments[0].source_daemon_revisions[0].total_without_daemon_instance_count #=> Integer
5686
5723
  # resp.daemon_deployments[0].source_daemon_revisions[0].total_draining_instance_count #=> Integer
5687
5724
  # resp.daemon_deployments[0].circuit_breaker.failure_count #=> Integer
5688
5725
  # resp.daemon_deployments[0].circuit_breaker.status #=> String, one of "TRIGGERED", "MONITORING", "MONITORING_COMPLETE", "DISABLED"
@@ -5795,6 +5832,7 @@ module Aws::ECS
5795
5832
  # resp.daemon_revisions[0].propagate_tags #=> String, one of "DAEMON", "NONE"
5796
5833
  # resp.daemon_revisions[0].enable_ecs_managed_tags #=> Boolean
5797
5834
  # resp.daemon_revisions[0].enable_execute_command #=> Boolean
5835
+ # resp.daemon_revisions[0].critical #=> Boolean
5798
5836
  # resp.failures #=> Array
5799
5837
  # resp.failures[0].arn #=> String
5800
5838
  # resp.failures[0].reason #=> String
@@ -6282,6 +6320,9 @@ module Aws::ECS
6282
6320
  # resp.service_deployments[0].deployment_configuration.linear_configuration.step_bake_time_in_minutes #=> Integer
6283
6321
  # resp.service_deployments[0].deployment_configuration.canary_configuration.canary_percent #=> Float
6284
6322
  # resp.service_deployments[0].deployment_configuration.canary_configuration.canary_bake_time_in_minutes #=> Integer
6323
+ # resp.service_deployments[0].deployment_configuration.early_success_criteria.enable #=> Boolean
6324
+ # resp.service_deployments[0].deployment_configuration.early_success_criteria.healthy_percent #=> Integer
6325
+ # resp.service_deployments[0].deployment_configuration.early_success_criteria.source_service_revision_cleanup #=> String, one of "BLOCKING", "DEFERRED"
6285
6326
  # resp.service_deployments[0].rollback.reason #=> String
6286
6327
  # resp.service_deployments[0].rollback.started_at #=> Time
6287
6328
  # resp.service_deployments[0].rollback.service_revision_arn #=> String
@@ -6806,6 +6847,9 @@ module Aws::ECS
6806
6847
  # resp.services[0].deployment_configuration.linear_configuration.step_bake_time_in_minutes #=> Integer
6807
6848
  # resp.services[0].deployment_configuration.canary_configuration.canary_percent #=> Float
6808
6849
  # resp.services[0].deployment_configuration.canary_configuration.canary_bake_time_in_minutes #=> Integer
6850
+ # resp.services[0].deployment_configuration.early_success_criteria.enable #=> Boolean
6851
+ # resp.services[0].deployment_configuration.early_success_criteria.healthy_percent #=> Integer
6852
+ # resp.services[0].deployment_configuration.early_success_criteria.source_service_revision_cleanup #=> String, one of "BLOCKING", "DEFERRED"
6809
6853
  # resp.services[0].task_sets #=> Array
6810
6854
  # resp.services[0].task_sets[0].id #=> String
6811
6855
  # resp.services[0].task_sets[0].task_set_arn #=> String
@@ -14553,6 +14597,25 @@ module Aws::ECS
14553
14597
  # tasks in the daemon. If `false`, the execute command functionality is
14554
14598
  # turned off.
14555
14599
  #
14600
+ # @option params [Boolean] :critical
14601
+ # If the `critical` parameter of a daemon is `true`, and the daemon task
14602
+ # fails, stops, or becomes unhealthy, Amazon ECS drains the container
14603
+ # instance and stops the other tasks running on it. If the `critical`
14604
+ # parameter is `false`, the daemon task failure doesn't affect the
14605
+ # other tasks on the instance. The default value is `true`.
14606
+ #
14607
+ # A non-critical daemon doesn't block instance registration. The
14608
+ # container instance becomes active and continues to run your other
14609
+ # tasks, whether the daemon task fails during scale-out or during a
14610
+ # deployment.
14611
+ #
14612
+ # Amazon ECS emits an EventBridge event when a daemon task fails to
14613
+ # start, for both critical and non-critical daemons.
14614
+ #
14615
+ # Daemon task launch failures during a deployment are still counted by
14616
+ # the deployment circuit breaker. The circuit breaker can roll back an
14617
+ # unstable target revision.
14618
+ #
14556
14619
  # @return [Types::UpdateDaemonResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
14557
14620
  #
14558
14621
  # * {Types::UpdateDaemonResponse#daemon_arn #daemon_arn} => String
@@ -14604,6 +14667,7 @@ module Aws::ECS
14604
14667
  # propagate_tags: "DAEMON", # accepts DAEMON, NONE
14605
14668
  # enable_ecs_managed_tags: false,
14606
14669
  # enable_execute_command: false,
14670
+ # critical: false,
14607
14671
  # })
14608
14672
  #
14609
14673
  # @example Response structure
@@ -15390,6 +15454,11 @@ module Aws::ECS
15390
15454
  # canary_percent: 1.0,
15391
15455
  # canary_bake_time_in_minutes: 1,
15392
15456
  # },
15457
+ # early_success_criteria: {
15458
+ # enable: false, # required
15459
+ # healthy_percent: 1,
15460
+ # source_service_revision_cleanup: "BLOCKING", # accepts BLOCKING, DEFERRED
15461
+ # },
15393
15462
  # },
15394
15463
  # availability_zone_rebalancing: "ENABLED", # accepts ENABLED, DISABLED
15395
15464
  # network_configuration: {
@@ -15596,6 +15665,9 @@ module Aws::ECS
15596
15665
  # resp.service.deployment_configuration.linear_configuration.step_bake_time_in_minutes #=> Integer
15597
15666
  # resp.service.deployment_configuration.canary_configuration.canary_percent #=> Float
15598
15667
  # resp.service.deployment_configuration.canary_configuration.canary_bake_time_in_minutes #=> Integer
15668
+ # resp.service.deployment_configuration.early_success_criteria.enable #=> Boolean
15669
+ # resp.service.deployment_configuration.early_success_criteria.healthy_percent #=> Integer
15670
+ # resp.service.deployment_configuration.early_success_criteria.source_service_revision_cleanup #=> String, one of "BLOCKING", "DEFERRED"
15599
15671
  # resp.service.task_sets #=> Array
15600
15672
  # resp.service.task_sets[0].id #=> String
15601
15673
  # resp.service.task_sets[0].task_set_arn #=> String
@@ -16247,7 +16319,7 @@ module Aws::ECS
16247
16319
  tracer: tracer
16248
16320
  )
16249
16321
  context[:gem_name] = 'aws-sdk-ecs'
16250
- context[:gem_version] = '1.243.0'
16322
+ context[:gem_version] = '1.245.0'
16251
16323
  Seahorse::Client::Request.new(handlers, context)
16252
16324
  end
16253
16325
 
@@ -197,6 +197,7 @@ module Aws::ECS
197
197
  DeploymentConfiguration = Shapes::StructureShape.new(name: 'DeploymentConfiguration')
198
198
  DeploymentController = Shapes::StructureShape.new(name: 'DeploymentController')
199
199
  DeploymentControllerType = Shapes::StringShape.new(name: 'DeploymentControllerType')
200
+ DeploymentEarlySuccessCriteria = Shapes::StructureShape.new(name: 'DeploymentEarlySuccessCriteria')
200
201
  DeploymentEphemeralStorage = Shapes::StructureShape.new(name: 'DeploymentEphemeralStorage')
201
202
  DeploymentLifecycleHook = Shapes::StructureShape.new(name: 'DeploymentLifecycleHook')
202
203
  DeploymentLifecycleHookAction = Shapes::StringShape.new(name: 'DeploymentLifecycleHookAction')
@@ -304,6 +305,7 @@ module Aws::ECS
304
305
  GpuIds = Shapes::ListShape.new(name: 'GpuIds')
305
306
  HealthCheck = Shapes::StructureShape.new(name: 'HealthCheck')
306
307
  HealthStatus = Shapes::StringShape.new(name: 'HealthStatus')
308
+ HealthyPercentInteger = Shapes::IntegerShape.new(name: 'HealthyPercentInteger')
307
309
  HookDetails = Shapes::DocumentShape.new(name: 'HookDetails', document: true)
308
310
  HostEntry = Shapes::StructureShape.new(name: 'HostEntry')
309
311
  HostEntryList = Shapes::ListShape.new(name: 'HostEntryList')
@@ -533,6 +535,7 @@ module Aws::ECS
533
535
  ServiceRegistries = Shapes::ListShape.new(name: 'ServiceRegistries')
534
536
  ServiceRegistry = Shapes::StructureShape.new(name: 'ServiceRegistry')
535
537
  ServiceRevision = Shapes::StructureShape.new(name: 'ServiceRevision')
538
+ ServiceRevisionCleanup = Shapes::StringShape.new(name: 'ServiceRevisionCleanup')
536
539
  ServiceRevisionLoadBalancer = Shapes::StructureShape.new(name: 'ServiceRevisionLoadBalancer')
537
540
  ServiceRevisionLoadBalancers = Shapes::ListShape.new(name: 'ServiceRevisionLoadBalancers')
538
541
  ServiceRevisionOverrides = Shapes::StructureShape.new(name: 'ServiceRevisionOverrides')
@@ -1004,6 +1007,7 @@ module Aws::ECS
1004
1007
  CreateDaemonRequest.add_member(:enable_ecs_managed_tags, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableECSManagedTags"))
1005
1008
  CreateDaemonRequest.add_member(:enable_execute_command, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableExecuteCommand"))
1006
1009
  CreateDaemonRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location_name: "clientToken"))
1010
+ CreateDaemonRequest.add_member(:critical, Shapes::ShapeRef.new(shape: BoxedBoolean, location_name: "critical"))
1007
1011
  CreateDaemonRequest.struct_class = Types::CreateDaemonRequest
1008
1012
 
1009
1013
  CreateDaemonResponse.add_member(:daemon_arn, Shapes::ShapeRef.new(shape: String, location_name: "daemonArn"))
@@ -1097,6 +1101,7 @@ module Aws::ECS
1097
1101
 
1098
1102
  DaemonCapacityProvider.add_member(:arn, Shapes::ShapeRef.new(shape: String, location_name: "arn"))
1099
1103
  DaemonCapacityProvider.add_member(:running_count, Shapes::ShapeRef.new(shape: Integer, location_name: "runningCount"))
1104
+ DaemonCapacityProvider.add_member(:without_daemon_count, Shapes::ShapeRef.new(shape: Integer, location_name: "withoutDaemonCount"))
1100
1105
  DaemonCapacityProvider.struct_class = Types::DaemonCapacityProvider
1101
1106
 
1102
1107
  DaemonCapacityProviderList.member = Shapes::ShapeRef.new(shape: DaemonCapacityProvider)
@@ -1169,6 +1174,7 @@ module Aws::ECS
1169
1174
 
1170
1175
  DaemonDeploymentCapacityProvider.add_member(:arn, Shapes::ShapeRef.new(shape: String, location_name: "arn"))
1171
1176
  DaemonDeploymentCapacityProvider.add_member(:running_instance_count, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "runningInstanceCount"))
1177
+ DaemonDeploymentCapacityProvider.add_member(:without_daemon_instance_count, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "withoutDaemonInstanceCount"))
1172
1178
  DaemonDeploymentCapacityProvider.add_member(:draining_instance_count, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "drainingInstanceCount"))
1173
1179
  DaemonDeploymentCapacityProvider.struct_class = Types::DaemonDeploymentCapacityProvider
1174
1180
 
@@ -1184,6 +1190,7 @@ module Aws::ECS
1184
1190
  DaemonDeploymentRevisionDetail.add_member(:arn, Shapes::ShapeRef.new(shape: String, location_name: "arn"))
1185
1191
  DaemonDeploymentRevisionDetail.add_member(:capacity_providers, Shapes::ShapeRef.new(shape: DaemonDeploymentCapacityProviderList, location_name: "capacityProviders"))
1186
1192
  DaemonDeploymentRevisionDetail.add_member(:total_running_instance_count, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "totalRunningInstanceCount"))
1193
+ DaemonDeploymentRevisionDetail.add_member(:total_without_daemon_instance_count, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "totalWithoutDaemonInstanceCount"))
1187
1194
  DaemonDeploymentRevisionDetail.add_member(:total_draining_instance_count, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "totalDrainingInstanceCount"))
1188
1195
  DaemonDeploymentRevisionDetail.struct_class = Types::DaemonDeploymentRevisionDetail
1189
1196
 
@@ -1235,11 +1242,13 @@ module Aws::ECS
1235
1242
  DaemonRevision.add_member(:propagate_tags, Shapes::ShapeRef.new(shape: DaemonPropagateTags, location_name: "propagateTags"))
1236
1243
  DaemonRevision.add_member(:enable_ecs_managed_tags, Shapes::ShapeRef.new(shape: BoxedBoolean, location_name: "enableECSManagedTags"))
1237
1244
  DaemonRevision.add_member(:enable_execute_command, Shapes::ShapeRef.new(shape: BoxedBoolean, location_name: "enableExecuteCommand"))
1245
+ DaemonRevision.add_member(:critical, Shapes::ShapeRef.new(shape: BoxedBoolean, location_name: "critical"))
1238
1246
  DaemonRevision.struct_class = Types::DaemonRevision
1239
1247
 
1240
1248
  DaemonRevisionDetail.add_member(:arn, Shapes::ShapeRef.new(shape: String, location_name: "arn"))
1241
1249
  DaemonRevisionDetail.add_member(:capacity_providers, Shapes::ShapeRef.new(shape: DaemonCapacityProviderList, location_name: "capacityProviders"))
1242
1250
  DaemonRevisionDetail.add_member(:total_running_count, Shapes::ShapeRef.new(shape: Integer, location_name: "totalRunningCount"))
1251
+ DaemonRevisionDetail.add_member(:total_without_daemon_count, Shapes::ShapeRef.new(shape: Integer, location_name: "totalWithoutDaemonCount"))
1243
1252
  DaemonRevisionDetail.struct_class = Types::DaemonRevisionDetail
1244
1253
 
1245
1254
  DaemonRevisionDetailList.member = Shapes::ShapeRef.new(shape: DaemonRevisionDetail)
@@ -1408,11 +1417,17 @@ module Aws::ECS
1408
1417
  DeploymentConfiguration.add_member(:lifecycle_hooks, Shapes::ShapeRef.new(shape: DeploymentLifecycleHookList, location_name: "lifecycleHooks"))
1409
1418
  DeploymentConfiguration.add_member(:linear_configuration, Shapes::ShapeRef.new(shape: LinearConfiguration, location_name: "linearConfiguration"))
1410
1419
  DeploymentConfiguration.add_member(:canary_configuration, Shapes::ShapeRef.new(shape: CanaryConfiguration, location_name: "canaryConfiguration"))
1420
+ DeploymentConfiguration.add_member(:early_success_criteria, Shapes::ShapeRef.new(shape: DeploymentEarlySuccessCriteria, location_name: "earlySuccessCriteria"))
1411
1421
  DeploymentConfiguration.struct_class = Types::DeploymentConfiguration
1412
1422
 
1413
1423
  DeploymentController.add_member(:type, Shapes::ShapeRef.new(shape: DeploymentControllerType, required: true, location_name: "type"))
1414
1424
  DeploymentController.struct_class = Types::DeploymentController
1415
1425
 
1426
+ DeploymentEarlySuccessCriteria.add_member(:enable, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "enable"))
1427
+ DeploymentEarlySuccessCriteria.add_member(:healthy_percent, Shapes::ShapeRef.new(shape: HealthyPercentInteger, location_name: "healthyPercent"))
1428
+ DeploymentEarlySuccessCriteria.add_member(:source_service_revision_cleanup, Shapes::ShapeRef.new(shape: ServiceRevisionCleanup, location_name: "sourceServiceRevisionCleanup"))
1429
+ DeploymentEarlySuccessCriteria.struct_class = Types::DeploymentEarlySuccessCriteria
1430
+
1416
1431
  DeploymentEphemeralStorage.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: String, location_name: "kmsKeyId"))
1417
1432
  DeploymentEphemeralStorage.struct_class = Types::DeploymentEphemeralStorage
1418
1433
 
@@ -3065,6 +3080,7 @@ module Aws::ECS
3065
3080
  UpdateDaemonRequest.add_member(:propagate_tags, Shapes::ShapeRef.new(shape: DaemonPropagateTags, location_name: "propagateTags"))
3066
3081
  UpdateDaemonRequest.add_member(:enable_ecs_managed_tags, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableECSManagedTags"))
3067
3082
  UpdateDaemonRequest.add_member(:enable_execute_command, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableExecuteCommand"))
3083
+ UpdateDaemonRequest.add_member(:critical, Shapes::ShapeRef.new(shape: BoxedBoolean, location_name: "critical"))
3068
3084
  UpdateDaemonRequest.struct_class = Types::UpdateDaemonRequest
3069
3085
 
3070
3086
  UpdateDaemonResponse.add_member(:daemon_arn, Shapes::ShapeRef.new(shape: String, location_name: "daemonArn"))
@@ -3116,6 +3116,26 @@ module Aws::ECS
3116
3116
  # characters in the range of 33-126 (inclusive) are allowed.
3117
3117
  # @return [String]
3118
3118
  #
3119
+ # @!attribute [rw] critical
3120
+ # If the `critical` parameter of a daemon is `true`, and the daemon
3121
+ # task fails, stops, or becomes unhealthy, Amazon ECS drains the
3122
+ # container instance and stops the other tasks running on it. If the
3123
+ # `critical` parameter is `false`, the daemon task failure doesn't
3124
+ # affect the other tasks on the instance. The default value is `true`.
3125
+ #
3126
+ # A non-critical daemon doesn't block instance registration. The
3127
+ # container instance becomes active and continues to run your other
3128
+ # tasks, whether the daemon task fails during scale-out or during a
3129
+ # deployment.
3130
+ #
3131
+ # Amazon ECS emits an EventBridge event when a daemon task fails to
3132
+ # start, for both critical and non-critical daemons.
3133
+ #
3134
+ # Daemon task launch failures during a deployment are still counted by
3135
+ # the deployment circuit breaker. The circuit breaker can roll back an
3136
+ # unstable target revision.
3137
+ # @return [Boolean]
3138
+ #
3119
3139
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateDaemonRequest AWS API Documentation
3120
3140
  #
3121
3141
  class CreateDaemonRequest < Struct.new(
@@ -3128,7 +3148,8 @@ module Aws::ECS
3128
3148
  :propagate_tags,
3129
3149
  :enable_ecs_managed_tags,
3130
3150
  :enable_execute_command,
3131
- :client_token)
3151
+ :client_token,
3152
+ :critical)
3132
3153
  SENSITIVE = []
3133
3154
  include Aws::Structure
3134
3155
  end
@@ -4138,11 +4159,20 @@ module Aws::ECS
4138
4159
  # The number of daemon tasks running on this capacity provider.
4139
4160
  # @return [Integer]
4140
4161
  #
4162
+ # @!attribute [rw] without_daemon_count
4163
+ # The number of instances on this capacity provider that are running
4164
+ # without the daemon task. This applies to daemons that aren't
4165
+ # critical, where the instance remains available for your other tasks
4166
+ # even if the daemon task can't start or stops. These instances
4167
+ # aren't included in `runningCount`.
4168
+ # @return [Integer]
4169
+ #
4141
4170
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DaemonCapacityProvider AWS API Documentation
4142
4171
  #
4143
4172
  class DaemonCapacityProvider < Struct.new(
4144
4173
  :arn,
4145
- :running_count)
4174
+ :running_count,
4175
+ :without_daemon_count)
4146
4176
  SENSITIVE = []
4147
4177
  include Aws::Structure
4148
4178
  end
@@ -4502,6 +4532,14 @@ module Aws::ECS
4502
4532
  # provider.
4503
4533
  # @return [Integer]
4504
4534
  #
4535
+ # @!attribute [rw] without_daemon_instance_count
4536
+ # The number of instances on this capacity provider that are running
4537
+ # without the daemon task. This applies to daemons that aren't
4538
+ # critical, where the instance remains available for your other tasks
4539
+ # even if the daemon task can't start or stops. These instances
4540
+ # aren't included in `runningInstanceCount`.
4541
+ # @return [Integer]
4542
+ #
4505
4543
  # @!attribute [rw] draining_instance_count
4506
4544
  # The number of instances being drained on this capacity provider
4507
4545
  # during the deployment.
@@ -4512,6 +4550,7 @@ module Aws::ECS
4512
4550
  class DaemonDeploymentCapacityProvider < Struct.new(
4513
4551
  :arn,
4514
4552
  :running_instance_count,
4553
+ :without_daemon_instance_count,
4515
4554
  :draining_instance_count)
4516
4555
  SENSITIVE = []
4517
4556
  include Aws::Structure
@@ -4564,6 +4603,12 @@ module Aws::ECS
4564
4603
  # revision.
4565
4604
  # @return [Integer]
4566
4605
  #
4606
+ # @!attribute [rw] total_without_daemon_instance_count
4607
+ # The total number of instances running without the daemon task for
4608
+ # this revision, across all capacity providers. These instances
4609
+ # aren't included in `totalRunningInstanceCount`.
4610
+ # @return [Integer]
4611
+ #
4567
4612
  # @!attribute [rw] total_draining_instance_count
4568
4613
  # The total number of instances being drained for this revision during
4569
4614
  # the deployment.
@@ -4575,6 +4620,7 @@ module Aws::ECS
4575
4620
  :arn,
4576
4621
  :capacity_providers,
4577
4622
  :total_running_instance_count,
4623
+ :total_without_daemon_instance_count,
4578
4624
  :total_draining_instance_count)
4579
4625
  SENSITIVE = []
4580
4626
  include Aws::Structure
@@ -4803,6 +4849,15 @@ module Aws::ECS
4803
4849
  # the daemon tasks.
4804
4850
  # @return [Boolean]
4805
4851
  #
4852
+ # @!attribute [rw] critical
4853
+ # If the `critical` parameter of this daemon revision is `true`, and
4854
+ # the daemon task fails, stops, or becomes unhealthy, Amazon ECS
4855
+ # drains the container instance and stops the other tasks running on
4856
+ # it. If the parameter is `false`, the daemon task failure doesn't
4857
+ # affect the other tasks on the instance, and doesn't block instance
4858
+ # registration. The default value is `true`.
4859
+ # @return [Boolean]
4860
+ #
4806
4861
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DaemonRevision AWS API Documentation
4807
4862
  #
4808
4863
  class DaemonRevision < Struct.new(
@@ -4814,7 +4869,8 @@ module Aws::ECS
4814
4869
  :container_images,
4815
4870
  :propagate_tags,
4816
4871
  :enable_ecs_managed_tags,
4817
- :enable_execute_command)
4872
+ :enable_execute_command,
4873
+ :critical)
4818
4874
  SENSITIVE = []
4819
4875
  include Aws::Structure
4820
4876
  end
@@ -4834,12 +4890,19 @@ module Aws::ECS
4834
4890
  # The total number of daemon tasks running for this revision.
4835
4891
  # @return [Integer]
4836
4892
  #
4893
+ # @!attribute [rw] total_without_daemon_count
4894
+ # The total number of instances running without the daemon task for
4895
+ # this revision, across all capacity providers. These instances
4896
+ # aren't included in `totalRunningCount`.
4897
+ # @return [Integer]
4898
+ #
4837
4899
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DaemonRevisionDetail AWS API Documentation
4838
4900
  #
4839
4901
  class DaemonRevisionDetail < Struct.new(
4840
4902
  :arn,
4841
4903
  :capacity_providers,
4842
- :total_running_count)
4904
+ :total_running_count,
4905
+ :total_without_daemon_count)
4843
4906
  SENSITIVE = []
4844
4907
  include Aws::Structure
4845
4908
  end
@@ -5984,6 +6047,14 @@ module Aws::ECS
5984
6047
  # remaining traffic after a bake period.
5985
6048
  # @return [Types::CanaryConfiguration]
5986
6049
  #
6050
+ # @!attribute [rw] early_success_criteria
6051
+ # The early success criteria configuration for a rolling deployment.
6052
+ # With early success criteria, you can configure an Amazon ECS
6053
+ # deployment to complete faster. Amazon ECS declares a deployment
6054
+ # successful once a target percentage of tasks are healthy, instead of
6055
+ # waiting for the service to fully stabilize.
6056
+ # @return [Types::DeploymentEarlySuccessCriteria]
6057
+ #
5987
6058
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentConfiguration AWS API Documentation
5988
6059
  #
5989
6060
  class DeploymentConfiguration < Struct.new(
@@ -5995,7 +6066,8 @@ module Aws::ECS
5995
6066
  :bake_time_in_minutes,
5996
6067
  :lifecycle_hooks,
5997
6068
  :linear_configuration,
5998
- :canary_configuration)
6069
+ :canary_configuration,
6070
+ :early_success_criteria)
5999
6071
  SENSITIVE = []
6000
6072
  include Aws::Structure
6001
6073
  end
@@ -6101,6 +6173,63 @@ module Aws::ECS
6101
6173
  include Aws::Structure
6102
6174
  end
6103
6175
 
6176
+ # <note markdown="1"> You can use early success criteria only with
6177
+ # rolling deployment
6178
+ # strategy.
6179
+ #
6180
+ # </note>
6181
+ #
6182
+ # The configuration that determines when a rolling update deployment is
6183
+ # considered successful. Early success criteria defines the percentage
6184
+ # of tasks that must be healthy before a deployment completes. It also
6185
+ # controls whether Amazon ECS must remove the previous tasks before a
6186
+ # deployment completes.
6187
+ #
6188
+ # @!attribute [rw] enable
6189
+ # Specifies whether to use the early success criteria for the service
6190
+ # deployment. When set to `false`, the deployment uses the default
6191
+ # behavior, where Amazon ECS considers the deployment successful when
6192
+ # the target service revision fully stabilizes and the previous tasks
6193
+ # are removed. The default value is `false`.
6194
+ #
6195
+ # When set to `true`, Amazon ECS monitors the deployment to meet early
6196
+ # success criteria. You must also specify `healthyPercent` and
6197
+ # `sourceServiceRevisionCleanup`.
6198
+ # @return [Boolean]
6199
+ #
6200
+ # @!attribute [rw] healthy_percent
6201
+ # The percentage of healthy tasks that the target service revision
6202
+ # must reach before Amazon ECS considers the deployment successful.
6203
+ # This percentage is relative to the service's `desiredCount` and
6204
+ # must be an integer between `0` and `100`. This value must be greater
6205
+ # than or equal to the `minimumHealthyPercent` value.
6206
+ #
6207
+ # After this percentage of tasks is healthy and the bake time elapses,
6208
+ # Amazon ECS completes the deployment. Amazon ECS continues to scale
6209
+ # the target service revision to 100 percent in the background.
6210
+ # @return [Integer]
6211
+ #
6212
+ # @!attribute [rw] source_service_revision_cleanup
6213
+ # The time when Amazon ECS removes the source revisions' tasks
6214
+ # relative to deployment completion. The valid values are:
6215
+ #
6216
+ # * `BLOCKING`—Amazon ECS removes the previous tasks before it marks
6217
+ # the deployment as successful.
6218
+ #
6219
+ # * `DEFERRED`—Amazon ECS marks the deployment successful, and then
6220
+ # removes the previous tasks in the background.
6221
+ # @return [String]
6222
+ #
6223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentEarlySuccessCriteria AWS API Documentation
6224
+ #
6225
+ class DeploymentEarlySuccessCriteria < Struct.new(
6226
+ :enable,
6227
+ :healthy_percent,
6228
+ :source_service_revision_cleanup)
6229
+ SENSITIVE = []
6230
+ include Aws::Structure
6231
+ end
6232
+
6104
6233
  # The amount of ephemeral storage to allocate for the deployment.
6105
6234
  #
6106
6235
  # @!attribute [rw] kms_key_id
@@ -12240,10 +12369,11 @@ module Aws::ECS
12240
12369
  # @return [Integer]
12241
12370
  #
12242
12371
  # @!attribute [rw] protocol
12243
- # The protocol used for the port mapping. Valid values are `tcp` and
12244
- # `udp`. The default is `tcp`. `protocol` is immutable in a Service
12245
- # Connect service. Updating this field requires a service deletion and
12246
- # redeployment.
12372
+ # The protocol that's used for the port mapping. Valid values are
12373
+ # `tcp` and `udp` (case-sensitive). The default is `tcp`. Amazon ECS
12374
+ # treats any other specified value as `tcp`. `protocol` is immutable
12375
+ # in a Service Connect service. To update this field, you must delete
12376
+ # and redeploy the service.
12247
12377
  # @return [String]
12248
12378
  #
12249
12379
  # @!attribute [rw] name
@@ -18729,6 +18859,26 @@ module Aws::ECS
18729
18859
  # is turned off.
18730
18860
  # @return [Boolean]
18731
18861
  #
18862
+ # @!attribute [rw] critical
18863
+ # If the `critical` parameter of a daemon is `true`, and the daemon
18864
+ # task fails, stops, or becomes unhealthy, Amazon ECS drains the
18865
+ # container instance and stops the other tasks running on it. If the
18866
+ # `critical` parameter is `false`, the daemon task failure doesn't
18867
+ # affect the other tasks on the instance. The default value is `true`.
18868
+ #
18869
+ # A non-critical daemon doesn't block instance registration. The
18870
+ # container instance becomes active and continues to run your other
18871
+ # tasks, whether the daemon task fails during scale-out or during a
18872
+ # deployment.
18873
+ #
18874
+ # Amazon ECS emits an EventBridge event when a daemon task fails to
18875
+ # start, for both critical and non-critical daemons.
18876
+ #
18877
+ # Daemon task launch failures during a deployment are still counted by
18878
+ # the deployment circuit breaker. The circuit breaker can roll back an
18879
+ # unstable target revision.
18880
+ # @return [Boolean]
18881
+ #
18732
18882
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateDaemonRequest AWS API Documentation
18733
18883
  #
18734
18884
  class UpdateDaemonRequest < Struct.new(
@@ -18738,7 +18888,8 @@ module Aws::ECS
18738
18888
  :deployment_configuration,
18739
18889
  :propagate_tags,
18740
18890
  :enable_ecs_managed_tags,
18741
- :enable_execute_command)
18891
+ :enable_execute_command,
18892
+ :critical)
18742
18893
  SENSITIVE = []
18743
18894
  include Aws::Structure
18744
18895
  end
data/lib/aws-sdk-ecs.rb CHANGED
@@ -55,7 +55,7 @@ module Aws::ECS
55
55
  autoload :EndpointProvider, 'aws-sdk-ecs/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-ecs/endpoints'
57
57
 
58
- GEM_VERSION = '1.243.0'
58
+ GEM_VERSION = '1.245.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -209,7 +209,8 @@ module Aws
209
209
  ?propagate_tags: ("DAEMON" | "NONE"),
210
210
  ?enable_ecs_managed_tags: bool,
211
211
  ?enable_execute_command: bool,
212
- ?client_token: ::String
212
+ ?client_token: ::String,
213
+ ?critical: bool
213
214
  ) -> _CreateDaemonResponseSuccess
214
215
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateDaemonResponseSuccess
215
216
 
@@ -1787,7 +1788,8 @@ module Aws
1787
1788
  ?deployment_configuration: Params::daemon_deployment_configuration,
1788
1789
  ?propagate_tags: ("DAEMON" | "NONE"),
1789
1790
  ?enable_ecs_managed_tags: bool,
1790
- ?enable_execute_command: bool
1791
+ ?enable_execute_command: bool,
1792
+ ?critical: bool
1791
1793
  ) -> _UpdateDaemonResponseSuccess
1792
1794
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateDaemonResponseSuccess
1793
1795
 
data/sig/params.rbs CHANGED
@@ -160,6 +160,11 @@ module Aws
160
160
  canary_configuration: {
161
161
  canary_percent: ::Float?,
162
162
  canary_bake_time_in_minutes: ::Integer?
163
+ }?,
164
+ early_success_criteria: {
165
+ enable: bool,
166
+ healthy_percent: ::Integer?,
167
+ source_service_revision_cleanup: ("BLOCKING" | "DEFERRED")?
163
168
  }?
164
169
  }
165
170
 
data/sig/types.rbs CHANGED
@@ -401,6 +401,7 @@ module Aws::ECS
401
401
  attr_accessor enable_ecs_managed_tags: bool
402
402
  attr_accessor enable_execute_command: bool
403
403
  attr_accessor client_token: ::String
404
+ attr_accessor critical: bool
404
405
  SENSITIVE: []
405
406
  end
406
407
 
@@ -516,6 +517,7 @@ module Aws::ECS
516
517
  class DaemonCapacityProvider
517
518
  attr_accessor arn: ::String
518
519
  attr_accessor running_count: ::Integer
520
+ attr_accessor without_daemon_count: ::Integer
519
521
  SENSITIVE: []
520
522
  end
521
523
 
@@ -594,6 +596,7 @@ module Aws::ECS
594
596
  class DaemonDeploymentCapacityProvider
595
597
  attr_accessor arn: ::String
596
598
  attr_accessor running_instance_count: ::Integer
599
+ attr_accessor without_daemon_instance_count: ::Integer
597
600
  attr_accessor draining_instance_count: ::Integer
598
601
  SENSITIVE: []
599
602
  end
@@ -609,6 +612,7 @@ module Aws::ECS
609
612
  attr_accessor arn: ::String
610
613
  attr_accessor capacity_providers: ::Array[Types::DaemonDeploymentCapacityProvider]
611
614
  attr_accessor total_running_instance_count: ::Integer
615
+ attr_accessor total_without_daemon_instance_count: ::Integer
612
616
  attr_accessor total_draining_instance_count: ::Integer
613
617
  SENSITIVE: []
614
618
  end
@@ -666,6 +670,7 @@ module Aws::ECS
666
670
  attr_accessor propagate_tags: ("DAEMON" | "NONE")
667
671
  attr_accessor enable_ecs_managed_tags: bool
668
672
  attr_accessor enable_execute_command: bool
673
+ attr_accessor critical: bool
669
674
  SENSITIVE: []
670
675
  end
671
676
 
@@ -673,6 +678,7 @@ module Aws::ECS
673
678
  attr_accessor arn: ::String
674
679
  attr_accessor capacity_providers: ::Array[Types::DaemonCapacityProvider]
675
680
  attr_accessor total_running_count: ::Integer
681
+ attr_accessor total_without_daemon_count: ::Integer
676
682
  SENSITIVE: []
677
683
  end
678
684
 
@@ -889,6 +895,7 @@ module Aws::ECS
889
895
  attr_accessor lifecycle_hooks: ::Array[Types::DeploymentLifecycleHook]
890
896
  attr_accessor linear_configuration: Types::LinearConfiguration
891
897
  attr_accessor canary_configuration: Types::CanaryConfiguration
898
+ attr_accessor early_success_criteria: Types::DeploymentEarlySuccessCriteria
892
899
  SENSITIVE: []
893
900
  end
894
901
 
@@ -897,6 +904,13 @@ module Aws::ECS
897
904
  SENSITIVE: []
898
905
  end
899
906
 
907
+ class DeploymentEarlySuccessCriteria
908
+ attr_accessor enable: bool
909
+ attr_accessor healthy_percent: ::Integer
910
+ attr_accessor source_service_revision_cleanup: ("BLOCKING" | "DEFERRED")
911
+ SENSITIVE: []
912
+ end
913
+
900
914
  class DeploymentEphemeralStorage
901
915
  attr_accessor kms_key_id: ::String
902
916
  SENSITIVE: []
@@ -2890,6 +2904,7 @@ module Aws::ECS
2890
2904
  attr_accessor propagate_tags: ("DAEMON" | "NONE")
2891
2905
  attr_accessor enable_ecs_managed_tags: bool
2892
2906
  attr_accessor enable_execute_command: bool
2907
+ attr_accessor critical: bool
2893
2908
  SENSITIVE: []
2894
2909
  end
2895
2910
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ecs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.243.0
4
+ version: 1.245.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services