aws-sdk-ecs 1.75.0 → 1.80.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: 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