aws-sdk-ecs 1.136.0 → 1.137.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 549dfbda92dc72f85c2b576e92ad0b87ecf486270e6480d2890f74ae43884a4d
4
- data.tar.gz: 7e65f17024290cbe1e4cb2f06eae7ba8b8c6ae1eb59867b57f7c510b82400199
3
+ metadata.gz: 1831d8de96691a085c28bb024bcbe0ba09ee1f4cb0066b4a797cbeafd989108c
4
+ data.tar.gz: 2183b2cc344d527efc934fe51cb2246c8b040c3ce796392a2c0bac0e3327fc15
5
5
  SHA512:
6
- metadata.gz: 8da04f699330b0fa067db14d927bc86984bff6ad4352197aea306c9c5107368e6d992a2f86b644a49f6430b80df4be161f5ee2379149573695ab4d1bde60d3b0
7
- data.tar.gz: 381c3b605e547090b5d14e16d7f0bd807edeb9c4adbfc01788f2c0d816e17e0605a6d716d5aa5b276023db1f5b3ab7ad8937f9b9a8bbe59533106261724826d4
6
+ metadata.gz: 33d4934c6f1f07ad670ceec3e8b8f6a8633ba5e961bd2eb10380569a3ecb81ed9ddac6e03adcc2ce65ffcbd48b9b156ac9c61669916d0766036abdf8ad78a22d
7
+ data.tar.gz: 6165f08049a21782ff9bea00050bf473e3d33a4f337255e87419995bb80eb2c739e7e65f04f21dde661f64fa9976c556f1498815dff2d4509d91a84f767cf774
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.137.0 (2024-01-11)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for adding an ElasticBlockStorage volume configurations in ECS RunTask/StartTask/CreateService/UpdateService APIs. The configuration allows for attaching EBS volumes to ECS Tasks.
8
+
4
9
  1.136.0 (2024-01-04)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.136.0
1
+ 1.137.0
@@ -775,6 +775,12 @@ module Aws::ECS
775
775
  # balancing][1] in the *Amazon Elastic Container Service Developer
776
776
  # Guide*.
777
777
  #
778
+ # You can attach Amazon EBS volumes to Amazon ECS tasks by configuring
779
+ # the volume when creating or updating a service. `volumeConfigurations`
780
+ # is only supported for REPLICA service and not DAEMON service. For more
781
+ # infomation, see [Amazon EBS volumes][2] in the *Amazon Elastic
782
+ # Container Service Developer Guide*.
783
+ #
778
784
  # Tasks for services that don't use a load balancer are considered
779
785
  # healthy if they're in the `RUNNING` state. Tasks for services that
780
786
  # use a load balancer are considered healthy if they're in the
@@ -787,7 +793,7 @@ module Aws::ECS
787
793
  # service scheduler spreads tasks across Availability Zones. You can
788
794
  # use task placement strategies and constraints to customize task
789
795
  # placement decisions. For more information, see [Service scheduler
790
- # concepts][2] in the *Amazon Elastic Container Service Developer
796
+ # concepts][3] in the *Amazon Elastic Container Service Developer
791
797
  # Guide*.
792
798
  #
793
799
  # * `DAEMON` - The daemon scheduling strategy deploys exactly one task
@@ -798,7 +804,7 @@ module Aws::ECS
798
804
  # constraints. When using this strategy, you don't need to specify a
799
805
  # desired number of tasks, a task placement strategy, or use Service
800
806
  # Auto Scaling policies. For more information, see [Service scheduler
801
- # concepts][2] in the *Amazon Elastic Container Service Developer
807
+ # concepts][3] in the *Amazon Elastic Container Service Developer
802
808
  # Guide*.
803
809
  #
804
810
  # You can optionally specify a deployment configuration for your
@@ -854,20 +860,21 @@ module Aws::ECS
854
860
  # controller, you can specify only parameters that aren't controlled at
855
861
  # the task set level. The only required parameter is the service name.
856
862
  # You control your services using the CreateTaskSet operation. For more
