aws-sdk-ecs 1.75.0 → 1.80.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: 392d9ad82de139ba254e8f660c6ba9b9ec96de7e5c7b38545debc4925a25c9cd
4
- data.tar.gz: 8283d6687252baeee9c253b06ca04e3b3687023bd06f5ed5752cfa7affada868
3
+ metadata.gz: b958e282842cccdf6ff81deef2a2fd1f24ae49fbd252104eeb4a661182c094b3
4
+ data.tar.gz: d725abd51469334fa6ec45a000e561bc32ede7b51a4e23cd857b6f8bc4c34e3c
5
5
  SHA512:
6
- metadata.gz: 75fdfcc378063165f8a7bf39ceefb8b8f1af205496210ae57203d85fa39efa5a998818526d7633e3d481e42c1c02f4b5fdd9ada33da8433d277f7761ee1f6152
7
- data.tar.gz: a7480a0be0bc2edf3276420c86ff71fc54907b32795b0b0aafb70e5b3cdf60f20899251a5ab7b9d175d597b3f8f58c4110372b885370540ccafa7494ee499cbb
6
+ metadata.gz: e4930b66d9a775a70752d7c8dcc95cbd5129b0a9a649aaaae3a68e70e200cf112a9379dbc00fab7fdcd1a1c804e064a87e0dc21c9ae87508208638b9e510de85
7
+ data.tar.gz: f0980d9be823d47c2171f0cc1796358701914eb50e5975a928bfa1d68925b034173de76056effc96116589a7cb0d7d3d09f0cfaee4cdc8b3c3d1294e16f9d2b9
data/CHANGELOG.md CHANGED
@@ -1,6 +1,31 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.80.0 (2021-06-02)
5
+ ------------------
6
+
7
+ * Feature - Documentation updates for Amazon ECS.
8
+
9
+ 1.79.0 (2021-05-26)
10
+ ------------------
11
+
12
+ * Feature - The release adds support for registering External instances to your Amazon ECS clusters.
13
+
14
+ 1.78.0 (2021-05-10)
15
+ ------------------
16
+
17
+ * Feature - This release contains updates for Amazon ECS.
18
+
19
+ 1.77.0 (2021-04-29)
20
+ ------------------
21
+
22
+ * Feature - Add support for EphemeralStorage on TaskDefinition and TaskOverride
23
+
24
+ 1.76.0 (2021-03-15)
25
+ ------------------
26
+
27
+ * Feature - This is for ecs exec feature release which includes two new APIs - execute-command and update-cluster and an AWS CLI customization for execute-command API
28
+
4
29
  1.75.0 (2021-03-10)
5
30
  ------------------
6
31
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.75.0
1
+ 1.80.0
data/lib/aws-sdk-ecs.rb CHANGED
@@ -49,6 +49,6 @@ require_relative 'aws-sdk-ecs/customizations'
49
49
  # @!group service
50
50
  module Aws::ECS
51
51
 
52
- GEM_VERSION = '1.75.0'
52
+ GEM_VERSION = '1.80.0'
53
53
 
54
54
  end
@@ -461,7 +461,8 @@ module Aws::ECS
461
461
  # @option params [String] :cluster_name
462
462
  # The name of your cluster. If you do not specify a name for your
463
463
  # cluster, you create a cluster named `default`. Up to 255 letters
464
- # (uppercase and lowercase), numbers, and hyphens are allowed.
464
+ # (uppercase and lowercase), numbers, underscores, and hyphens are
465
+ # allowed.
465
466
  #
466
467
  # @option params [Array<Types::Tag>] :tags
467
468
  # The metadata that you apply to the cluster to help you categorize and
@@ -499,14 +500,20 @@ module Aws::ECS
499
500
  # specified, it will override the `containerInsights` value set with
500
501
  # PutAccountSetting or PutAccountSettingDefault.
501
502
  #
503
+ # @option params [Types::ClusterConfiguration] :configuration
504
+ # The execute command configuration for the cluster.
505
+ #
502
506
  # @option params [Array<String>] :capacity_providers
503
507
  # The short name of one or more capacity providers to associate with the
504
- # cluster.
508
+ # cluster. A capacity provider must be associated with a cluster before
509
+ # it can be included as part of the default capacity provider strategy
510
+ # of the cluster or used in a capacity provider strategy when calling
511
+ # the CreateService or RunTask actions.
505
512
  #
506
513
  # If specifying a capacity provider that uses an Auto Scaling group, the
507
514
  # capacity provider must already be created and not already associated
508
- # with another cluster. New capacity providers can be created with the
509
- # CreateCapacityProvider API operation.
515
+ # with another cluster. New Auto Scaling group capacity providers can be
516
+ # created with the CreateCapacityProvider API operation.
510
517
  #
511
518
  # To use a AWS Fargate capacity provider, specify either the `FARGATE`
512
519
  # or `FARGATE_SPOT` capacity providers. The AWS Fargate capacity
@@ -518,27 +525,11 @@ module Aws::ECS
518
525
  # is created.
519
526
  #
520
527
  # @option params [Array<Types::CapacityProviderStrategyItem>] :default_capacity_provider_strategy
521
- # The capacity provider strategy to use by default for the cluster.
522
- #
523
- # When creating a service or running a task on a cluster, if no capacity
524
- # provider or launch type is specified then the default capacity
525
- # provider strategy for the cluster is used.
526
- #
527
- # A capacity provider strategy consists of one or more capacity
528
- # providers along with the `base` and `weight` to assign to them. A
529
- # capacity provider must be associated with the cluster to be used in a
530
- # capacity provider strategy. The PutClusterCapacityProviders API is
531
- # used to associate a capacity provider with a cluster. Only capacity
532
- # providers with an `ACTIVE` or `UPDATING` status can be used.
533
- #
534
- # If specifying a capacity provider that uses an Auto Scaling group, the
535
- # capacity provider must already be created. New capacity providers can
536
- # be created with the CreateCapacityProvider API operation.
537
- #
538
- # To use a AWS Fargate capacity provider, specify either the `FARGATE`
539
- # or `FARGATE_SPOT` capacity providers. The AWS Fargate capacity
540
- # providers are available to all accounts and only need to be associated
541
- # with a cluster to be used.
528
+ # The capacity provider strategy to set as the default for the cluster.
529
+ # When a default capacity provider strategy is set for a cluster, when
530
+ # calling the RunTask or CreateService APIs wtih no capacity provider
531
+ # strategy or launch type specified, the default capacity provider
532
+ # strategy for the cluster is used.
542
533
  #
543
534
  # If a default capacity provider strategy is not defined for a cluster
544
535
  # during creation, it can be defined later with the
@@ -586,6 +577,19 @@ module Aws::ECS
586
577
  # value: "String",
587
578
  # },
588
579
  # ],
580
+ # configuration: {
581
+ # execute_command_configuration: {
582
+ # kms_key_id: "String",
583
+ # logging: "NONE", # accepts NONE, DEFAULT, OVERRIDE
584
+ # log_configuration: {
585
+ # cloud_watch_log_group_name: "String",
586
+ # cloud_watch_encryption_enabled: false,
587
+ # s3_bucket_name: "String",
588
+ # s3_encryption_enabled: false,
589
+ # s3_key_prefix: "String",
590
+ # },
591
+ # },
592
+ # },
589
593
  # capacity_providers: ["String"],
590
594
  # default_capacity_provider_strategy: [
591
595
  # {
@@ -600,6 +604,13 @@ module Aws::ECS
600
604
  #
601
605
  # resp.cluster.cluster_arn #=> String
602
606
  # resp.cluster.cluster_name #=> String
607
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
608
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
609
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
610
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
611
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
612
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
613
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
603
614
  # resp.cluster.status #=> String
604
615
  # resp.cluster.registered_container_instances_count #=> Integer
605
616
  # resp.cluster.running_tasks_count #=> Integer
@@ -768,9 +779,9 @@ module Aws::ECS
768
779
  #
769
780
  # @option params [required, String] :service_name
770
781
  # The name of your service. Up to 255 letters (uppercase and lowercase),
771
- # numbers, and hyphens are allowed. Service names must be unique within
772
- # a cluster, but you can have similarly named services in multiple
773
- # clusters within a Region or across multiple Regions.
782
+ # numbers, underscores, and hyphens are allowed. Service names must be
783
+ # unique within a cluster, but you can have similarly named services in
784
+ # multiple clusters within a Region or across multiple Regions.
774
785
  #
775
786
  # @option params [String] :task_definition
776
787
  # The `family` and `revision` (`family:revision`) or full ARN of the
@@ -790,7 +801,7 @@ module Aws::ECS
790
801
  # Load Balancer, you must specify one or more target group ARNs to
791
802
  # attach to the service. The service-linked role is required for
792
803
  # services that make use of multiple target groups. For more
793
- # information, see [Using Service-Linked Roles for Amazon ECS][2] in the
804
+ # information, see [Using service-linked roles for Amazon ECS][2] in the
794
805
  # *Amazon Elastic Container Service Developer Guide*.
795
806
  #
796
807
  # If the service is using the `CODE_DEPLOY` deployment controller, the
@@ -840,19 +851,17 @@ module Aws::ECS
840
851
  # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using-service-linked-roles.html
841
852
  #
842
853
  # @option params [Array<Types::ServiceRegistry>] :service_registries
843
- # The details of the service discovery registries to assign to this
844
- # service. For more information, see [Service Discovery][1].
854
+ # The details of the service discovery registry to associate with this
855
+ # service. For more information, see [Service discovery][1].
845
856
  #
846
- # <note markdown="1"> Service discovery is supported for Fargate tasks if you are using
847
- # platform version v1.1.0 or later. For more information, see [AWS
848
- # Fargate Platform Versions][2].
857
+ # <note markdown="1"> Each service may be associated with one service registry. Multiple
858
+ # service registries per service isn't supported.
849
859
  #
850
860
  # </note>
851
861
  #
852
862
  #
853
863
  #
854
864
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html
855
- # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
856
865
  #
857
866
  # @option params [Integer] :desired_count
858
867
  # The number of instantiations of the specified task definition to place
@@ -867,51 +876,48 @@ module Aws::ECS
867
876
  # idempotency of the request. Up to 32 ASCII characters are allowed.
868
877
  #
869
878
  # @option params [String] :launch_type
870
- # The launch type on which to run your service. For more information,
871
- # see [Amazon ECS Launch Types][1] in the *Amazon Elastic Container
879
+ # The infrastructure on which to run your service. For more information,
880
+ # see [Amazon ECS launch types][1] in the *Amazon Elastic Container
872
881
  # Service Developer Guide*.
873
882
  #
