aws-sdk-ecs 1.136.0 → 1.137.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: 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