857
- # information, see [Amazon ECS deployment types][3] in the *Amazon
863
+ # information, see [Amazon ECS deployment types][4] in the *Amazon
858
864
  # Elastic Container Service Developer Guide*.
859
865
  #
860
866
  # When the service scheduler launches new tasks, it determines task
861
867
  # placement. For information about task placement and task placement
862
- # strategies, see [Amazon ECS task placement][4] in the *Amazon Elastic
868
+ # strategies, see [Amazon ECS task placement][5] in the *Amazon Elastic
863
869
  # Container Service Developer Guide*.
864
870
  #
865
871
  #
866
872
  #
867
873
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html
868
- # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html
869
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
870
- # [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement.html
874
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-volumes.html#ebs-volume-types
875
+ # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html
876
+ # [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
877
+ # [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement.html
871
878
  #
872
879
  # @option params [String] :cluster
873
880
  # The short name or full Amazon Resource Name (ARN) of the cluster that
@@ -1222,6 +1229,11 @@ module Aws::ECS
1222
1229
  #
1223
1230
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
1224
1231
  #
1232
+ # @option params [Array<Types::ServiceVolumeConfiguration>] :volume_configurations
1233
+ # The configuration for a volume specified in the task definition as a
1234
+ # volume that is configured at launch time. Currently, the only
1235
+ # supported volume type is an Amazon EBS volume.
1236
+ #
1225
1237
  # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1226
1238
  #
1227
1239
  # * {Types::CreateServiceResponse#service #service} => Types::Service
@@ -1453,6 +1465,34 @@ module Aws::ECS
1453
1465
  # ],
1454
1466
  # },
1455
1467
  # },
1468
+ # volume_configurations: [
1469
+ # {
1470
+ # name: "ECSVolumeName", # required
1471
+ # managed_ebs_volume: {
1472
+ # encrypted: false,
1473
+ # kms_key_id: "EBSKMSKeyId",
1474
+ # volume_type: "EBSVolumeType",
1475
+ # size_in_gi_b: 1,
1476
+ # snapshot_id: "EBSSnapshotId",
1477
+ # iops: 1,
1478
+ # throughput: 1,
1479
+ # tag_specifications: [
1480
+ # {
1481
+ # resource_type: "volume", # required, accepts volume
1482
+ # tags: [
1483
+ # {
1484
+ # key: "TagKey",
1485
+ # value: "TagValue",
1486
+ # },
1487
+ # ],
1488
+ # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION, SERVICE, NONE
1489
+ # },
1490
+ # ],
1491
+ # role_arn: "IAMRoleArn", # required
1492
+ # filesystem_type: "ext3", # accepts ext3, ext4, xfs
1493
+ # },
1494
+ # },
1495
+ # ],
1456
1496
  # })
1457
1497
  #
1458
1498
  # @example Response structure
@@ -1575,6 +1615,23 @@ module Aws::ECS
1575
1615
  # resp.service.deployments[0].service_connect_resources #=> Array
1576
1616
  # resp.service.deployments[0].service_connect_resources[0].discovery_name #=> String
1577
1617
  # resp.service.deployments[0].service_connect_resources[0].discovery_arn #=> String
1618
+ # resp.service.deployments[0].volume_configurations #=> Array
1619
+ # resp.service.deployments[0].volume_configurations[0].name #=> String
1620
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.encrypted #=> Boolean
1621
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.kms_key_id #=> String
1622
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.volume_type #=> String
1623
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.size_in_gi_b #=> Integer
1624
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.snapshot_id #=> String
1625
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.iops #=> Integer
1626
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.throughput #=> Integer
1627
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications #=> Array
1628
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].resource_type #=> String, one of "volume"
1629
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags #=> Array
1630
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags[0].key #=> String
1631
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags[0].value #=> String
1632
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE", "NONE"
1633
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.role_arn #=> String
1634
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.filesystem_type #=> String, one of "ext3", "ext4", "xfs"
1578
1635
  # resp.service.role_arn #=> String
1579
1636
  # resp.service.events #=> Array
1580
1637
  # resp.service.events[0].id #=> String