874
- # If a `launchType` is specified, the `capacityProviderStrategy`
875
- # parameter must be omitted.
883
+ # The `FARGATE` launch type runs your tasks on AWS Fargate On-Demand
884
+ # infrastructure.
885
+ #
886
+ # <note markdown="1"> Fargate Spot infrastructure is available for use but a capacity
887
+ # provider strategy must be used. For more information, see [AWS Fargate
888
+ # capacity providers][2] in the *Amazon ECS User Guide for AWS Fargate*.
889
+ #
890
+ # </note>
891
+ #
892
+ # The `EC2` launch type runs your tasks on Amazon EC2 instances
893
+ # registered to your cluster.
894
+ #
895
+ # The `EXTERNAL` launch type runs your tasks on your on-premise server
896
+ # or virtual machine (VM) capacity registered to your cluster.
897
+ #
898
+ # A service can use either a launch type or a capacity provider
899
+ # strategy. If a `launchType` is specified, the
900
+ # `capacityProviderStrategy` parameter must be omitted.
876
901
  #
877
902
  #
878
903
  #
879
904
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html
905
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/userguide/fargate-capacity-providers.html
880
906
  #
881
907
  # @option params [Array<Types::CapacityProviderStrategyItem>] :capacity_provider_strategy
882
908
  # The capacity provider strategy to use for the service.
883
909
  #
884
- # A capacity provider strategy consists of one or more capacity
885
- # providers along with the `base` and `weight` to assign to them. A
886
- # capacity provider must be associated with the cluster to be used in a
887
- # capacity provider strategy. The PutClusterCapacityProviders API is
888
- # used to associate a capacity provider with a cluster. Only capacity
889
- # providers with an `ACTIVE` or `UPDATING` status can be used.
890
- #
891
910
  # If a `capacityProviderStrategy` is specified, the `launchType`
892
911
  # parameter must be omitted. If no `capacityProviderStrategy` or
893
912
  # `launchType` is specified, the `defaultCapacityProviderStrategy` for
894
913
  # the cluster is used.
895
914
  #
896
- # If specifying a capacity provider that uses an Auto Scaling group, the
897
- # capacity provider must already be created. New capacity providers can
898
- # be created with the CreateCapacityProvider API operation.
899
- #
900
- # To use a AWS Fargate capacity provider, specify either the `FARGATE`
901
- # or `FARGATE_SPOT` capacity providers. The AWS Fargate capacity
902
- # providers are available to all accounts and only need to be associated
903
- # with a cluster to be used.
904
- #
905
- # The PutClusterCapacityProviders API operation is used to update the
906
- # list of available capacity providers for a cluster after the cluster
907
- # is created.
908
- #
909
915
  # @option params [String] :platform_version
910
916
  # The platform version that your tasks in the service are running on. A
911
917
  # platform version is specified only for tasks using the Fargate launch
912
918
  # type. If one isn't specified, the `LATEST` platform version is used
913
- # by default. For more information, see [AWS Fargate Platform
914
- # Versions][1] in the *Amazon Elastic Container Service Developer
919
+ # by default. For more information, see [AWS Fargate platform
920
+ # versions][1] in the *Amazon Elastic Container Service Developer
915
921
  # Guide*.
916
922
  #
917
923
  #
@@ -933,14 +939,14 @@ module Aws::ECS
933
939
  # configured to use service discovery, an external deployment
934
940
  # controller, multiple target groups, or Elastic Inference accelerators
935
941
  # in which case you should not specify a role here. For more
936
- # information, see [Using Service-Linked Roles for Amazon ECS][1] in the
942
+ # information, see [Using service-linked roles for Amazon ECS][1] in the
937
943
  # *Amazon Elastic Container Service Developer Guide*.
938
944
  #
939
945
  # If your specified role has a path other than `/`, then you must either
940
946
  # specify the full role ARN (this is recommended) or prefix the role
941
947
  # name with the path. For example, if a role with the name `bar` has a
942
948
  # path of `/foo/` then you would specify `/foo/bar` as the role name.
943
- # For more information, see [Friendly Names and Paths][2] in the *IAM
949
+ # For more information, see [Friendly names and paths][2] in the *IAM
944
950
  # User Guide*.
945
951
  #
946
952
  #
@@ -966,7 +972,7 @@ module Aws::ECS
966
972
  # The network configuration for the service. This parameter is required
967
973
  # for task definitions that use the `awsvpc` network mode to receive
968
974
  # their own elastic network interface, and it is not supported for other
969
- # network modes. For more information, see [Task Networking][1] in the
975
+ # network modes. For more information, see [Task networking][1] in the
970
976
  # *Amazon Elastic Container Service Developer Guide*.
971
977
  #
972
978
  #
@@ -1021,7 +1027,8 @@ module Aws::ECS
1021
1027
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html
1022
1028
  #
1023
1029
  # @option params [Types::DeploymentController] :deployment_controller
1024
- # The deployment controller to use for the service.
1030
+ # The deployment controller to use for the service. If no deployment
1031
+ # controller is specified, the default value of `ECS` is used.
1025
1032
  #
1026
1033
  # @option params [Array<Types::Tag>] :tags
1027
1034
  # The metadata that you apply to the service to help you categorize and
@@ -1071,6 +1078,11 @@ module Aws::ECS
1071
1078
  # within the service during service creation. To add tags to a task
1072
1079
  # after service creation, use the TagResource API action.
1073
1080
  #
1081
+ # @option params [Boolean] :enable_execute_command
1082
+ # Whether or not the execute command functionality is enabled for the
1083
+ # service. If `true`, this enables execute command functionality on all
1084
+ # containers in the service tasks.
1085
+ #
1074
1086
  # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1075
1087
  #
1076
1088
  # * {Types::CreateServiceResponse#service #service} => Types::Service
@@ -1217,7 +1229,7 @@ module Aws::ECS
1217
1229
  # ],
1218
1230
  # desired_count: 1,
1219
1231
  # client_token: "String",
1220
- # launch_type: "EC2", # accepts EC2, FARGATE
1232
+ # launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
1221
1233
  # capacity_provider_strategy: [
1222
1234
  # {
1223
1235
  # capacity_provider: "String", # required
@@ -1267,6 +1279,7 @@ module Aws::ECS
1267
1279
  # ],
1268
1280
  # enable_ecs_managed_tags: false,
1269
1281
  # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION, SERVICE
1282
+ # enable_execute_command: false,
1270
1283
  # })
1271
1284
  #
1272
1285
  # @example Response structure
@@ -1288,7 +1301,7 @@ module Aws::ECS
1288
1301
  # resp.service.desired_count #=> Integer
1289
1302
  # resp.service.running_count #=> Integer
1290
1303
  # resp.service.pending_count #=> Integer
1291
- # resp.service.launch_type #=> String, one of "EC2", "FARGATE"
1304
+ # resp.service.launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
1292
1305
  # resp.service.capacity_provider_strategy #=> Array
1293
1306
  # resp.service.capacity_provider_strategy[0].capacity_provider #=> String
1294
1307
  # resp.service.capacity_provider_strategy[0].weight #=> Integer
@@ -1313,7 +1326,7 @@ module Aws::ECS
1313
1326
  # resp.service.task_sets[0].running_count #=> Integer
1314
1327
  # resp.service.task_sets[0].created_at #=> Time
1315
1328
  # resp.service.task_sets[0].updated_at #=> Time
1316
- # resp.service.task_sets[0].launch_type #=> String, one of "EC2", "FARGATE"
1329
+ # resp.service.task_sets[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
1317
1330
  # resp.service.task_sets[0].capacity_provider_strategy #=> Array
1318
1331
  # resp.service.task_sets[0].capacity_provider_strategy[0].capacity_provider #=> String
1319
1332
  # resp.service.task_sets[0].capacity_provider_strategy[0].weight #=> Integer
@@ -1355,7 +1368,7 @@ module Aws::ECS
1355
1368
  # resp.service.deployments[0].capacity_provider_strategy[0].capacity_provider #=> String
1356
1369
  # resp.service.deployments[0].capacity_provider_strategy[0].weight #=> Integer
1357
1370
  # resp.service.deployments[0].capacity_provider_strategy[0].base #=> Integer
1358
- # resp.service.deployments[0].launch_type #=> String, one of "EC2", "FARGATE"
1371
+ # resp.service.deployments[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
1359
1372
  # resp.service.deployments[0].platform_version #=> String
1360
1373
  # resp.service.deployments[0].network_configuration.awsvpc_configuration.subnets #=> Array
1361
1374
  # resp.service.deployments[0].network_configuration.awsvpc_configuration.subnets[0] #=> String
@@ -1390,6 +1403,7 @@ module Aws::ECS
1390
1403
  # resp.service.created_by #=> String
1391
1404
  # resp.service.enable_ecs_managed_tags #=> Boolean
1392
1405
  # resp.service.propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE"
1406
+ # resp.service.enable_execute_command #=> Boolean
1393
1407
  #
1394
1408
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateService AWS API Documentation
1395
1409
  #
@@ -1428,8 +1442,7 @@ module Aws::ECS
1428
1442
  # The task definition for the tasks in the task set to use.
1429
1443
  #
1430
1444
  # @option params [Types::NetworkConfiguration] :network_configuration
1431
- # An object representing the network configuration for a task or
1432
- # service.
1445
+ # An object representing the network configuration for a task set.
1433
1446
  #
1434
1447
  # @option params [Array<Types::LoadBalancer>] :load_balancers
1435
1448
  # A load balancer object representing the load balancer to use with the
@@ -1563,7 +1576,7 @@ module Aws::ECS
1563
1576
  # container_port: 1,
1564
1577
  # },
1565
1578
  # ],
1566
- # launch_type: "EC2", # accepts EC2, FARGATE
1579
+ # launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
1567
1580
  # capacity_provider_strategy: [
1568
1581
  # {
1569
1582
  # capacity_provider: "String", # required
@@ -1600,7 +1613,7 @@ module Aws::ECS
1600
1613
  # resp.task_set.running_count #=> Integer
1601
1614
  # resp.task_set.created_at #=> Time
1602
1615
  # resp.task_set.updated_at #=> Time
1603
- # resp.task_set.launch_type #=> String, one of "EC2", "FARGATE"
1616
+ # resp.task_set.launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
1604
1617
  # resp.task_set.capacity_provider_strategy #=> Array
1605
1618
  # resp.task_set.capacity_provider_strategy[0].capacity_provider #=> String
1606
1619
  # resp.task_set.capacity_provider_strategy[0].weight #=> Integer
@@ -1881,6 +1894,13 @@ module Aws::ECS
1881
1894
  #