@@ -2326,6 +2383,23 @@ module Aws::ECS
2326
2383
  # resp.service.deployments[0].service_connect_resources #=> Array
2327
2384
  # resp.service.deployments[0].service_connect_resources[0].discovery_name #=> String
2328
2385
  # resp.service.deployments[0].service_connect_resources[0].discovery_arn #=> String
2386
+ # resp.service.deployments[0].volume_configurations #=> Array
2387
+ # resp.service.deployments[0].volume_configurations[0].name #=> String
2388
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.encrypted #=> Boolean
2389
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.kms_key_id #=> String
2390
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.volume_type #=> String
2391
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.size_in_gi_b #=> Integer
2392
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.snapshot_id #=> String
2393
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.iops #=> Integer
2394
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.throughput #=> Integer
2395
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications #=> Array
2396
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].resource_type #=> String, one of "volume"
2397
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags #=> Array
2398
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags[0].key #=> String
2399
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags[0].value #=> String
2400
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE", "NONE"
2401
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.role_arn #=> String
2402
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.filesystem_type #=> String, one of "ext3", "ext4", "xfs"
2329
2403
  # resp.service.role_arn #=> String
2330
2404
  # resp.service.events #=> Array
2331
2405
  # resp.service.events[0].id #=> String
@@ -2548,6 +2622,7 @@ module Aws::ECS
2548
2622
  # resp.task_definitions[0].volumes[0].fsx_windows_file_server_volume_configuration.root_directory #=> String
2549
2623
  # resp.task_definitions[0].volumes[0].fsx_windows_file_server_volume_configuration.authorization_config.credentials_parameter #=> String
2550
2624
  # resp.task_definitions[0].volumes[0].fsx_windows_file_server_volume_configuration.authorization_config.domain #=> String
2625
+ # resp.task_definitions[0].volumes[0].configured_at_launch #=> Boolean
2551
2626
  # resp.task_definitions[0].status #=> String, one of "ACTIVE", "INACTIVE", "DELETE_IN_PROGRESS"
2552
2627
  # resp.task_definitions[0].requires_attributes #=> Array
2553
2628
  # resp.task_definitions[0].requires_attributes[0].name #=> String
@@ -3003,6 +3078,7 @@ module Aws::ECS
3003
3078
  # resp.task_definition.volumes[0].fsx_windows_file_server_volume_configuration.root_directory #=> String
3004
3079
  # resp.task_definition.volumes[0].fsx_windows_file_server_volume_configuration.authorization_config.credentials_parameter #=> String
3005
3080
  # resp.task_definition.volumes[0].fsx_windows_file_server_volume_configuration.authorization_config.domain #=> String
3081
+ # resp.task_definition.volumes[0].configured_at_launch #=> Boolean
3006
3082
  # resp.task_definition.status #=> String, one of "ACTIVE", "INACTIVE", "DELETE_IN_PROGRESS"
3007
3083
  # resp.task_definition.requires_attributes #=> Array
3008
3084
  # resp.task_definition.requires_attributes[0].name #=> String
@@ -3646,6 +3722,23 @@ module Aws::ECS
3646
3722
  # resp.services[0].deployments[0].service_connect_resources #=> Array
3647
3723
  # resp.services[0].deployments[0].service_connect_resources[0].discovery_name #=> String
3648
3724
  # resp.services[0].deployments[0].service_connect_resources[0].discovery_arn #=> String
3725
+ # resp.services[0].deployments[0].volume_configurations #=> Array
3726
+ # resp.services[0].deployments[0].volume_configurations[0].name #=> String
3727
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.encrypted #=> Boolean
3728
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.kms_key_id #=> String
3729
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.volume_type #=> String
3730
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.size_in_gi_b #=> Integer
3731
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.snapshot_id #=> String
3732
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.iops #=> Integer
3733
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.throughput #=> Integer
3734
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications #=> Array
3735
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].resource_type #=> String, one of "volume"
3736
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags #=> Array
3737
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags[0].key #=> String
3738
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags[0].value #=> String
3739
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE", "NONE"
3740
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.role_arn #=> String
3741
+ # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.filesystem_type #=> String, one of "ext3", "ext4", "xfs"
3649
3742
  # resp.services[0].role_arn #=> String