1882
1895
  # resp.cluster.cluster_arn #=> String
1883
1896
  # resp.cluster.cluster_name #=> String
1897
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
1898
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
1899
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
1900
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
1901
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
1902
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
1903
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
1884
1904
  # resp.cluster.status #=> String
1885
1905
  # resp.cluster.registered_container_instances_count #=> Integer
1886
1906
  # resp.cluster.running_tasks_count #=> Integer
@@ -2000,7 +2020,7 @@ module Aws::ECS
2000
2020
  # resp.service.desired_count #=> Integer
2001
2021
  # resp.service.running_count #=> Integer
2002
2022
  # resp.service.pending_count #=> Integer
2003
- # resp.service.launch_type #=> String, one of "EC2", "FARGATE"
2023
+ # resp.service.launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
2004
2024
  # resp.service.capacity_provider_strategy #=> Array
2005
2025
  # resp.service.capacity_provider_strategy[0].capacity_provider #=> String
2006
2026
  # resp.service.capacity_provider_strategy[0].weight #=> Integer
@@ -2025,7 +2045,7 @@ module Aws::ECS
2025
2045
  # resp.service.task_sets[0].running_count #=> Integer
2026
2046
  # resp.service.task_sets[0].created_at #=> Time
2027
2047
  # resp.service.task_sets[0].updated_at #=> Time
2028
- # resp.service.task_sets[0].launch_type #=> String, one of "EC2", "FARGATE"
2048
+ # resp.service.task_sets[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
2029
2049
  # resp.service.task_sets[0].capacity_provider_strategy #=> Array
2030
2050
  # resp.service.task_sets[0].capacity_provider_strategy[0].capacity_provider #=> String
2031
2051
  # resp.service.task_sets[0].capacity_provider_strategy[0].weight #=> Integer
@@ -2067,7 +2087,7 @@ module Aws::ECS
2067
2087
  # resp.service.deployments[0].capacity_provider_strategy[0].capacity_provider #=> String
2068
2088
  # resp.service.deployments[0].capacity_provider_strategy[0].weight #=> Integer
2069
2089
  # resp.service.deployments[0].capacity_provider_strategy[0].base #=> Integer
2070
- # resp.service.deployments[0].launch_type #=> String, one of "EC2", "FARGATE"
2090
+ # resp.service.deployments[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
2071
2091
  # resp.service.deployments[0].platform_version #=> String
2072
2092
  # resp.service.deployments[0].network_configuration.awsvpc_configuration.subnets #=> Array
2073
2093
  # resp.service.deployments[0].network_configuration.awsvpc_configuration.subnets[0] #=> String
@@ -2102,6 +2122,7 @@ module Aws::ECS
2102
2122
  # resp.service.created_by #=> String
2103
2123
  # resp.service.enable_ecs_managed_tags #=> Boolean
2104
2124
  # resp.service.propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE"
2125
+ # resp.service.enable_execute_command #=> Boolean
2105
2126
  #
2106
2127
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeleteService AWS API Documentation
2107
2128
  #
@@ -2165,7 +2186,7 @@ module Aws::ECS
2165
2186
  # resp.task_set.running_count #=> Integer
2166
2187
  # resp.task_set.created_at #=> Time
2167
2188
  # resp.task_set.updated_at #=> Time
2168
- # resp.task_set.launch_type #=> String, one of "EC2", "FARGATE"
2189
+ # resp.task_set.launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
2169
2190
  # resp.task_set.capacity_provider_strategy #=> Array
2170
2191
  # resp.task_set.capacity_provider_strategy[0].capacity_provider #=> String
2171
2192
  # resp.task_set.capacity_provider_strategy[0].weight #=> Integer
@@ -2510,9 +2531,9 @@ module Aws::ECS
2510
2531
  # resp.task_definition.placement_constraints[0].type #=> String, one of "memberOf"
2511
2532
  # resp.task_definition.placement_constraints[0].expression #=> String
2512
2533
  # resp.task_definition.compatibilities #=> Array
2513
- # resp.task_definition.compatibilities[0] #=> String, one of "EC2", "FARGATE"
2534
+ # resp.task_definition.compatibilities[0] #=> String, one of "EC2", "FARGATE", "EXTERNAL"
2514
2535
  # resp.task_definition.requires_compatibilities #=> Array
2515
- # resp.task_definition.requires_compatibilities[0] #=> String, one of "EC2", "FARGATE"
2536
+ # resp.task_definition.requires_compatibilities[0] #=> String, one of "EC2", "FARGATE", "EXTERNAL"
2516
2537
  # resp.task_definition.cpu #=> String
2517
2538
  # resp.task_definition.memory #=> String
2518
2539
  # resp.task_definition.inference_accelerators #=> Array
@@ -2528,6 +2549,7 @@ module Aws::ECS
2528
2549
  # resp.task_definition.registered_at #=> Time
2529
2550
  # resp.task_definition.deregistered_at #=> Time
2530
2551
  # resp.task_definition.registered_by #=> String
2552
+ # resp.task_definition.ephemeral_storage.size_in_gi_b #=> Integer
2531
2553
  #
2532
2554
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeregisterTaskDefinition AWS API Documentation
2533
2555
  #
@@ -2631,33 +2653,16 @@ module Aws::ECS
2631
2653
  # assumed.
2632
2654
  #
2633
2655
  # @option params [Array<String>] :include
2634
- # Whether to include additional information about your clusters in the
2635
- # response. If this field is omitted, the attachments, statistics, and
2636
- # tags are not included.
2656
+ # Whether to include additional information about the clusters in the
2657
+ # response. If this field is omitted, this information isn't included.
2637
2658
  #
2638
2659
  # If `ATTACHMENTS` is specified, the attachments for the container
2639
2660
  # instances or tasks within the cluster are included.
2640
2661
  #
2641
2662
  # If `SETTINGS` is specified, the settings for the cluster are included.
2642
2663
  #
2643
- # If `STATISTICS` is specified, the following additional information,
2644
- # separated by launch type, is included:
2645
- #
2646
- # * runningEC2TasksCount
2647
- #
2648
- # * runningFargateTasksCount
2649
- #
2650
- # * pendingEC2TasksCount
2651
- #
2652
- # * pendingFargateTasksCount
2653
- #
2654
- # * activeEC2ServiceCount
2655
- #
2656
- # * activeFargateServiceCount
2657
- #
2658
- # * drainingEC2ServiceCount
2659
- #
2660
- # * drainingFargateServiceCount
2664
+ # If `STATISTICS` is specified, the task and service count is included,
2665
+ # separated by launch type.
2661
2666
  #
2662
2667
  # If `TAGS` is specified, the metadata tags associated with the cluster
2663
2668
  # are included.
@@ -2695,7 +2700,7 @@ module Aws::ECS
2695
2700
  #
2696
2701
  # resp = client.describe_clusters({
2697
2702
  # clusters: ["String"],
2698
- # include: ["ATTACHMENTS"], # accepts ATTACHMENTS, SETTINGS, STATISTICS, TAGS
2703
+ # include: ["ATTACHMENTS"], # accepts ATTACHMENTS, CONFIGURATIONS, SETTINGS, STATISTICS, TAGS
2699
2704
  # })
2700
2705
  #
2701
2706
  # @example Response structure
@@ -2703,6 +2708,13 @@ module Aws::ECS
2703
2708
  # resp.clusters #=> Array
2704
2709
  # resp.clusters[0].cluster_arn #=> String
2705
2710
  # resp.clusters[0].cluster_name #=> String
2711
+ # resp.clusters[0].configuration.execute_command_configuration.kms_key_id #=> String
2712
+ # resp.clusters[0].configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
2713
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
2714
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
2715
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
2716
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
2717
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
2706
2718
  # resp.clusters[0].status #=> String
2707
2719
  # resp.clusters[0].registered_container_instances_count #=> Integer
2708
2720
  # resp.clusters[0].running_tasks_count #=> Integer
@@ -2745,8 +2757,7 @@ module Aws::ECS
2745
2757
  req.send_request(options)
2746
2758
  end
2747
2759
 
2748
- # Describes Amazon Elastic Container Service container instances.
2749
- # Returns metadata about registered and remaining resources on each
2760
+ # Describes one or more container instances. Returns metadata about each
2750
2761
  # container instance requested.
2751
2762
  #
2752
2763
  # @option params [String] :cluster
@@ -3035,7 +3046,7 @@ module Aws::ECS
3035
3046
  # resp.services[0].desired_count #=> Integer
3036
3047
  # resp.services[0].running_count #=> Integer
3037
3048
  # resp.services[0].pending_count #=> Integer
3038
- # resp.services[0].launch_type #=> String, one of "EC2", "FARGATE"
3049
+ # resp.services[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
3039
3050
  # resp.services[0].capacity_provider_strategy #=> Array
3040
3051
  # resp.services[0].capacity_provider_strategy[0].capacity_provider #=> String
3041
3052
  # resp.services[0].capacity_provider_strategy[0].weight #=> Integer
@@ -3060,7 +3071,7 @@ module Aws::ECS
3060
3071
  # resp.services[0].task_sets[0].running_count #=> Integer
3061
3072
  # resp.services[0].task_sets[0].created_at #=> Time
3062
3073
  # resp.services[0].task_sets[0].updated_at #=> Time
3063
- # resp.services[0].task_sets[0].launch_type #=> String, one of "EC2", "FARGATE"
3074
+ # resp.services[0].task_sets[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
3064
3075
  # resp.services[0].task_sets[0].capacity_provider_strategy #=> Array
3065
3076
  # resp.services[0].task_sets[0].capacity_provider_strategy[0].capacity_provider #=> String
3066
3077
  # resp.services[0].task_sets[0].capacity_provider_strategy[0].weight #=> Integer
@@ -3102,7 +3113,7 @@ module Aws::ECS
3102
3113
  # resp.services[0].deployments[0].capacity_provider_strategy[0].capacity_provider #=> String
3103
3114
  # resp.services[0].deployments[0].capacity_provider_strategy[0].weight #=> Integer
3104
3115
  # resp.services[0].deployments[0].capacity_provider_strategy[0].base #=> Integer
3105
- # resp.services[0].deployments[0].launch_type #=> String, one of "EC2", "FARGATE"
3116
+ # resp.services[0].deployments[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
3106
3117
  # resp.services[0].deployments[0].platform_version #=> String
3107
3118
  # resp.services[0].deployments[0].network_configuration.awsvpc_configuration.subnets #=> Array
3108
3119
  # resp.services[0].deployments[0].network_configuration.awsvpc_configuration.subnets[0] #=> String
@@ -3137,6 +3148,7 @@ module Aws::ECS
3137
3148
  # resp.services[0].created_by #=> String
3138
3149
  # resp.services[0].enable_ecs_managed_tags #=> Boolean
3139
3150
  # resp.services[0].propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE"
3151
+ # resp.services[0].enable_execute_command #=> Boolean
3140
3152
  # resp.failures #=> Array
3141
3153
  # resp.failures[0].arn #=> String
3142
3154
  # resp.failures[0].reason #=> String
@@ -3391,9 +3403,9 @@ module Aws::ECS
3391
3403
  # resp.task_definition.placement_constraints[0].type #=> String, one of "memberOf"
3392
3404
  # resp.task_definition.placement_constraints[0].expression #=> String
3393
3405
  # resp.task_definition.compatibilities #=> Array
3394
- # resp.task_definition.compatibilities[0] #=> String, one of "EC2", "FARGATE"
3406
+ # resp.task_definition.compatibilities[0] #=> String, one of "EC2", "FARGATE", "EXTERNAL"
3395
3407
  # resp.task_definition.requires_compatibilities #=> Array
3396
- # resp.task_definition.requires_compatibilities[0] #=> String, one of "EC2", "FARGATE"
3408
+ # resp.task_definition.requires_compatibilities[0] #=> String, one of "EC2", "FARGATE", "EXTERNAL"
3397
3409
  # resp.task_definition.cpu #=> String
3398
3410
  # resp.task_definition.memory #=> String
3399
3411
  # resp.task_definition.inference_accelerators #=> Array
@@ -3409,6 +3421,7 @@ module Aws::ECS
3409
3421
  # resp.task_definition.registered_at #=> Time
3410
3422
  # resp.task_definition.deregistered_at #=> Time
3411
3423
  # resp.task_definition.registered_by #=> String
3424
+ # resp.task_definition.ephemeral_storage.size_in_gi_b #=> Integer
3412
3425
  # resp.tags #=> Array
3413
3426
  # resp.tags[0].key #=> String
3414
3427
  # resp.tags[0].value #=> String
@@ -3477,7 +3490,7 @@ module Aws::ECS
3477
3490
  # resp.task_sets[0].running_count #=> Integer
3478
3491
  # resp.task_sets[0].created_at #=> Time
3479
3492
  # resp.task_sets[0].updated_at #=> Time
3480
- # resp.task_sets[0].launch_type #=> String, one of "EC2", "FARGATE"
3493
+ # resp.task_sets[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
3481
3494
  # resp.task_sets[0].capacity_provider_strategy #=> Array
3482
3495
  # resp.task_sets[0].capacity_provider_strategy[0].capacity_provider #=> String
3483
3496
  # resp.task_sets[0].capacity_provider_strategy[0].weight #=> Integer
@@ -3640,6 +3653,11 @@ module Aws::ECS
3640
3653
  # resp.tasks[0].containers[0].network_interfaces[0].private_ipv_4_address #=> String
3641
3654
  # resp.tasks[0].containers[0].network_interfaces[0].ipv6_address #=> String
3642
3655
  # resp.tasks[0].containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
3656
+ # resp.tasks[0].containers[0].managed_agents #=> Array
3657
+ # resp.tasks[0].containers[0].managed_agents[0].last_started_at #=> Time
3658
+ # resp.tasks[0].containers[0].managed_agents[0].name #=> String, one of "ExecuteCommandAgent"
3659
+ # resp.tasks[0].containers[0].managed_agents[0].reason #=> String
3660
+ # resp.tasks[0].containers[0].managed_agents[0].last_status #=> String
3643
3661
  # resp.tasks[0].containers[0].cpu #=> String
3644
3662
  # resp.tasks[0].containers[0].memory #=> String
3645
3663
  # resp.tasks[0].containers[0].memory_reservation #=> String
@@ -3648,6 +3666,7 @@ module Aws::ECS
3648
3666
  # resp.tasks[0].cpu #=> String
3649
3667
  # resp.tasks[0].created_at #=> Time
3650
3668
  # resp.tasks[0].desired_status #=> String
3669
+ # resp.tasks[0].enable_execute_command #=> Boolean
3651
3670
  # resp.tasks[0].execution_stopped_at #=> Time
3652
3671
  # resp.tasks[0].group #=> String
3653
3672
  # resp.tasks[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
@@ -3655,7 +3674,7 @@ module Aws::ECS
3655
3674
  # resp.tasks[0].inference_accelerators[0].device_name #=> String
3656
3675
  # resp.tasks[0].inference_accelerators[0].device_type #=> String
3657
3676
  # resp.tasks[0].last_status #=> String
3658
- # resp.tasks[0].launch_type #=> String, one of "EC2", "FARGATE"
3677
+ # resp.tasks[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
3659
3678
  # resp.tasks[0].memory #=> String
3660
3679
  # resp.tasks[0].overrides.container_overrides #=> Array
3661
3680
  # resp.tasks[0].overrides.container_overrides[0].name #=> String
@@ -3680,6 +3699,7 @@ module Aws::ECS
3680
3699
  # resp.tasks[0].overrides.execution_role_arn #=> String
3681
3700
  # resp.tasks[0].overrides.memory #=> String
3682
3701
  # resp.tasks[0].overrides.task_role_arn #=> String
3702
+ # resp.tasks[0].overrides.ephemeral_storage.size_in_gi_b #=> Integer
3683
3703
  # resp.tasks[0].platform_version #=> String
3684
3704
  # resp.tasks[0].pull_started_at #=> Time
3685
3705
  # resp.tasks[0].pull_stopped_at #=> Time
@@ -3695,6 +3715,7 @@ module Aws::ECS
3695
3715
  # resp.tasks[0].task_arn #=> String
3696
3716
  # resp.tasks[0].task_definition_arn #=> String
3697
3717
  # resp.tasks[0].version #=> Integer
3718
+ # resp.tasks[0].ephemeral_storage.size_in_gi_b #=> Integer
3698
3719
  # resp.failures #=> Array
3699
3720
  # resp.failures[0].arn #=> String
3700
3721
  # resp.failures[0].reason #=> String
@@ -3760,6 +3781,66 @@ module Aws::ECS
3760
3781
  req.send_request(options)
3761
3782
  end
3762
3783
 
3784
+ # Runs a command remotely on a container within a task.
3785
+ #
3786
+ # @option params [String] :cluster
3787
+ # The Amazon Resource Name (ARN) or short name of the cluster the task
3788
+ # is running in. If you do not specify a cluster, the default cluster is
3789
+ # assumed.
3790
+ #
3791
+ # @option params [String] :container
3792
+ # The name of the container to execute the command on. A container name
3793
+ # only needs to be specified for tasks containing multiple containers.
3794
+ #
3795
+ # @option params [required, String] :command
3796
+ # The command to run on the container.
3797
+ #
3798
+ # @option params [required, Boolean] :interactive
3799
+ # Use this flag to run your command in interactive mode.
3800
+ #
3801
+ # @option params [required, String] :task
3802
+ # The Amazon Resource Name (ARN) or ID of the task the container is part
3803
+ # of.
3804
+ #
3805
+ # @return [Types::ExecuteCommandResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3806
+ #
3807
+ # * {Types::ExecuteCommandResponse#cluster_arn #cluster_arn} => String
3808
+ # * {Types::ExecuteCommandResponse#container_arn #container_arn} => String
3809
+ # * {Types::ExecuteCommandResponse#container_name #container_name} => String
3810
+ # * {Types::ExecuteCommandResponse#interactive #interactive} => Boolean
3811
+ # * {Types::ExecuteCommandResponse#session #session} => Types::Session
3812
+ # * {Types::ExecuteCommandResponse#task_arn #task_arn} => String
3813
+ #
3814
+ # @example Request syntax with placeholder values
3815
+ #
3816
+ # resp = client.execute_command({
3817
+ # cluster: "String",
3818
+ # container: "String",
3819
+ # command: "String", # required
3820
+ # interactive: false, # required
3821
+ # task: "String", # required
3822
+ # })
3823
+ #
3824
+ # @example Response structure
3825
+ #
3826
+ # resp.cluster_arn #=> String
3827
+ # resp.container_arn #=> String
3828
+ # resp.container_name #=> String
3829
+ # resp.interactive #=> Boolean
3830
+ # resp.session.session_id #=> String
3831
+ # resp.session.stream_url #=> String
3832
+ # resp.session.token_value #=> String
3833
+ # resp.task_arn #=> String
3834
+ #
3835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ExecuteCommand AWS API Documentation
3836
+ #
3837
+ # @overload execute_command(params = {})
3838
+ # @param [Hash] params ({})
3839
+ def execute_command(params = {}, options = {})
3840
+ req = build_request(:execute_command, params)
3841
+ req.send_request(options)
3842
+ end
3843
+
3763
3844
  # Lists the account settings for a specified principal.
3764
3845
  #
3765
3846
  # @option params [String] :name
@@ -3774,6 +3855,11 @@ module Aws::ECS
3774
3855
  # root user. If this field is omitted, the account settings are listed
3775
3856
  # only for the authenticated user.
3776
3857
  #
3858
+ # <note markdown="1"> Federated users assume the account setting of the root user and can't
3859
+ # have explicit account settings set for them.
3860
+ #
3861
+ # </note>
3862
+ #
3777
3863
  # @option params [Boolean] :effective_settings
3778
3864
  # Specifies whether to return the effective settings. If `true`, the
3779
3865
  # account settings for the root user or the default setting for the
@@ -4154,12 +4240,13 @@ module Aws::ECS
4154
4240
  req.send_request(options)
4155
4241
  end
4156
4242
 
4157
- # Lists the services that are running in a specified cluster.
4243
+ # Returns a list of services. You can filter the results by cluster,
4244
+ # launch type, and scheduling strategy.
4158
4245
  #
4159
4246
  # @option params [String] :cluster
4160
- # The short name or full Amazon Resource Name (ARN) of the cluster that
4161
- # hosts the services to list. If you do not specify a cluster, the
4162
- # default cluster is assumed.
4247
+ # The short name or full Amazon Resource Name (ARN) of the cluster to
4248
+ # use when filtering the `ListServices` results. If you do not specify a
4249
+ # cluster, the default cluster is assumed.
4163
4250
  #
4164
4251
  # @option params [String] :next_token
4165
4252
  # The `nextToken` value returned from a `ListServices` request
@@ -4184,10 +4271,11 @@ module Aws::ECS
4184
4271
  # and a `nextToken` value if applicable.
4185
4272
  #
4186
4273
  # @option params [String] :launch_type
4187
- # The launch type for the services to list.
4274
+ # The launch type to use when filtering the `ListServices` results.
4188
4275
  #