3650
3743
  # resp.services[0].events #=> Array
3651
3744
  # resp.services[0].events[0].id #=> String
@@ -3922,6 +4015,7 @@ module Aws::ECS
3922
4015
  # resp.task_definition.volumes[0].fsx_windows_file_server_volume_configuration.root_directory #=> String
3923
4016
  # resp.task_definition.volumes[0].fsx_windows_file_server_volume_configuration.authorization_config.credentials_parameter #=> String
3924
4017
  # resp.task_definition.volumes[0].fsx_windows_file_server_volume_configuration.authorization_config.domain #=> String
4018
+ # resp.task_definition.volumes[0].configured_at_launch #=> Boolean
3925
4019
  # resp.task_definition.status #=> String, one of "ACTIVE", "INACTIVE", "DELETE_IN_PROGRESS"
3926
4020
  # resp.task_definition.requires_attributes #=> Array
3927
4021
  # resp.task_definition.requires_attributes[0].name #=> String
@@ -6767,6 +6861,7 @@ module Aws::ECS
6767
6861
  # domain: "String", # required
6768
6862
  # },
6769
6863
  # },
6864
+ # configured_at_launch: false,
6770
6865
  # },
6771
6866
  # ],
6772
6867
  # placement_constraints: [
@@ -6945,6 +7040,7 @@ module Aws::ECS
6945
7040
  # resp.task_definition.volumes[0].fsx_windows_file_server_volume_configuration.root_directory #=> String
6946
7041
  # resp.task_definition.volumes[0].fsx_windows_file_server_volume_configuration.authorization_config.credentials_parameter #=> String
6947
7042
  # resp.task_definition.volumes[0].fsx_windows_file_server_volume_configuration.authorization_config.domain #=> String
7043
+ # resp.task_definition.volumes[0].configured_at_launch #=> Boolean
6948
7044
  # resp.task_definition.status #=> String, one of "ACTIVE", "INACTIVE", "DELETE_IN_PROGRESS"
6949
7045
  # resp.task_definition.requires_attributes #=> Array
6950
7046
  # resp.task_definition.requires_attributes[0].name #=> String
@@ -7010,6 +7106,11 @@ module Aws::ECS
7010
7106
  #
7011
7107
  # </note>
7012
7108
  #
7109
+ # You can attach Amazon EBS volumes to Amazon ECS tasks by configuring
7110
+ # the volume when creating or updating a service. For more infomation,
7111
+ # see [Amazon EBS volumes][2] in the *Amazon Elastic Container Service
7112
+ # Developer Guide*.
7113
+ #
7013
7114
  # The Amazon ECS API follows an eventual consistency model. This is
7014
7115
  # because of the distributed nature of the system supporting the API.
7015
7116
  # This means that the result of an API command you run that affects your
@@ -7035,6 +7136,7 @@ module Aws::ECS
7035
7136
  #
7036
7137
  #
7037
7138
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/scheduling_tasks.html
7139
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-volumes.html#ebs-volume-types
7038
7140
  #
7039
7141
  # @option params [Array<Types::CapacityProviderStrategyItem>] :capacity_provider_strategy
7040
7142
  # The capacity provider strategy to use for the task.
@@ -7260,6 +7362,16 @@ module Aws::ECS
7260
7362
  #
7261
7363
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/ECS_Idempotency.html
7262
7364
  #
7365
+ # @option params [Array<Types::TaskVolumeConfiguration>] :volume_configurations
7366
+ # The details of the volume that was `configuredAtLaunch`. You can
7367
+ # configure the size, volumeType, IOPS, throughput, snapshot and
7368
+ # encryption in in [TaskManagedEBSVolumeConfiguration][1]. The `name` of
7369
+ # the volume must match the `name` from the task definition.
7370
+ #
7371
+ #
7372
+ #
7373
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_TaskManagedEBSVolumeConfiguration.html
7374
+ #
7263
7375
  # @return [Types::RunTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7264
7376
  #
7265
7377
  # * {Types::RunTaskResponse#tasks #tasks} => Array&lt;Types::Task&gt;
@@ -7392,6 +7504,37 @@ module Aws::ECS
7392
7504
  # ],
7393
7505
  # task_definition: "String", # required
7394
7506
  # client_token: "String",
7507
+ # volume_configurations: [
7508
+ # {
7509
+ # name: "ECSVolumeName", # required
7510
+ # managed_ebs_volume: {
7511
+ # encrypted: false,
7512
+ # kms_key_id: "EBSKMSKeyId",
7513
+ # volume_type: "EBSVolumeType",
7514
+ # size_in_gi_b: 1,
7515
+ # snapshot_id: "EBSSnapshotId",
7516
+ # iops: 1,
7517
+ # throughput: 1,
7518
+ # tag_specifications: [
7519
+ # {
7520
+ # resource_type: "volume", # required, accepts volume
7521
+ # tags: [
7522
+ # {
7523
+ # key: "TagKey",
7524
+ # value: "TagValue",
7525
+ # },
7526
+ # ],
7527
+ # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION, SERVICE, NONE
7528
+ # },
7529
+ # ],
7530
+ # role_arn: "IAMRoleArn", # required
7531
+ # termination_policy: {
7532
+ # delete_on_termination: false, # required
7533
+ # },
7534
+ # filesystem_type: "ext3", # accepts ext3, ext4, xfs
7535
+ # },
7536
+ # },
7537
+ # ],
7395
7538
  # })
7396
7539
  #
7397
7540
  # @example Response structure
@@ -7533,9 +7676,15 @@ module Aws::ECS
7533
7676
  # information, see [Scheduling Tasks][1] in the *Amazon Elastic
7534
7677
  # Container Service Developer Guide*.
7535
7678
  #
7679
+ # You can attach Amazon EBS volumes to Amazon ECS tasks by configuring
7680
+ # the volume when creating or updating a service. For more infomation,
7681
+ # see [Amazon EBS volumes][2] in the *Amazon Elastic Container Service
7682
+ # Developer Guide*.
7683
+ #
7536
7684
  #
7537
7685
  #
7538
7686
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/scheduling_tasks.html
7687
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-volumes.html#ebs-volume-types
7539
7688
  #
7540
7689
  # @option params [String] :cluster
7541
7690
  # The short name or full Amazon Resource Name (ARN) of the cluster where
@@ -7641,6 +7790,16 @@ module Aws::ECS
7641
7790
  # task definition to start. If a `revision` isn't specified, the latest
7642
7791
  # `ACTIVE` revision is used.
7643
7792
  #
7793
+ # @option params [Array<Types::TaskVolumeConfiguration>] :volume_configurations
7794
+ # The details of the volume that was `configuredAtLaunch`. You can
7795
+ # configure the size, volumeType, IOPS, throughput, snapshot and
7796
+ # encryption in [TaskManagedEBSVolumeConfiguration][1]. The `name` of
7797
+ # the volume must match the `name` from the task definition.
7798
+ #
7799
+ #
7800
+ #
7801
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_TaskManagedEBSVolumeConfiguration.html
7802
+ #
7644
7803
  # @return [Types::StartTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7645
7804
  #
7646
7805
  # * {Types::StartTaskResponse#tasks #tasks} => Array&lt;Types::Task&gt;
@@ -7713,6 +7872,37 @@ module Aws::ECS
7713
7872
  # },
7714
7873
  # ],
7715
7874
  # task_definition: "String", # required