4189
4276
  # @option params [String] :scheduling_strategy
4190
- # The scheduling strategy for services to list.
4277
+ # The scheduling strategy to use when filtering the `ListServices`
4278
+ # results.
4191
4279
  #
4192
4280
  # @return [Types::ListServicesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4193
4281
  #
@@ -4217,7 +4305,7 @@ module Aws::ECS
4217
4305
  # cluster: "String",
4218
4306
  # next_token: "String",
4219
4307
  # max_results: 1,
4220
- # launch_type: "EC2", # accepts EC2, FARGATE
4308
+ # launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
4221
4309
  # scheduling_strategy: "REPLICA", # accepts REPLICA, DAEMON
4222
4310
  # })
4223
4311
  #
@@ -4522,30 +4610,29 @@ module Aws::ECS
4522
4610
  req.send_request(options)
4523
4611
  end
4524
4612
 
4525
- # Returns a list of tasks for a specified cluster. You can filter the
4526
- # results by family name, by a particular container instance, or by the
4527
- # desired status of the task with the `family`, `containerInstance`, and
4528
- # `desiredStatus` parameters.
4613
+ # Returns a list of tasks. You can filter the results by cluster, task
4614
+ # definition family, container instance, launch type, what IAM principal
4615
+ # started the task, or by the desired status of the task.
4529
4616
  #
4530
4617
  # Recently stopped tasks might appear in the returned results.
4531
4618
  # Currently, stopped tasks appear in the returned results for at least
4532
4619
  # one hour.
4533
4620
  #
4534
4621
  # @option params [String] :cluster
4535
- # The short name or full Amazon Resource Name (ARN) of the cluster that
4536
- # hosts the tasks to list. If you do not specify a cluster, the default
4537
- # cluster is assumed.
4622
+ # The short name or full Amazon Resource Name (ARN) of the cluster to
4623
+ # use when filtering the `ListTasks` results. If you do not specify a
4624
+ # cluster, the default cluster is assumed.
4538
4625
  #
4539
4626
  # @option params [String] :container_instance
4540
- # The container instance ID or full ARN of the container instance with
4541
- # which to filter the `ListTasks` results. Specifying a
4627
+ # The container instance ID or full ARN of the container instance to use
4628
+ # when filtering the `ListTasks` results. Specifying a
4542
4629
  # `containerInstance` limits the results to tasks that belong to that
4543
4630
  # container instance.
4544
4631
  #
4545
4632
  # @option params [String] :family
4546
- # The name of the family with which to filter the `ListTasks` results.
4547
- # Specifying a `family` limits the results to tasks that belong to that
4548
- # family.
4633
+ # The name of the task definition family to use when filtering the
4634
+ # `ListTasks` results. Specifying a `family` limits the results to tasks
4635
+ # that belong to that family.
4549
4636
  #
4550
4637
  # @option params [String] :next_token
4551
4638
  # The `nextToken` value returned from a `ListTasks` request indicating
@@ -4575,12 +4662,12 @@ module Aws::ECS
4575
4662
  # started with that value.
4576
4663
  #
4577
4664
  # @option params [String] :service_name
4578
- # The name of the service with which to filter the `ListTasks` results.
4665
+ # The name of the service to use when filtering the `ListTasks` results.
4579
4666
  # Specifying a `serviceName` limits the results to tasks that belong to
4580
4667
  # that service.
4581
4668
  #
4582
4669
  # @option params [String] :desired_status
4583
- # The task desired status with which to filter the `ListTasks` results.
4670
+ # The task desired status to use when filtering the `ListTasks` results.
4584
4671
  # Specifying a `desiredStatus` of `STOPPED` limits the results to tasks
4585
4672
  # that Amazon ECS has set the desired status to `STOPPED`. This can be
4586
4673
  # useful for debugging tasks that are not starting properly or have died
@@ -4595,7 +4682,7 @@ module Aws::ECS
4595
4682
  # </note>
4596
4683
  #
4597
4684
  # @option params [String] :launch_type
4598
- # The launch type for services to list.
4685
+ # The launch type to use when filtering the `ListTasks` results.
4599
4686
  #
4600
4687
  # @return [Types::ListTasksResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4601
4688
  #
@@ -4649,7 +4736,7 @@ module Aws::ECS
4649
4736
  # started_by: "String",
4650
4737
  # service_name: "String",
4651
4738
  # desired_status: "RUNNING", # accepts RUNNING, PENDING, STOPPED
4652
- # launch_type: "EC2", # accepts EC2, FARGATE
4739
+ # launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
4653
4740
  # })
4654
4741
  #
4655
4742
  # @example Response structure
@@ -4732,6 +4819,11 @@ module Aws::ECS
4732
4819
  # this field is omitted, the setting is changed only for the
4733
4820
  # authenticated user.
4734
4821
  #
4822
+ # <note markdown="1"> Federated users assume the account setting of the root user and can't
4823
+ # have explicit account settings set for them.
4824
+ #
4825
+ # </note>
4826
+ #
4735
4827
  # @return [Types::PutAccountSettingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4736
4828
  #
4737
4829
  # * {Types::PutAccountSettingResponse#setting #setting} => Types::Setting
@@ -5005,6 +5097,13 @@ module Aws::ECS
5005
5097
  #
5006
5098
  # resp.cluster.cluster_arn #=> String
5007
5099
  # resp.cluster.cluster_name #=> String
5100
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
5101
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
5102
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
5103
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
5104
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
5105
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
5106
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
5008
5107
  # resp.cluster.status #=> String
5009
5108
  # resp.cluster.registered_container_instances_count #=> Integer
5010
5109
  # resp.cluster.running_tasks_count #=> Integer
@@ -5256,7 +5355,7 @@ module Aws::ECS
5256
5355
  # You must specify a `family` for a task definition, which allows you to
5257
5356
  # track multiple versions of the same task definition. The `family` is
5258
5357
  # used as a name for your task definition. Up to 255 letters (uppercase
5259
- # and lowercase), numbers, and hyphens are allowed.
5358
+ # and lowercase), numbers, underscores, and hyphens are allowed.
5260
5359
  #
5261
5360
  # @option params [String] :task_role_arn
5262
5361
  # The short name or full Amazon Resource Name (ARN) of the IAM role that
@@ -5350,9 +5449,9 @@ module Aws::ECS
5350
5449
  #
5351
5450
  # @option params [Array<String>] :requires_compatibilities
5352
5451
  # The task launch type that Amazon ECS should validate the task
5353
- # definition against. This ensures that the task definition parameters
5354
- # are compatible with the specified launch type. If no value is
5355
- # specified, it defaults to `EC2`.
5452
+ # definition against. A client exception is returned if the task
5453
+ # definition doesn't validate against the compatibilities specified. If
5454
+ # no value is specified, the parameter is omitted from the response.
5356
5455
  #
5357
5456
  # @option params [String] :cpu
5358
5457
  # The number of CPU units used by the task. It can be expressed as an
@@ -5468,8 +5567,8 @@ module Aws::ECS
5468
5567
  # risk of undesired process namespace expose. For more information, see
5469
5568
  # [Docker security][2].
5470
5569
  #
5471
- # <note markdown="1"> This parameter is not supported for Windows containers or tasks using
5472
- # the Fargate launch type.
5570
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks run on
5571
+ # AWS Fargate.
5473
5572
  #
5474
5573
  # </note>
5475
5574
  #
@@ -5507,8 +5606,8 @@ module Aws::ECS
5507
5606
  # * For tasks that use the `task` IPC mode, IPC namespace related
5508
5607
  # `systemControls` will apply to all containers within a task.
5509
5608
  #
5510
- # <note markdown="1"> This parameter is not supported for Windows containers or tasks using
5511
- # the Fargate launch type.
5609
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks run on
5610
+ # AWS Fargate.
5512
5611
  #
5513
5612
  # </note>
5514
5613
  #
@@ -5521,22 +5620,39 @@ module Aws::ECS
5521
5620
  # @option params [Types::ProxyConfiguration] :proxy_configuration
5522
5621
  # The configuration details for the App Mesh proxy.
5523
5622
  #
5524
- # For tasks using the EC2 launch type, the container instances require
5525
- # at least version 1.26.0 of the container agent and at least version
5526
- # 1.26.0-1 of the `ecs-init` package to enable a proxy configuration. If
5527
- # your container instances are launched from the Amazon ECS-optimized
5528
- # AMI version `20190301` or later, then they contain the required
5529
- # versions of the container agent and `ecs-init`. For more information,
5530
- # see [Amazon ECS-optimized Linux AMI][1]
5623
+ # For tasks hosted on Amazon EC2 instances, the container instances
5624
+ # require at least version `1.26.0` of the container agent and at least
5625
+ # version `1.26.0-1` of the `ecs-init` package to enable a proxy
5626
+ # configuration. If your container instances are launched from the
5627
+ # Amazon ECS-optimized AMI version `20190301` or later, then they
5628
+ # contain the required versions of the container agent and `ecs-init`.
5629
+ # For more information, see [Amazon ECS-optimized AMI versions][1] in
5630
+ # the *Amazon Elastic Container Service Developer Guide*.
5531
5631
  #
5532
5632
  #
5533
5633
  #
5534
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html
5634
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-ami-versions.html
5535
5635
  #
5536
5636
  # @option params [Array<Types::InferenceAccelerator>] :inference_accelerators
5537
5637
  # The Elastic Inference accelerators to use for the containers in the
5538
5638
  # task.
5539
5639
  #
5640
+ # @option params [Types::EphemeralStorage] :ephemeral_storage
5641
+ # The amount of ephemeral storage to allocate for the task. This
5642
+ # parameter is used to expand the total amount of ephemeral storage
5643
+ # available, beyond the default amount, for tasks hosted on AWS Fargate.
5644
+ # For more information, see [Fargate task storage][1] in the *Amazon ECS
5645
+ # User Guide for AWS Fargate*.
5646
+ #
5647
+ # <note markdown="1"> This parameter is only supported for tasks hosted on AWS Fargate using
5648
+ # platform version `1.4.0` or later.
5649
+ #
5650
+ # </note>
5651
+ #
5652
+ #
5653
+ #
5654
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/userguide/using_data_volumes.html
5655
+ #
5540
5656
  # @return [Types::RegisterTaskDefinitionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5541
5657
  #
5542
5658
  # * {Types::RegisterTaskDefinitionResponse#task_definition #task_definition} => Types::TaskDefinition
@@ -5799,7 +5915,7 @@ module Aws::ECS
5799
5915
  # expression: "String",
5800
5916
  # },