7875
+ # volume_configurations: [
7876
+ # {
7877
+ # name: "ECSVolumeName", # required
7878
+ # managed_ebs_volume: {
7879
+ # encrypted: false,
7880
+ # kms_key_id: "EBSKMSKeyId",
7881
+ # volume_type: "EBSVolumeType",
7882
+ # size_in_gi_b: 1,
7883
+ # snapshot_id: "EBSSnapshotId",
7884
+ # iops: 1,
7885
+ # throughput: 1,
7886
+ # tag_specifications: [
7887
+ # {
7888
+ # resource_type: "volume", # required, accepts volume
7889
+ # tags: [
7890
+ # {
7891
+ # key: "TagKey",
7892
+ # value: "TagValue",
7893
+ # },
7894
+ # ],
7895
+ # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION, SERVICE, NONE
7896
+ # },
7897
+ # ],
7898
+ # role_arn: "IAMRoleArn", # required
7899
+ # termination_policy: {
7900
+ # delete_on_termination: false, # required
7901
+ # },
7902
+ # filesystem_type: "ext3", # accepts ext3, ext4, xfs
7903
+ # },
7904
+ # },
7905
+ # ],
7716
7906
  # })
7717
7907
  #
7718
7908
  # @example Response structure
@@ -8877,13 +9067,24 @@ module Aws::ECS
8877
9067
  # task definition. When you update any of these parameters, Amazon ECS
8878
9068
  # starts new tasks with the new configuration.
8879
9069
  #
9070
+ # You can attach Amazon EBS volumes to Amazon ECS tasks by configuring
9071
+ # the volume when starting or running a task, or when creating or
9072
+ # updating a service. For more infomation, see [Amazon EBS volumes][1]
9073
+ # in the *Amazon Elastic Container Service Developer Guide*. You can
9074
+ # update your volume configurations and trigger a new deployment.
9075
+ # `volumeConfigurations` is only supported for REPLICA service and not
9076
+ # DAEMON service. If you leave `volumeConfigurations` `null`, it
9077
+ # doesn't trigger a new deployment. For more infomation on volumes, see
9078
+ # [Amazon EBS volumes][1] in the *Amazon Elastic Container Service
9079
+ # Developer Guide*.
9080
+ #
8880
9081
  # For services using the blue/green (`CODE_DEPLOY`) deployment
8881
9082
  # controller, only the desired count, deployment configuration, health
8882
9083
  # check grace period, task placement constraints and strategies, enable
8883
9084
  # ECS managed tags option, and propagate tags can be updated using this
8884
9085
  # API. If the network configuration, platform version, task definition,
8885
9086
  # or load balancer need to be updated, create a new CodeDeploy
8886
- # deployment. For more information, see [CreateDeployment][1] in the
9087
+ # deployment. For more information, see [CreateDeployment][2] in the
8887
9088
  # *CodeDeploy API Reference*.
8888
9089
  #
8889
9090
  # For services using an external deployment controller, you can update
@@ -8898,7 +9099,12 @@ module Aws::ECS
8898
9099
  # definition in a service by specifying the cluster that the service is
8899
9100
  # running in and a new `desiredCount` parameter.
8900
9101
  #
8901
- # If you have updated the Docker image of your application, you can
9102
+ # You can attach Amazon EBS volumes to Amazon ECS tasks by configuring
9103
+ # the volume when starting or running a task, or when creating or
9104
+ # updating a service. For more infomation, see [Amazon EBS volumes][1]
9105
+ # in the *Amazon Elastic Container Service Developer Guide*.
9106
+ #
9107
+ # If you have updated the container image of your application, you can
8902
9108
  # create a new task definition with that image and deploy it to your
8903
9109
  # service. The service scheduler uses the minimum healthy percent and
8904
9110
  # maximum percent parameters (in the service's deployment
@@ -8987,14 +9193,15 @@ module Aws::ECS
8987
9193
  # * `serviceRegistries`
8988
9194
  #
8989
9195
  # For more information about the role see the `CreateService` request
8990
- # parameter [ `role` ][2].
9196
+ # parameter [ `role` ][3].
8991
9197
  #
8992
9198
  # </note>
8993
9199
  #
8994
9200
  #
8995
9201
  #
8996
- # [1]: https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeployment.html
8997
- # [2]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html#ECS-CreateService-request-role
9202
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-volumes.html#ebs-volume-types
9203
+ # [2]: https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeployment.html
9204
+ # [3]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html#ECS-CreateService-request-role
8998
9205
  #
8999
9206
  # @option params [String] :cluster
9000
9207
  # The short name or full Amazon Resource Name (ARN) of the cluster that