5801
5917
  # ],
5802
- # requires_compatibilities: ["EC2"], # accepts EC2, FARGATE
5918
+ # requires_compatibilities: ["EC2"], # accepts EC2, FARGATE, EXTERNAL
5803
5919
  # cpu: "String",
5804
5920
  # memory: "String",
5805
5921
  # tags: [
@@ -5826,6 +5942,9 @@ module Aws::ECS
5826
5942
  # device_type: "String", # required
5827
5943
  # },
5828
5944
  # ],
5945
+ # ephemeral_storage: {
5946
+ # size_in_gi_b: 1, # required
5947
+ # },
5829
5948
  # })
5830
5949
  #
5831
5950
  # @example Response structure
@@ -5967,9 +6086,9 @@ module Aws::ECS
5967
6086
  # resp.task_definition.placement_constraints[0].type #=> String, one of "memberOf"
5968
6087
  # resp.task_definition.placement_constraints[0].expression #=> String
5969
6088
  # resp.task_definition.compatibilities #=> Array
5970
- # resp.task_definition.compatibilities[0] #=> String, one of "EC2", "FARGATE"
6089
+ # resp.task_definition.compatibilities[0] #=> String, one of "EC2", "FARGATE", "EXTERNAL"
5971
6090
  # resp.task_definition.requires_compatibilities #=> Array
5972
- # resp.task_definition.requires_compatibilities[0] #=> String, one of "EC2", "FARGATE"
6091
+ # resp.task_definition.requires_compatibilities[0] #=> String, one of "EC2", "FARGATE", "EXTERNAL"
5973
6092
  # resp.task_definition.cpu #=> String
5974
6093
  # resp.task_definition.memory #=> String
5975
6094
  # resp.task_definition.inference_accelerators #=> Array
@@ -5985,6 +6104,7 @@ module Aws::ECS
5985
6104
  # resp.task_definition.registered_at #=> Time
5986
6105
  # resp.task_definition.deregistered_at #=> Time
5987
6106
  # resp.task_definition.registered_by #=> String
6107
+ # resp.task_definition.ephemeral_storage.size_in_gi_b #=> Integer
5988
6108
  # resp.tags #=> Array
5989
6109
  # resp.tags[0].key #=> String
5990
6110
  # resp.tags[0].value #=> String
@@ -6037,31 +6157,11 @@ module Aws::ECS
6037
6157
  # @option params [Array<Types::CapacityProviderStrategyItem>] :capacity_provider_strategy
6038
6158
  # The capacity provider strategy to use for the task.
6039
6159
  #
6040
- # A capacity provider strategy consists of one or more capacity
6041
- # providers along with the `base` and `weight` to assign to them. A
6042
- # capacity provider must be associated with the cluster to be used in a
6043
- # capacity provider strategy. The PutClusterCapacityProviders API is
6044
- # used to associate a capacity provider with a cluster. Only capacity
6045
- # providers with an `ACTIVE` or `UPDATING` status can be used.
6046
- #
6047
6160
  # If a `capacityProviderStrategy` is specified, the `launchType`
6048
6161
  # parameter must be omitted. If no `capacityProviderStrategy` or
6049
6162
  # `launchType` is specified, the `defaultCapacityProviderStrategy` for
6050
6163
  # the cluster is used.
6051
6164
  #
6052
- # If specifying a capacity provider that uses an Auto Scaling group, the
6053
- # capacity provider must already be created. New capacity providers can
6054
- # be created with the CreateCapacityProvider API operation.
6055
- #
6056
- # To use a AWS Fargate capacity provider, specify either the `FARGATE`
6057
- # or `FARGATE_SPOT` capacity providers. The AWS Fargate capacity
6058
- # providers are available to all accounts and only need to be associated
6059
- # with a cluster to be used.
6060
- #
6061
- # The PutClusterCapacityProviders API operation is used to update the
6062
- # list of available capacity providers for a cluster after the cluster
6063
- # is created.
6064
- #
6065
6165
  # @option params [String] :cluster
6066
6166
  # The short name or full Amazon Resource Name (ARN) of the cluster on
6067
6167
  # which to run your task. If you do not specify a cluster, the default
@@ -6080,22 +6180,44 @@ module Aws::ECS
6080
6180
  #
6081
6181
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html
6082
6182
  #
6183
+ # @option params [Boolean] :enable_execute_command
6184
+ # Whether or not to enable the execute command functionality for the
6185
+ # containers in this task. If `true`, this enables execute command
6186
+ # functionality on all containers in the task.
6187
+ #
6083
6188
  # @option params [String] :group
6084
6189
  # The name of the task group to associate with the task. The default
6085
6190
  # value is the family name of the task definition (for example,
6086
6191
  # family:my-family-name).
6087
6192
  #
6088
6193
  # @option params [String] :launch_type
6089
- # The launch type on which to run your task. For more information, see
6090
- # [Amazon ECS Launch Types][1] in the *Amazon Elastic Container Service
6091
- # Developer Guide*.
6194
+ # The infrastructure on which to run your standalone task. For more
6195
+ # information, see [Amazon ECS launch types][1] in the *Amazon Elastic
6196
+ # Container Service Developer Guide*.
6092
6197
  #
6198
+ # The `FARGATE` launch type runs your tasks on AWS Fargate On-Demand
6199
+ # infrastructure.
6200
+ #
6201
+ # <note markdown="1"> Fargate Spot infrastructure is available for use but a capacity
6202
+ # provider strategy must be used. For more information, see [AWS Fargate
6203
+ # capacity providers][2] in the *Amazon ECS User Guide for AWS Fargate*.
6204
+ #
6205
+ # </note>
6206
+ #
6207
+ # The `EC2` launch type runs your tasks on Amazon EC2 instances
6208
+ # registered to your cluster.
6209
+ #
6210
+ # The `EXTERNAL` launch type runs your tasks on your on-premise server
6211
+ # or virtual machine (VM) capacity registered to your cluster.
6212
+ #
6213
+ # A task can use either a launch type or a capacity provider strategy.
6093
6214
  # If a `launchType` is specified, the `capacityProviderStrategy`
6094
6215
  # parameter must be omitted.
6095
6216
  #
6096
6217
  #
6097
6218
  #
6098
6219
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html
6220
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/userguide/fargate-capacity-providers.html
6099
6221
  #
6100
6222
  # @option params [Types::NetworkConfiguration] :network_configuration
6101
6223
  # The network configuration for the task. This parameter is required for
@@ -6260,8 +6382,9 @@ module Aws::ECS
6260
6382
  # cluster: "String",
6261
6383
  # count: 1,
6262
6384
  # enable_ecs_managed_tags: false,
6385
+ # enable_execute_command: false,
6263
6386
  # group: "String",
6264
- # launch_type: "EC2", # accepts EC2, FARGATE
6387
+ # launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
6265
6388
  # network_configuration: {
6266
6389
  # awsvpc_configuration: {
6267
6390
  # subnets: ["String"], # required
@@ -6307,6 +6430,9 @@ module Aws::ECS
6307
6430
  # execution_role_arn: "String",
6308
6431
  # memory: "String",
6309
6432
  # task_role_arn: "String",
6433
+ # ephemeral_storage: {
6434
+ # size_in_gi_b: 1, # required
6435
+ # },
6310
6436
  # },
6311
6437
  # placement_constraints: [
6312
6438
  # {
@@ -6374,6 +6500,11 @@ module Aws::ECS
6374
6500
  # resp.tasks[0].containers[0].network_interfaces[0].private_ipv_4_address #=> String
6375
6501
  # resp.tasks[0].containers[0].network_interfaces[0].ipv6_address #=> String
6376
6502
  # resp.tasks[0].containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
6503
+ # resp.tasks[0].containers[0].managed_agents #=> Array
6504
+ # resp.tasks[0].containers[0].managed_agents[0].last_started_at #=> Time
6505
+ # resp.tasks[0].containers[0].managed_agents[0].name #=> String, one of "ExecuteCommandAgent"
6506
+ # resp.tasks[0].containers[0].managed_agents[0].reason #=> String
6507
+ # resp.tasks[0].containers[0].managed_agents[0].last_status #=> String
6377
6508
  # resp.tasks[0].containers[0].cpu #=> String
6378
6509
  # resp.tasks[0].containers[0].memory #=> String
6379
6510
  # resp.tasks[0].containers[0].memory_reservation #=> String
@@ -6382,6 +6513,7 @@ module Aws::ECS
6382
6513
  # resp.tasks[0].cpu #=> String
6383
6514
  # resp.tasks[0].created_at #=> Time
6384
6515
  # resp.tasks[0].desired_status #=> String
6516
+ # resp.tasks[0].enable_execute_command #=> Boolean
6385
6517
  # resp.tasks[0].execution_stopped_at #=> Time
6386
6518
  # resp.tasks[0].group #=> String
6387
6519
  # resp.tasks[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
@@ -6389,7 +6521,7 @@ module Aws::ECS
6389
6521
  # resp.tasks[0].inference_accelerators[0].device_name #=> String
6390
6522
  # resp.tasks[0].inference_accelerators[0].device_type #=> String
6391
6523
  # resp.tasks[0].last_status #=> String
6392
- # resp.tasks[0].launch_type #=> String, one of "EC2", "FARGATE"
6524
+ # resp.tasks[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
6393
6525
  # resp.tasks[0].memory #=> String
6394
6526
  # resp.tasks[0].overrides.container_overrides #=> Array
6395
6527
  # resp.tasks[0].overrides.container_overrides[0].name #=> String
@@ -6414,6 +6546,7 @@ module Aws::ECS
6414
6546
  # resp.tasks[0].overrides.execution_role_arn #=> String
6415
6547
  # resp.tasks[0].overrides.memory #=> String
6416
6548
  # resp.tasks[0].overrides.task_role_arn #=> String
6549
+ # resp.tasks[0].overrides.ephemeral_storage.size_in_gi_b #=> Integer
6417
6550
  # resp.tasks[0].platform_version #=> String
6418
6551
  # resp.tasks[0].pull_started_at #=> Time
6419
6552
  # resp.tasks[0].pull_stopped_at #=> Time
@@ -6429,6 +6562,7 @@ module Aws::ECS
6429
6562
  # resp.tasks[0].task_arn #=> String
6430
6563
  # resp.tasks[0].task_definition_arn #=> String
6431
6564
  # resp.tasks[0].version #=> Integer
6565
+ # resp.tasks[0].ephemeral_storage.size_in_gi_b #=> Integer
6432
6566
  # resp.failures #=> Array
6433
6567
  # resp.failures[0].arn #=> String
6434
6568
  # resp.failures[0].reason #=> String
@@ -6473,6 +6607,11 @@ module Aws::ECS
6473
6607
  #
6474
6608
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html
6475
6609
  #
6610
+ # @option params [Boolean] :enable_execute_command
6611
+ # Whether or not the execute command functionality is enabled for the
6612
+ # task. If `true`, this enables execute command functionality on all
6613
+ # containers in the task.
6614
+ #
6476
6615
  # @option params [String] :group
6477
6616
  # The name of the task group to associate with the task. The default
6478
6617
  # value is the family name of the task definition (for example,
@@ -6564,6 +6703,7 @@ module Aws::ECS
6564
6703
  # cluster: "String",
6565
6704
  # container_instances: ["String"], # required
6566
6705
  # enable_ecs_managed_tags: false,
6706
+ # enable_execute_command: false,
6567
6707
  # group: "String",
6568
6708
  # network_configuration: {
6569
6709
  # awsvpc_configuration: {
@@ -6610,6 +6750,9 @@ module Aws::ECS
6610
6750
  # execution_role_arn: "String",
6611
6751
  # memory: "String",
6612
6752
  # task_role_arn: "String",
6753
+ # ephemeral_storage: {
6754
+ # size_in_gi_b: 1, # required
6755
+ # },
6613
6756
  # },
6614
6757
  # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION, SERVICE
6615
6758
  # reference_id: "String",
@@ -6664,6 +6807,11 @@ module Aws::ECS
6664
6807
  # resp.tasks[0].containers[0].network_interfaces[0].private_ipv_4_address #=> String
6665
6808
  # resp.tasks[0].containers[0].network_interfaces[0].ipv6_address #=> String
6666
6809
  # resp.tasks[0].containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
6810
+ # resp.tasks[0].containers[0].managed_agents #=> Array
6811
+ # resp.tasks[0].containers[0].managed_agents[0].last_started_at #=> Time
6812
+ # resp.tasks[0].containers[0].managed_agents[0].name #=> String, one of "ExecuteCommandAgent"
6813
+ # resp.tasks[0].containers[0].managed_agents[0].reason #=> String
6814
+ # resp.tasks[0].containers[0].managed_agents[0].last_status #=> String
6667
6815
  # resp.tasks[0].containers[0].cpu #=> String
6668
6816
  # resp.tasks[0].containers[0].memory #=> String
6669
6817
  # resp.tasks[0].containers[0].memory_reservation #=> String
@@ -6672,6 +6820,7 @@ module Aws::ECS
6672
6820
  # resp.tasks[0].cpu #=> String
6673
6821
  # resp.tasks[0].created_at #=> Time
6674
6822
  # resp.tasks[0].desired_status #=> String
6823
+ # resp.tasks[0].enable_execute_command #=> Boolean
6675
6824
  # resp.tasks[0].execution_stopped_at #=> Time
6676
6825
  # resp.tasks[0].group #=> String
6677
6826
  # resp.tasks[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
@@ -6679,7 +6828,7 @@ module Aws::ECS
6679
6828
  # resp.tasks[0].inference_accelerators[0].device_name #=> String
6680
6829
  # resp.tasks[0].inference_accelerators[0].device_type #=> String
6681
6830
  # resp.tasks[0].last_status #=> String
6682
- # resp.tasks[0].launch_type #=> String, one of "EC2", "FARGATE"
6831
+ # resp.tasks[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
6683
6832
  # resp.tasks[0].memory #=> String
6684
6833
  # resp.tasks[0].overrides.container_overrides #=> Array
6685
6834
  # resp.tasks[0].overrides.container_overrides[0].name #=> String
@@ -6704,6 +6853,7 @@ module Aws::ECS
6704
6853
  # resp.tasks[0].overrides.execution_role_arn #=> String
6705
6854
  # resp.tasks[0].overrides.memory #=> String
6706
6855
  # resp.tasks[0].overrides.task_role_arn #=> String
6856
+ # resp.tasks[0].overrides.ephemeral_storage.size_in_gi_b #=> Integer
6707
6857
  # resp.tasks[0].platform_version #=> String
6708
6858
  # resp.tasks[0].pull_started_at #=> Time
6709
6859
  # resp.tasks[0].pull_stopped_at #=> Time
@@ -6719,6 +6869,7 @@ module Aws::ECS
6719
6869
  # resp.tasks[0].task_arn #=> String
6720
6870
  # resp.tasks[0].task_definition_arn #=> String
6721
6871
  # resp.tasks[0].version #=> Integer
6872
+ # resp.tasks[0].ephemeral_storage.size_in_gi_b #=> Integer
6722
6873
  # resp.failures #=> Array
6723
6874
  # resp.failures[0].arn #=> String
6724
6875
  # resp.failures[0].reason #=> String
@@ -6821,6 +6972,11 @@ module Aws::ECS
6821
6972
  # resp.task.containers[0].network_interfaces[0].private_ipv_4_address #=> String
6822
6973
  # resp.task.containers[0].network_interfaces[0].ipv6_address #=> String
6823
6974
  # resp.task.containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
6975
+ # resp.task.containers[0].managed_agents #=> Array
6976
+ # resp.task.containers[0].managed_agents[0].last_started_at #=> Time
6977
+ # resp.task.containers[0].managed_agents[0].name #=> String, one of "ExecuteCommandAgent"
6978
+ # resp.task.containers[0].managed_agents[0].reason #=> String
6979
+ # resp.task.containers[0].managed_agents[0].last_status #=> String
6824
6980
  # resp.task.containers[0].cpu #=> String
6825
6981
  # resp.task.containers[0].memory #=> String
6826
6982
  # resp.task.containers[0].memory_reservation #=> String
@@ -6829,6 +6985,7 @@ module Aws::ECS
6829
6985
  # resp.task.cpu #=> String
6830
6986
  # resp.task.created_at #=> Time
6831
6987
  # resp.task.desired_status #=> String
6988
+ # resp.task.enable_execute_command #=> Boolean
6832
6989
  # resp.task.execution_stopped_at #=> Time
6833
6990
  # resp.task.group #=> String
6834
6991
  # resp.task.health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
@@ -6836,7 +6993,7 @@ module Aws::ECS
6836
6993
  # resp.task.inference_accelerators[0].device_name #=> String
6837
6994
  # resp.task.inference_accelerators[0].device_type #=> String
6838
6995
  # resp.task.last_status #=> String
6839
- # resp.task.launch_type #=> String, one of "EC2", "FARGATE"
6996
+ # resp.task.launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
6840
6997
  # resp.task.memory #=> String
6841
6998
  # resp.task.overrides.container_overrides #=> Array
6842
6999
  # resp.task.overrides.container_overrides[0].name #=> String
@@ -6861,6 +7018,7 @@ module Aws::ECS
6861
7018
  # resp.task.overrides.execution_role_arn #=> String
6862
7019
  # resp.task.overrides.memory #=> String
6863
7020
  # resp.task.overrides.task_role_arn #=> String
7021
+ # resp.task.overrides.ephemeral_storage.size_in_gi_b #=> Integer
6864
7022
  # resp.task.platform_version #=> String
6865
7023
  # resp.task.pull_started_at #=> Time
6866
7024
  # resp.task.pull_stopped_at #=> Time
@@ -6876,6 +7034,7 @@ module Aws::ECS
6876
7034
  # resp.task.task_arn #=> String
6877
7035
  # resp.task.task_definition_arn #=> String
6878
7036
  # resp.task.version #=> Integer
7037
+ # resp.task.ephemeral_storage.size_in_gi_b #=> Integer
6879
7038
  #
6880
7039
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/StopTask AWS API Documentation
6881
7040
  #
@@ -7024,6 +7183,9 @@ module Aws::ECS
7024
7183
  # @option params [Array<Types::AttachmentStateChange>] :attachments
7025
7184
  # Any attachments associated with the state change request.
7026
7185
  #
7186
+ # @option params [Array<Types::ManagedAgentStateChange>] :managed_agents
7187
+ # The details for the managed agent associated with the task.
7188
+ #
7027
7189
  # @option params [Time,DateTime,Date,Integer,String] :pull_started_at
7028
7190
  # The Unix timestamp for when the container image pull began.
7029
7191
  #
@@ -7068,6 +7230,14 @@ module Aws::ECS
7068
7230
  # status: "String", # required
7069
7231
  # },
7070
7232
  # ],
7233
+ # managed_agents: [
7234
+ # {
7235
+ # container_name: "String", # required
7236
+ # managed_agent_name: "ExecuteCommandAgent", # required, accepts ExecuteCommandAgent
7237
+ # status: "String", # required
7238
+ # reason: "String",
7239
+ # },
7240
+ # ],
7071
7241
  # pull_started_at: Time.now,
7072
7242
  # pull_stopped_at: Time.now,
7073
7243
  # execution_stopped_at: Time.now,
@@ -7267,6 +7437,95 @@ module Aws::ECS
7267
7437
  req.send_request(options)
7268
7438
  end
7269
7439
 