@@ -9203,6 +9410,18 @@ module Aws::ECS
9203
9410
  #
9204
9411
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
9205
9412
  #
9413
+ # @option params [Array<Types::ServiceVolumeConfiguration>] :volume_configurations
9414
+ # The details of the volume that was `configuredAtLaunch`. You can
9415
+ # configure the size, volumeType, IOPS, throughput, snapshot and
9416
+ # encryption in [ServiceManagedEBSVolumeConfiguration][1]. The `name` of
9417
+ # the volume must match the `name` from the task definition. If set to
9418
+ # null, no new deployment is triggered. Otherwise, if this configuration
9419
+ # differs from the existing one, it triggers a new deployment.
9420
+ #
9421
+ #
9422
+ #
9423
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ServiceManagedEBSVolumeConfiguration.html
9424
+ #
9206
9425
  # @return [Types::UpdateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9207
9426
  #
9208
9427
  # * {Types::UpdateServiceResponse#service #service} => Types::Service
@@ -9331,6 +9550,34 @@ module Aws::ECS
9331
9550
  # ],
9332
9551
  # },
9333
9552
  # },
9553
+ # volume_configurations: [
9554
+ # {
9555
+ # name: "ECSVolumeName", # required
9556
+ # managed_ebs_volume: {
9557
+ # encrypted: false,
9558
+ # kms_key_id: "EBSKMSKeyId",
9559
+ # volume_type: "EBSVolumeType",
9560
+ # size_in_gi_b: 1,
9561
+ # snapshot_id: "EBSSnapshotId",
9562
+ # iops: 1,
9563
+ # throughput: 1,
9564
+ # tag_specifications: [
9565
+ # {
9566
+ # resource_type: "volume", # required, accepts volume
9567
+ # tags: [
9568
+ # {
9569
+ # key: "TagKey",
9570
+ # value: "TagValue",
9571
+ # },
9572
+ # ],
9573
+ # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION, SERVICE, NONE
9574
+ # },
9575
+ # ],
9576
+ # role_arn: "IAMRoleArn", # required
9577
+ # filesystem_type: "ext3", # accepts ext3, ext4, xfs
9578
+ # },
9579
+ # },
9580
+ # ],
9334
9581
  # })
9335
9582
  #
9336
9583
  # @example Response structure
@@ -9453,6 +9700,23 @@ module Aws::ECS
9453
9700
  # resp.service.deployments[0].service_connect_resources #=> Array
9454
9701
  # resp.service.deployments[0].service_connect_resources[0].discovery_name #=> String
9455
9702
  # resp.service.deployments[0].service_connect_resources[0].discovery_arn #=> String
9703
+ # resp.service.deployments[0].volume_configurations #=> Array
9704
+ # resp.service.deployments[0].volume_configurations[0].name #=> String
9705
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.encrypted #=> Boolean
9706
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.kms_key_id #=> String
9707
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.volume_type #=> String
9708
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.size_in_gi_b #=> Integer
9709
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.snapshot_id #=> String
9710
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.iops #=> Integer
9711
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.throughput #=> Integer
9712
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications #=> Array
9713
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].resource_type #=> String, one of "volume"
9714
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags #=> Array
9715
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags[0].key #=> String
9716
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].tags[0].value #=> String
9717
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.tag_specifications[0].propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE", "NONE"
9718
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.role_arn #=> String
9719
+ # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.filesystem_type #=> String, one of "ext3", "ext4", "xfs"
9456
9720
  # resp.service.role_arn #=> String
9457
9721
  # resp.service.events #=> Array
9458
9722
  # resp.service.events[0].id #=> String
@@ -9859,7 +10123,7 @@ module Aws::ECS
9859
10123
  params: params,
9860
10124
  config: config)
9861
10125
  context[:gem_name] = 'aws-sdk-ecs'
9862
- context[:gem_version] = '1.136.0'
10126
+ context[:gem_version] = '1.137.0'
9863
10127
  Seahorse::Client::Request.new(handlers, context)
9864
10128
  end
9865
10129