7440
+ # Updates the cluster.
7441
+ #
7442
+ # @option params [required, String] :cluster
7443
+ # The name of the cluster to modify the settings for.
7444
+ #
7445
+ # @option params [Array<Types::ClusterSetting>] :settings
7446
+ # The cluster settings for your cluster.
7447
+ #
7448
+ # @option params [Types::ClusterConfiguration] :configuration
7449
+ # The execute command configuration for the cluster.
7450
+ #
7451
+ # @return [Types::UpdateClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7452
+ #
7453
+ # * {Types::UpdateClusterResponse#cluster #cluster} => Types::Cluster
7454
+ #
7455
+ # @example Request syntax with placeholder values
7456
+ #
7457
+ # resp = client.update_cluster({
7458
+ # cluster: "String", # required
7459
+ # settings: [
7460
+ # {
7461
+ # name: "containerInsights", # accepts containerInsights
7462
+ # value: "String",
7463
+ # },
7464
+ # ],
7465
+ # configuration: {
7466
+ # execute_command_configuration: {
7467
+ # kms_key_id: "String",
7468
+ # logging: "NONE", # accepts NONE, DEFAULT, OVERRIDE
7469
+ # log_configuration: {
7470
+ # cloud_watch_log_group_name: "String",
7471
+ # cloud_watch_encryption_enabled: false,
7472
+ # s3_bucket_name: "String",
7473
+ # s3_encryption_enabled: false,
7474
+ # s3_key_prefix: "String",
7475
+ # },
7476
+ # },
7477
+ # },
7478
+ # })
7479
+ #
7480
+ # @example Response structure
7481
+ #
7482
+ # resp.cluster.cluster_arn #=> String
7483
+ # resp.cluster.cluster_name #=> String
7484
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
7485
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
7486
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
7487
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
7488
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
7489
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
7490
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
7491
+ # resp.cluster.status #=> String
7492
+ # resp.cluster.registered_container_instances_count #=> Integer
7493
+ # resp.cluster.running_tasks_count #=> Integer
7494
+ # resp.cluster.pending_tasks_count #=> Integer
7495
+ # resp.cluster.active_services_count #=> Integer
7496
+ # resp.cluster.statistics #=> Array
7497
+ # resp.cluster.statistics[0].name #=> String
7498
+ # resp.cluster.statistics[0].value #=> String
7499
+ # resp.cluster.tags #=> Array
7500
+ # resp.cluster.tags[0].key #=> String
7501
+ # resp.cluster.tags[0].value #=> String
7502
+ # resp.cluster.settings #=> Array
7503
+ # resp.cluster.settings[0].name #=> String, one of "containerInsights"
7504
+ # resp.cluster.settings[0].value #=> String
7505
+ # resp.cluster.capacity_providers #=> Array
7506
+ # resp.cluster.capacity_providers[0] #=> String
7507
+ # resp.cluster.default_capacity_provider_strategy #=> Array
7508
+ # resp.cluster.default_capacity_provider_strategy[0].capacity_provider #=> String
7509
+ # resp.cluster.default_capacity_provider_strategy[0].weight #=> Integer
7510
+ # resp.cluster.default_capacity_provider_strategy[0].base #=> Integer
7511
+ # resp.cluster.attachments #=> Array
7512
+ # resp.cluster.attachments[0].id #=> String
7513
+ # resp.cluster.attachments[0].type #=> String
7514
+ # resp.cluster.attachments[0].status #=> String
7515
+ # resp.cluster.attachments[0].details #=> Array
7516
+ # resp.cluster.attachments[0].details[0].name #=> String
7517
+ # resp.cluster.attachments[0].details[0].value #=> String
7518
+ # resp.cluster.attachments_status #=> String
7519
+ #
7520
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateCluster AWS API Documentation
7521
+ #
7522
+ # @overload update_cluster(params = {})
7523
+ # @param [Hash] params ({})
7524
+ def update_cluster(params = {}, options = {})
7525
+ req = build_request(:update_cluster, params)
7526
+ req.send_request(options)
7527
+ end
7528
+
7270
7529
  # Modifies the settings to use for a cluster.
7271
7530
  #
7272
7531
  # @option params [required, String] :cluster
@@ -7298,6 +7557,13 @@ module Aws::ECS
7298
7557
  #
7299
7558
  # resp.cluster.cluster_arn #=> String
7300
7559
  # resp.cluster.cluster_name #=> String
7560
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
7561
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
7562
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
7563
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
7564
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
7565
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
7566
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
7301
7567
  # resp.cluster.status #=> String
7302
7568
  # resp.cluster.registered_container_instances_count #=> Integer
7303
7569
  # resp.cluster.running_tasks_count #=> Integer
@@ -7343,15 +7609,25 @@ module Aws::ECS
7343
7609
  # instance was launched with the Amazon ECS-optimized AMI or another
7344
7610
  # operating system.
7345
7611
  #
7346
- # `UpdateContainerAgent` requires the Amazon ECS-optimized AMI or Amazon
7347
- # Linux with the `ecs-init` service installed and running. For help
7348
- # updating the Amazon ECS container agent on other operating systems,
7349
- # see [Manually Updating the Amazon ECS Container Agent][1] in the
7350
- # *Amazon Elastic Container Service Developer Guide*.
7612
+ # <note markdown="1"> The `UpdateContainerAgent` API isn't supported for container
7613
+ # instances using the Amazon ECS-optimized Amazon Linux 2 (arm64) AMI.
7614
+ # To update the container agent, you can update the `ecs-init` package
7615
+ # which will update the agent. For more information, see [Updating the
7616
+ # Amazon ECS container agent][1] in the *Amazon Elastic Container
7617
+ # Service Developer Guide*.
7351
7618
  #
7619
+ # </note>
7620
+ #
7621
+ # The `UpdateContainerAgent` API requires an Amazon ECS-optimized AMI or
7622
+ # Amazon Linux AMI with the `ecs-init` service installed and running.
7623
+ # For help updating the Amazon ECS container agent on other operating
7624
+ # systems, see [Manually updating the Amazon ECS container agent][2] in
7625
+ # the *Amazon Elastic Container Service Developer Guide*.
7352
7626
  #
7353
7627
  #
7354
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html#manually_update_agent
7628
+ #
7629
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/agent-update-ecs-ami.html
7630
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html#manually_update_agent
7355
7631
  #
7356
7632
  # @option params [String] :cluster
7357
7633
  # The short name or full Amazon Resource Name (ARN) of the cluster that
@@ -7752,8 +8028,7 @@ module Aws::ECS
7752
8028
  # the deployment and the ordering of stopping and starting tasks.
7753
8029
  #
7754
8030
  # @option params [Types::NetworkConfiguration] :network_configuration
7755
- # An object representing the network configuration for a task or
7756
- # service.
8031
+ # An object representing the network configuration for the service.
7757
8032
  #
7758
8033
  # @option params [Array<Types::PlacementConstraint>] :placement_constraints
7759
8034
  # An array of task placement constraint objects to update the service to
@@ -7807,6 +8082,13 @@ module Aws::ECS
7807
8082
  # prevent the ECS service scheduler from marking tasks as unhealthy and
7808
8083
  # stopping them before they have time to come up.
7809
8084
  #
8085
+ # @option params [Boolean] :enable_execute_command
8086
+ # If `true`, this enables execute command functionality on all task
8087
+ # containers.
8088
+ #
8089
+ # If you do not want to override the value that was set when the service
8090
+ # was created, you can set this to `null` when performing this action.
8091
+ #
7810
8092
  # @return [Types::UpdateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7811
8093
  #
7812
8094
  # * {Types::UpdateServiceResponse#service #service} => Types::Service
@@ -7882,6 +8164,7 @@ module Aws::ECS
7882
8164
  # platform_version: "String",
7883
8165
  # force_new_deployment: false,
7884
8166
  # health_check_grace_period_seconds: 1,
8167
+ # enable_execute_command: false,
7885
8168
  # })
7886
8169
  #
7887
8170
  # @example Response structure
@@ -7903,7 +8186,7 @@ module Aws::ECS
7903
8186
  # resp.service.desired_count #=> Integer
7904
8187
  # resp.service.running_count #=> Integer
7905
8188
  # resp.service.pending_count #=> Integer
7906
- # resp.service.launch_type #=> String, one of "EC2", "FARGATE"
8189
+ # resp.service.launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
7907
8190
  # resp.service.capacity_provider_strategy #=> Array
7908
8191
  # resp.service.capacity_provider_strategy[0].capacity_provider #=> String
7909
8192
  # resp.service.capacity_provider_strategy[0].weight #=> Integer
@@ -7928,7 +8211,7 @@ module Aws::ECS
7928
8211
  # resp.service.task_sets[0].running_count #=> Integer
7929
8212
  # resp.service.task_sets[0].created_at #=> Time
7930
8213
  # resp.service.task_sets[0].updated_at #=> Time
7931
- # resp.service.task_sets[0].launch_type #=> String, one of "EC2", "FARGATE"
8214
+ # resp.service.task_sets[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
7932
8215
  # resp.service.task_sets[0].capacity_provider_strategy #=> Array
7933
8216
  # resp.service.task_sets[0].capacity_provider_strategy[0].capacity_provider #=> String
7934
8217
  # resp.service.task_sets[0].capacity_provider_strategy[0].weight #=> Integer
@@ -7970,7 +8253,7 @@ module Aws::ECS
7970
8253
  # resp.service.deployments[0].capacity_provider_strategy[0].capacity_provider #=> String
7971
8254
  # resp.service.deployments[0].capacity_provider_strategy[0].weight #=> Integer
7972
8255
  # resp.service.deployments[0].capacity_provider_strategy[0].base #=> Integer
7973
- # resp.service.deployments[0].launch_type #=> String, one of "EC2", "FARGATE"
8256
+ # resp.service.deployments[0].launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
7974
8257
  # resp.service.deployments[0].platform_version #=> String
7975
8258
  # resp.service.deployments[0].network_configuration.awsvpc_configuration.subnets #=> Array
7976
8259
  # resp.service.deployments[0].network_configuration.awsvpc_configuration.subnets[0] #=> String
@@ -8005,6 +8288,7 @@ module Aws::ECS
8005
8288
  # resp.service.created_by #=> String
8006
8289
  # resp.service.enable_ecs_managed_tags #=> Boolean
8007
8290
  # resp.service.propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE"
8291
+ # resp.service.enable_execute_command #=> Boolean
8008
8292
  #
8009
8293
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateService AWS API Documentation
8010
8294
  #
@@ -8065,7 +8349,7 @@ module Aws::ECS
8065
8349
  # resp.task_set.running_count #=> Integer
8066
8350
  # resp.task_set.created_at #=> Time
8067
8351
  # resp.task_set.updated_at #=> Time
8068
- # resp.task_set.launch_type #=> String, one of "EC2", "FARGATE"
8352
+ # resp.task_set.launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
8069
8353
  # resp.task_set.capacity_provider_strategy #=> Array
8070
8354
  # resp.task_set.capacity_provider_strategy[0].capacity_provider #=> String
8071
8355
  # resp.task_set.capacity_provider_strategy[0].weight #=> Integer
@@ -8159,7 +8443,7 @@ module Aws::ECS
8159
8443
  # resp.task_set.running_count #=> Integer
8160
8444
  # resp.task_set.created_at #=> Time
8161
8445
  # resp.task_set.updated_at #=> Time
8162
- # resp.task_set.launch_type #=> String, one of "EC2", "FARGATE"
8446
+ # resp.task_set.launch_type #=> String, one of "EC2", "FARGATE", "EXTERNAL"
8163
8447
  # resp.task_set.capacity_provider_strategy #=> Array
8164
8448
  # resp.task_set.capacity_provider_strategy[0].capacity_provider #=> String
8165
8449
  # resp.task_set.capacity_provider_strategy[0].weight #=> Integer
@@ -8210,7 +8494,7 @@ module Aws::ECS
8210
8494
  params: params,
8211
8495
  config: config)
8212
8496
  context[:gem_name] = 'aws-sdk-ecs'
8213
- context[:gem_version] = '1.75.0'
8497
+ context[:gem_version] = '1.80.0'
8214
8498
  Seahorse::Client::Request.new(handlers, context)
8215
8499
  end
8216
8500