aws-sdk-ecs 1.75.0 → 1.76.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: 174825452c22c1558f83709cc3f9317ed5f73b1c95dc292969fd152e3a395d3c
4
+ data.tar.gz: 98ada088a63296a732cf7ea0ef75d6538be65813d4d1eeb1140be84258ae8960
5
5
  SHA512:
6
- metadata.gz: 75fdfcc378063165f8a7bf39ceefb8b8f1af205496210ae57203d85fa39efa5a998818526d7633e3d481e42c1c02f4b5fdd9ada33da8433d277f7761ee1f6152
7
- data.tar.gz: a7480a0be0bc2edf3276420c86ff71fc54907b32795b0b0aafb70e5b3cdf60f20899251a5ab7b9d175d597b3f8f58c4110372b885370540ccafa7494ee499cbb
6
+ metadata.gz: 21b72b3e7879f9fec814b1f00dfedf70782b4be00c53bfdce1da72f1d272abc927e32a80f248955a900bec8d3e6bb7663b1521b859b844c8d2968ceddc215749
7
+ data.tar.gz: faf85ea430af07628e1e91980912e7926b7d4c9345b06218a9c8b539d5e7d4d9c081f96eef286d53d6135b766739fbc7b4a632396a7c134855ca78c49283548f
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.76.0 (2021-03-15)
5
+ ------------------
6
+
7
+ * 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
8
+
4
9
  1.75.0 (2021-03-10)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.75.0
1
+ 1.76.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.76.0'
53
53
 
54
54
  end
@@ -499,14 +499,20 @@ module Aws::ECS
499
499
  # specified, it will override the `containerInsights` value set with
500
500
  # PutAccountSetting or PutAccountSettingDefault.
501
501
  #
502
+ # @option params [Types::ClusterConfiguration] :configuration
503
+ # The execute command configuration for the cluster.
504
+ #
502
505
  # @option params [Array<String>] :capacity_providers
503
506
  # The short name of one or more capacity providers to associate with the
504
- # cluster.
507
+ # cluster. A capacity provider must be associated with a cluster before
508
+ # it can be included as part of the default capacity provider strategy
509
+ # of the cluster or used in a capacity provider strategy when calling
510
+ # the CreateService or RunTask actions.
505
511
  #
506
512
  # If specifying a capacity provider that uses an Auto Scaling group, the
507
513
  # 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.
514
+ # with another cluster. New Auto Scaling group capacity providers can be
515
+ # created with the CreateCapacityProvider API operation.
510
516
  #
511
517
  # To use a AWS Fargate capacity provider, specify either the `FARGATE`
512
518
  # or `FARGATE_SPOT` capacity providers. The AWS Fargate capacity
@@ -518,27 +524,11 @@ module Aws::ECS
518
524
  # is created.
519
525
  #
520
526
  # @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.
527
+ # The capacity provider strategy to set as the default for the cluster.
528
+ # When a default capacity provider strategy is set for a cluster, when
529
+ # calling the RunTask or CreateService APIs wtih no capacity provider
530
+ # strategy or launch type specified, the default capacity provider
531
+ # strategy for the cluster is used.
542
532
  #
543
533
  # If a default capacity provider strategy is not defined for a cluster
544
534
  # during creation, it can be defined later with the
@@ -586,6 +576,19 @@ module Aws::ECS
586
576
  # value: "String",
587
577
  # },
588
578
  # ],
579
+ # configuration: {
580
+ # execute_command_configuration: {
581
+ # kms_key_id: "String",
582
+ # logging: "NONE", # accepts NONE, DEFAULT, OVERRIDE
583
+ # log_configuration: {
584
+ # cloud_watch_log_group_name: "String",
585
+ # cloud_watch_encryption_enabled: false,
586
+ # s3_bucket_name: "String",
587
+ # s3_encryption_enabled: false,
588
+ # s3_key_prefix: "String",
589
+ # },
590
+ # },
591
+ # },
589
592
  # capacity_providers: ["String"],
590
593
  # default_capacity_provider_strategy: [
591
594
  # {
@@ -600,6 +603,13 @@ module Aws::ECS
600
603
  #
601
604
  # resp.cluster.cluster_arn #=> String
602
605
  # resp.cluster.cluster_name #=> String
606
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
607
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
608
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
609
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
610
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
611
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
612
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
603
613
  # resp.cluster.status #=> String
604
614
  # resp.cluster.registered_container_instances_count #=> Integer
605
615
  # resp.cluster.running_tasks_count #=> Integer
@@ -790,7 +800,7 @@ module Aws::ECS
790
800
  # Load Balancer, you must specify one or more target group ARNs to
791
801
  # attach to the service. The service-linked role is required for
792
802
  # services that make use of multiple target groups. For more
793
- # information, see [Using Service-Linked Roles for Amazon ECS][2] in the
803
+ # information, see [Using service-linked roles for Amazon ECS][2] in the
794
804
  # *Amazon Elastic Container Service Developer Guide*.
795
805
  #
796
806
  # If the service is using the `CODE_DEPLOY` deployment controller, the
@@ -841,11 +851,11 @@ module Aws::ECS
841
851
  #
842
852
  # @option params [Array<Types::ServiceRegistry>] :service_registries
843
853
  # The details of the service discovery registries to assign to this
844
- # service. For more information, see [Service Discovery][1].
854
+ # service. For more information, see [Service discovery][1].
845
855
  #
846
856
  # <note markdown="1"> Service discovery is supported for Fargate tasks if you are using
847
857
  # platform version v1.1.0 or later. For more information, see [AWS
848
- # Fargate Platform Versions][2].
858
+ # Fargate platform versions][2].
849
859
  #
850
860
  # </note>
851
861
  #
@@ -867,9 +877,16 @@ module Aws::ECS
867
877
  # idempotency of the request. Up to 32 ASCII characters are allowed.
868
878
  #
869
879
  # @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
872
- # Service Developer Guide*.
880
+ # The launch type on which to run your service. The accepted values are
881
+ # `FARGATE` and `EC2`. For more information, see [Amazon ECS launch
882
+ # types][1] in the *Amazon Elastic Container Service Developer Guide*.
883
+ #
884
+ # When a value of `FARGATE` is specified, your tasks are launched on AWS
885
+ # Fargate On-Demand infrastructure. To use Fargate Spot, you must use a
886
+ # capacity provider strategy with the `FARGATE_SPOT` capacity provider.
887
+ #
888
+ # When a value of `EC2` is specified, your tasks are launched on Amazon
889
+ # EC2 instances registered to your cluster.
873
890
  #
874
891
  # If a `launchType` is specified, the `capacityProviderStrategy`
875
892
  # parameter must be omitted.
@@ -881,37 +898,17 @@ module Aws::ECS
881
898
  # @option params [Array<Types::CapacityProviderStrategyItem>] :capacity_provider_strategy
882
899
  # The capacity provider strategy to use for the service.
883
900
  #
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
901
  # If a `capacityProviderStrategy` is specified, the `launchType`
892
902
  # parameter must be omitted. If no `capacityProviderStrategy` or
893
903
  # `launchType` is specified, the `defaultCapacityProviderStrategy` for
894
904
  # the cluster is used.
895
905
  #
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
906
  # @option params [String] :platform_version
910
907
  # The platform version that your tasks in the service are running on. A
911
908
  # platform version is specified only for tasks using the Fargate launch
912
909
  # 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
910
+ # by default. For more information, see [AWS Fargate platform
911
+ # versions][1] in the *Amazon Elastic Container Service Developer
915
912
  # Guide*.
916
913
  #
917
914
  #
@@ -933,14 +930,14 @@ module Aws::ECS
933
930
  # configured to use service discovery, an external deployment
934
931
  # controller, multiple target groups, or Elastic Inference accelerators
935
932
  # 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
933
+ # information, see [Using service-linked roles for Amazon ECS][1] in the
937
934
  # *Amazon Elastic Container Service Developer Guide*.
938
935
  #
939
936
  # If your specified role has a path other than `/`, then you must either
940
937
  # specify the full role ARN (this is recommended) or prefix the role
941
938
  # name with the path. For example, if a role with the name `bar` has a
942
939
  # 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
940
+ # For more information, see [Friendly names and paths][2] in the *IAM
944
941
  # User Guide*.
945
942
  #
946
943
  #
@@ -966,7 +963,7 @@ module Aws::ECS
966
963
  # The network configuration for the service. This parameter is required
967
964
  # for task definitions that use the `awsvpc` network mode to receive
968
965
  # their own elastic network interface, and it is not supported for other
969
- # network modes. For more information, see [Task Networking][1] in the
966
+ # network modes. For more information, see [Task networking][1] in the
970
967
  # *Amazon Elastic Container Service Developer Guide*.
971
968
  #
972
969
  #
@@ -1071,6 +1068,11 @@ module Aws::ECS
1071
1068
  # within the service during service creation. To add tags to a task
1072
1069
  # after service creation, use the TagResource API action.
1073
1070
  #
1071
+ # @option params [Boolean] :enable_execute_command
1072
+ # Whether or not the execute command functionality is enabled for the
1073
+ # service. If `true`, this enables execute command functionality on all
1074
+ # containers in the service tasks.
1075
+ #
1074
1076
  # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1075
1077
  #
1076
1078
  # * {Types::CreateServiceResponse#service #service} => Types::Service
@@ -1267,6 +1269,7 @@ module Aws::ECS
1267
1269
  # ],
1268
1270
  # enable_ecs_managed_tags: false,
1269
1271
  # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION, SERVICE
1272
+ # enable_execute_command: false,
1270
1273
  # })
1271
1274
  #
1272
1275
  # @example Response structure
@@ -1390,6 +1393,7 @@ module Aws::ECS
1390
1393
  # resp.service.created_by #=> String
1391
1394
  # resp.service.enable_ecs_managed_tags #=> Boolean
1392
1395
  # resp.service.propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE"
1396
+ # resp.service.enable_execute_command #=> Boolean
1393
1397
  #
1394
1398
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateService AWS API Documentation
1395
1399
  #
@@ -1881,6 +1885,13 @@ module Aws::ECS
1881
1885
  #
1882
1886
  # resp.cluster.cluster_arn #=> String
1883
1887
  # resp.cluster.cluster_name #=> String
1888
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
1889
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
1890
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
1891
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
1892
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
1893
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
1894
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
1884
1895
  # resp.cluster.status #=> String
1885
1896
  # resp.cluster.registered_container_instances_count #=> Integer
1886
1897
  # resp.cluster.running_tasks_count #=> Integer
@@ -2102,6 +2113,7 @@ module Aws::ECS
2102
2113
  # resp.service.created_by #=> String
2103
2114
  # resp.service.enable_ecs_managed_tags #=> Boolean
2104
2115
  # resp.service.propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE"
2116
+ # resp.service.enable_execute_command #=> Boolean
2105
2117
  #
2106
2118
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeleteService AWS API Documentation
2107
2119
  #
@@ -2695,7 +2707,7 @@ module Aws::ECS
2695
2707
  #
2696
2708
  # resp = client.describe_clusters({
2697
2709
  # clusters: ["String"],
2698
- # include: ["ATTACHMENTS"], # accepts ATTACHMENTS, SETTINGS, STATISTICS, TAGS
2710
+ # include: ["ATTACHMENTS"], # accepts ATTACHMENTS, CONFIGURATIONS, SETTINGS, STATISTICS, TAGS
2699
2711
  # })
2700
2712
  #
2701
2713
  # @example Response structure
@@ -2703,6 +2715,13 @@ module Aws::ECS
2703
2715
  # resp.clusters #=> Array
2704
2716
  # resp.clusters[0].cluster_arn #=> String
2705
2717
  # resp.clusters[0].cluster_name #=> String
2718
+ # resp.clusters[0].configuration.execute_command_configuration.kms_key_id #=> String
2719
+ # resp.clusters[0].configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
2720
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
2721
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
2722
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
2723
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
2724
+ # resp.clusters[0].configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
2706
2725
  # resp.clusters[0].status #=> String
2707
2726
  # resp.clusters[0].registered_container_instances_count #=> Integer
2708
2727
  # resp.clusters[0].running_tasks_count #=> Integer
@@ -3137,6 +3156,7 @@ module Aws::ECS
3137
3156
  # resp.services[0].created_by #=> String
3138
3157
  # resp.services[0].enable_ecs_managed_tags #=> Boolean
3139
3158
  # resp.services[0].propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE"
3159
+ # resp.services[0].enable_execute_command #=> Boolean
3140
3160
  # resp.failures #=> Array
3141
3161
  # resp.failures[0].arn #=> String
3142
3162
  # resp.failures[0].reason #=> String
@@ -3640,6 +3660,11 @@ module Aws::ECS
3640
3660
  # resp.tasks[0].containers[0].network_interfaces[0].private_ipv_4_address #=> String
3641
3661
  # resp.tasks[0].containers[0].network_interfaces[0].ipv6_address #=> String
3642
3662
  # resp.tasks[0].containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
3663
+ # resp.tasks[0].containers[0].managed_agents #=> Array
3664
+ # resp.tasks[0].containers[0].managed_agents[0].last_started_at #=> Time
3665
+ # resp.tasks[0].containers[0].managed_agents[0].name #=> String, one of "ExecuteCommandAgent"
3666
+ # resp.tasks[0].containers[0].managed_agents[0].reason #=> String
3667
+ # resp.tasks[0].containers[0].managed_agents[0].last_status #=> String
3643
3668
  # resp.tasks[0].containers[0].cpu #=> String
3644
3669
  # resp.tasks[0].containers[0].memory #=> String
3645
3670
  # resp.tasks[0].containers[0].memory_reservation #=> String
@@ -3648,6 +3673,7 @@ module Aws::ECS
3648
3673
  # resp.tasks[0].cpu #=> String
3649
3674
  # resp.tasks[0].created_at #=> Time
3650
3675
  # resp.tasks[0].desired_status #=> String
3676
+ # resp.tasks[0].enable_execute_command #=> Boolean
3651
3677
  # resp.tasks[0].execution_stopped_at #=> Time
3652
3678
  # resp.tasks[0].group #=> String
3653
3679
  # resp.tasks[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
@@ -3760,6 +3786,66 @@ module Aws::ECS
3760
3786
  req.send_request(options)
3761
3787
  end
3762
3788
 
3789
+ # Runs a command remotely on a container within a task.
3790
+ #
3791
+ # @option params [String] :cluster
3792
+ # The Amazon Resource Name (ARN) or short name of the cluster the task
3793
+ # is running in. If you do not specify a cluster, the default cluster is
3794
+ # assumed.
3795
+ #
3796
+ # @option params [String] :container
3797
+ # The name of the container to execute the command on. A container name
3798
+ # only needs to be specified for tasks containing multiple containers.
3799
+ #
3800
+ # @option params [required, String] :command
3801
+ # The command to run on the container.
3802
+ #
3803
+ # @option params [required, Boolean] :interactive
3804
+ # Use this flag to run your command in interactive mode.
3805
+ #
3806
+ # @option params [required, String] :task
3807
+ # The Amazon Resource Name (ARN) or ID of the task the container is part
3808
+ # of.
3809
+ #
3810
+ # @return [Types::ExecuteCommandResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3811
+ #
3812
+ # * {Types::ExecuteCommandResponse#cluster_arn #cluster_arn} => String
3813
+ # * {Types::ExecuteCommandResponse#container_arn #container_arn} => String
3814
+ # * {Types::ExecuteCommandResponse#container_name #container_name} => String
3815
+ # * {Types::ExecuteCommandResponse#interactive #interactive} => Boolean
3816
+ # * {Types::ExecuteCommandResponse#session #session} => Types::Session
3817
+ # * {Types::ExecuteCommandResponse#task_arn #task_arn} => String
3818
+ #
3819
+ # @example Request syntax with placeholder values
3820
+ #
3821
+ # resp = client.execute_command({
3822
+ # cluster: "String",
3823
+ # container: "String",
3824
+ # command: "String", # required
3825
+ # interactive: false, # required
3826
+ # task: "String", # required
3827
+ # })
3828
+ #
3829
+ # @example Response structure
3830
+ #
3831
+ # resp.cluster_arn #=> String
3832
+ # resp.container_arn #=> String
3833
+ # resp.container_name #=> String
3834
+ # resp.interactive #=> Boolean
3835
+ # resp.session.session_id #=> String
3836
+ # resp.session.stream_url #=> String
3837
+ # resp.session.token_value #=> String
3838
+ # resp.task_arn #=> String
3839
+ #
3840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ExecuteCommand AWS API Documentation
3841
+ #
3842
+ # @overload execute_command(params = {})
3843
+ # @param [Hash] params ({})
3844
+ def execute_command(params = {}, options = {})
3845
+ req = build_request(:execute_command, params)
3846
+ req.send_request(options)
3847
+ end
3848
+
3763
3849
  # Lists the account settings for a specified principal.
3764
3850
  #
3765
3851
  # @option params [String] :name
@@ -5005,6 +5091,13 @@ module Aws::ECS
5005
5091
  #
5006
5092
  # resp.cluster.cluster_arn #=> String
5007
5093
  # resp.cluster.cluster_name #=> String
5094
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
5095
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
5096
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
5097
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
5098
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
5099
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
5100
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
5008
5101
  # resp.cluster.status #=> String
5009
5102
  # resp.cluster.registered_container_instances_count #=> Integer
5010
5103
  # resp.cluster.running_tasks_count #=> Integer
@@ -5350,9 +5443,9 @@ module Aws::ECS
5350
5443
  #
5351
5444
  # @option params [Array<String>] :requires_compatibilities
5352
5445
  # 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`.
5446
+ # definition against. A client exception is returned if the task
5447
+ # definition doesn't validate against the compatibilities specified. If
5448
+ # no value is specified, the parameter is omitted from the response.
5356
5449
  #
5357
5450
  # @option params [String] :cpu
5358
5451
  # The number of CPU units used by the task. It can be expressed as an
@@ -5468,8 +5561,8 @@ module Aws::ECS
5468
5561
  # risk of undesired process namespace expose. For more information, see
5469
5562
  # [Docker security][2].
5470
5563
  #
5471
- # <note markdown="1"> This parameter is not supported for Windows containers or tasks using
5472
- # the Fargate launch type.
5564
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks run on
5565
+ # AWS Fargate.
5473
5566
  #
5474
5567
  # </note>
5475
5568
  #
@@ -5507,8 +5600,8 @@ module Aws::ECS
5507
5600
  # * For tasks that use the `task` IPC mode, IPC namespace related
5508
5601
  # `systemControls` will apply to all containers within a task.
5509
5602
  #
5510
- # <note markdown="1"> This parameter is not supported for Windows containers or tasks using
5511
- # the Fargate launch type.
5603
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks run on
5604
+ # AWS Fargate.
5512
5605
  #
5513
5606
  # </note>
5514
5607
  #
@@ -6037,31 +6130,11 @@ module Aws::ECS
6037
6130
  # @option params [Array<Types::CapacityProviderStrategyItem>] :capacity_provider_strategy
6038
6131
  # The capacity provider strategy to use for the task.
6039
6132
  #
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
6133
  # If a `capacityProviderStrategy` is specified, the `launchType`
6048
6134
  # parameter must be omitted. If no `capacityProviderStrategy` or
6049
6135
  # `launchType` is specified, the `defaultCapacityProviderStrategy` for
6050
6136
  # the cluster is used.
6051
6137
  #
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
6138
  # @option params [String] :cluster
6066
6139
  # The short name or full Amazon Resource Name (ARN) of the cluster on
6067
6140
  # which to run your task. If you do not specify a cluster, the default
@@ -6080,15 +6153,27 @@ module Aws::ECS
6080
6153
  #
6081
6154
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html
6082
6155
  #
6156
+ # @option params [Boolean] :enable_execute_command
6157
+ # Whether or not to enable the execute command functionality for the
6158
+ # containers in this task. If `true`, this enables execute command
6159
+ # functionality on all containers in the task.
6160
+ #
6083
6161
  # @option params [String] :group
6084
6162
  # The name of the task group to associate with the task. The default
6085
6163
  # value is the family name of the task definition (for example,
6086
6164
  # family:my-family-name).
6087
6165
  #
6088
6166
  # @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*.
6167
+ # The launch type on which to run your task. The accepted values are
6168
+ # `FARGATE` and `EC2`. For more information, see [Amazon ECS Launch
6169
+ # Types][1] in the *Amazon Elastic Container Service Developer Guide*.
6170
+ #
6171
+ # When a value of `FARGATE` is specified, your tasks are launched on AWS
6172
+ # Fargate On-Demand infrastructure. To use Fargate Spot, you must use a
6173
+ # capacity provider strategy with the `FARGATE_SPOT` capacity provider.
6174
+ #
6175
+ # When a value of `EC2` is specified, your tasks are launched on Amazon
6176
+ # EC2 instances registered to your cluster.
6092
6177
  #
6093
6178
  # If a `launchType` is specified, the `capacityProviderStrategy`
6094
6179
  # parameter must be omitted.
@@ -6260,6 +6345,7 @@ module Aws::ECS
6260
6345
  # cluster: "String",
6261
6346
  # count: 1,
6262
6347
  # enable_ecs_managed_tags: false,
6348
+ # enable_execute_command: false,
6263
6349
  # group: "String",
6264
6350
  # launch_type: "EC2", # accepts EC2, FARGATE
6265
6351
  # network_configuration: {
@@ -6374,6 +6460,11 @@ module Aws::ECS
6374
6460
  # resp.tasks[0].containers[0].network_interfaces[0].private_ipv_4_address #=> String
6375
6461
  # resp.tasks[0].containers[0].network_interfaces[0].ipv6_address #=> String
6376
6462
  # resp.tasks[0].containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
6463
+ # resp.tasks[0].containers[0].managed_agents #=> Array
6464
+ # resp.tasks[0].containers[0].managed_agents[0].last_started_at #=> Time
6465
+ # resp.tasks[0].containers[0].managed_agents[0].name #=> String, one of "ExecuteCommandAgent"
6466
+ # resp.tasks[0].containers[0].managed_agents[0].reason #=> String
6467
+ # resp.tasks[0].containers[0].managed_agents[0].last_status #=> String
6377
6468
  # resp.tasks[0].containers[0].cpu #=> String
6378
6469
  # resp.tasks[0].containers[0].memory #=> String
6379
6470
  # resp.tasks[0].containers[0].memory_reservation #=> String
@@ -6382,6 +6473,7 @@ module Aws::ECS
6382
6473
  # resp.tasks[0].cpu #=> String
6383
6474
  # resp.tasks[0].created_at #=> Time
6384
6475
  # resp.tasks[0].desired_status #=> String
6476
+ # resp.tasks[0].enable_execute_command #=> Boolean
6385
6477
  # resp.tasks[0].execution_stopped_at #=> Time
6386
6478
  # resp.tasks[0].group #=> String
6387
6479
  # resp.tasks[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
@@ -6473,6 +6565,11 @@ module Aws::ECS
6473
6565
  #
6474
6566
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html
6475
6567
  #
6568
+ # @option params [Boolean] :enable_execute_command
6569
+ # Whether or not the execute command functionality is enabled for the
6570
+ # task. If `true`, this enables execute command functionality on all
6571
+ # containers in the task.
6572
+ #
6476
6573
  # @option params [String] :group
6477
6574
  # The name of the task group to associate with the task. The default
6478
6575
  # value is the family name of the task definition (for example,
@@ -6564,6 +6661,7 @@ module Aws::ECS
6564
6661
  # cluster: "String",
6565
6662
  # container_instances: ["String"], # required
6566
6663
  # enable_ecs_managed_tags: false,
6664
+ # enable_execute_command: false,
6567
6665
  # group: "String",
6568
6666
  # network_configuration: {
6569
6667
  # awsvpc_configuration: {
@@ -6664,6 +6762,11 @@ module Aws::ECS
6664
6762
  # resp.tasks[0].containers[0].network_interfaces[0].private_ipv_4_address #=> String
6665
6763
  # resp.tasks[0].containers[0].network_interfaces[0].ipv6_address #=> String
6666
6764
  # resp.tasks[0].containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
6765
+ # resp.tasks[0].containers[0].managed_agents #=> Array
6766
+ # resp.tasks[0].containers[0].managed_agents[0].last_started_at #=> Time
6767
+ # resp.tasks[0].containers[0].managed_agents[0].name #=> String, one of "ExecuteCommandAgent"
6768
+ # resp.tasks[0].containers[0].managed_agents[0].reason #=> String
6769
+ # resp.tasks[0].containers[0].managed_agents[0].last_status #=> String
6667
6770
  # resp.tasks[0].containers[0].cpu #=> String
6668
6771
  # resp.tasks[0].containers[0].memory #=> String
6669
6772
  # resp.tasks[0].containers[0].memory_reservation #=> String
@@ -6672,6 +6775,7 @@ module Aws::ECS
6672
6775
  # resp.tasks[0].cpu #=> String
6673
6776
  # resp.tasks[0].created_at #=> Time
6674
6777
  # resp.tasks[0].desired_status #=> String
6778
+ # resp.tasks[0].enable_execute_command #=> Boolean
6675
6779
  # resp.tasks[0].execution_stopped_at #=> Time
6676
6780
  # resp.tasks[0].group #=> String
6677
6781
  # resp.tasks[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
@@ -6821,6 +6925,11 @@ module Aws::ECS
6821
6925
  # resp.task.containers[0].network_interfaces[0].private_ipv_4_address #=> String
6822
6926
  # resp.task.containers[0].network_interfaces[0].ipv6_address #=> String
6823
6927
  # resp.task.containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
6928
+ # resp.task.containers[0].managed_agents #=> Array
6929
+ # resp.task.containers[0].managed_agents[0].last_started_at #=> Time
6930
+ # resp.task.containers[0].managed_agents[0].name #=> String, one of "ExecuteCommandAgent"
6931
+ # resp.task.containers[0].managed_agents[0].reason #=> String
6932
+ # resp.task.containers[0].managed_agents[0].last_status #=> String
6824
6933
  # resp.task.containers[0].cpu #=> String
6825
6934
  # resp.task.containers[0].memory #=> String
6826
6935
  # resp.task.containers[0].memory_reservation #=> String
@@ -6829,6 +6938,7 @@ module Aws::ECS
6829
6938
  # resp.task.cpu #=> String
6830
6939
  # resp.task.created_at #=> Time
6831
6940
  # resp.task.desired_status #=> String
6941
+ # resp.task.enable_execute_command #=> Boolean
6832
6942
  # resp.task.execution_stopped_at #=> Time
6833
6943
  # resp.task.group #=> String
6834
6944
  # resp.task.health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
@@ -7024,6 +7134,9 @@ module Aws::ECS
7024
7134
  # @option params [Array<Types::AttachmentStateChange>] :attachments
7025
7135
  # Any attachments associated with the state change request.
7026
7136
  #
7137
+ # @option params [Array<Types::ManagedAgentStateChange>] :managed_agents
7138
+ # The details for the managed agent associated with the task.
7139
+ #
7027
7140
  # @option params [Time,DateTime,Date,Integer,String] :pull_started_at
7028
7141
  # The Unix timestamp for when the container image pull began.
7029
7142
  #
@@ -7068,6 +7181,14 @@ module Aws::ECS
7068
7181
  # status: "String", # required
7069
7182
  # },
7070
7183
  # ],
7184
+ # managed_agents: [
7185
+ # {
7186
+ # container_name: "String", # required
7187
+ # managed_agent_name: "ExecuteCommandAgent", # required, accepts ExecuteCommandAgent
7188
+ # status: "String", # required
7189
+ # reason: "String",
7190
+ # },
7191
+ # ],
7071
7192
  # pull_started_at: Time.now,
7072
7193
  # pull_stopped_at: Time.now,
7073
7194
  # execution_stopped_at: Time.now,
@@ -7267,6 +7388,95 @@ module Aws::ECS
7267
7388
  req.send_request(options)
7268
7389
  end
7269
7390
 
7391
+ # Updates the cluster.
7392
+ #
7393
+ # @option params [required, String] :cluster
7394
+ # The name of the cluster to modify the settings for.
7395
+ #
7396
+ # @option params [Array<Types::ClusterSetting>] :settings
7397
+ # The cluster settings for your cluster.
7398
+ #
7399
+ # @option params [Types::ClusterConfiguration] :configuration
7400
+ # The execute command configuration for the cluster.
7401
+ #
7402
+ # @return [Types::UpdateClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7403
+ #
7404
+ # * {Types::UpdateClusterResponse#cluster #cluster} => Types::Cluster
7405
+ #
7406
+ # @example Request syntax with placeholder values
7407
+ #
7408
+ # resp = client.update_cluster({
7409
+ # cluster: "String", # required
7410
+ # settings: [
7411
+ # {
7412
+ # name: "containerInsights", # accepts containerInsights
7413
+ # value: "String",
7414
+ # },
7415
+ # ],
7416
+ # configuration: {
7417
+ # execute_command_configuration: {
7418
+ # kms_key_id: "String",
7419
+ # logging: "NONE", # accepts NONE, DEFAULT, OVERRIDE
7420
+ # log_configuration: {
7421
+ # cloud_watch_log_group_name: "String",
7422
+ # cloud_watch_encryption_enabled: false,
7423
+ # s3_bucket_name: "String",
7424
+ # s3_encryption_enabled: false,
7425
+ # s3_key_prefix: "String",
7426
+ # },
7427
+ # },
7428
+ # },
7429
+ # })
7430
+ #
7431
+ # @example Response structure
7432
+ #
7433
+ # resp.cluster.cluster_arn #=> String
7434
+ # resp.cluster.cluster_name #=> String
7435
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
7436
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
7437
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
7438
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
7439
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
7440
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
7441
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
7442
+ # resp.cluster.status #=> String
7443
+ # resp.cluster.registered_container_instances_count #=> Integer
7444
+ # resp.cluster.running_tasks_count #=> Integer
7445
+ # resp.cluster.pending_tasks_count #=> Integer
7446
+ # resp.cluster.active_services_count #=> Integer
7447
+ # resp.cluster.statistics #=> Array
7448
+ # resp.cluster.statistics[0].name #=> String
7449
+ # resp.cluster.statistics[0].value #=> String
7450
+ # resp.cluster.tags #=> Array
7451
+ # resp.cluster.tags[0].key #=> String
7452
+ # resp.cluster.tags[0].value #=> String
7453
+ # resp.cluster.settings #=> Array
7454
+ # resp.cluster.settings[0].name #=> String, one of "containerInsights"
7455
+ # resp.cluster.settings[0].value #=> String
7456
+ # resp.cluster.capacity_providers #=> Array
7457
+ # resp.cluster.capacity_providers[0] #=> String
7458
+ # resp.cluster.default_capacity_provider_strategy #=> Array
7459
+ # resp.cluster.default_capacity_provider_strategy[0].capacity_provider #=> String
7460
+ # resp.cluster.default_capacity_provider_strategy[0].weight #=> Integer
7461
+ # resp.cluster.default_capacity_provider_strategy[0].base #=> Integer
7462
+ # resp.cluster.attachments #=> Array
7463
+ # resp.cluster.attachments[0].id #=> String
7464
+ # resp.cluster.attachments[0].type #=> String
7465
+ # resp.cluster.attachments[0].status #=> String
7466
+ # resp.cluster.attachments[0].details #=> Array
7467
+ # resp.cluster.attachments[0].details[0].name #=> String
7468
+ # resp.cluster.attachments[0].details[0].value #=> String
7469
+ # resp.cluster.attachments_status #=> String
7470
+ #
7471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateCluster AWS API Documentation
7472
+ #
7473
+ # @overload update_cluster(params = {})
7474
+ # @param [Hash] params ({})
7475
+ def update_cluster(params = {}, options = {})
7476
+ req = build_request(:update_cluster, params)
7477
+ req.send_request(options)
7478
+ end
7479
+
7270
7480
  # Modifies the settings to use for a cluster.
7271
7481
  #
7272
7482
  # @option params [required, String] :cluster
@@ -7298,6 +7508,13 @@ module Aws::ECS
7298
7508
  #
7299
7509
  # resp.cluster.cluster_arn #=> String
7300
7510
  # resp.cluster.cluster_name #=> String
7511
+ # resp.cluster.configuration.execute_command_configuration.kms_key_id #=> String
7512
+ # resp.cluster.configuration.execute_command_configuration.logging #=> String, one of "NONE", "DEFAULT", "OVERRIDE"
7513
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_log_group_name #=> String
7514
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.cloud_watch_encryption_enabled #=> Boolean
7515
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_bucket_name #=> String
7516
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_encryption_enabled #=> Boolean
7517
+ # resp.cluster.configuration.execute_command_configuration.log_configuration.s3_key_prefix #=> String
7301
7518
  # resp.cluster.status #=> String
7302
7519
  # resp.cluster.registered_container_instances_count #=> Integer
7303
7520
  # resp.cluster.running_tasks_count #=> Integer
@@ -7807,6 +8024,13 @@ module Aws::ECS
7807
8024
  # prevent the ECS service scheduler from marking tasks as unhealthy and
7808
8025
  # stopping them before they have time to come up.
7809
8026
  #
8027
+ # @option params [Boolean] :enable_execute_command
8028
+ # If `true`, this enables execute command functionality on all task
8029
+ # containers.
8030
+ #
8031
+ # If you do not want to override the value that was set when the service
8032
+ # was created, you can set this to `null` when performing this action.
8033
+ #
7810
8034
  # @return [Types::UpdateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7811
8035
  #
7812
8036
  # * {Types::UpdateServiceResponse#service #service} => Types::Service
@@ -7882,6 +8106,7 @@ module Aws::ECS
7882
8106
  # platform_version: "String",
7883
8107
  # force_new_deployment: false,
7884
8108
  # health_check_grace_period_seconds: 1,
8109
+ # enable_execute_command: false,
7885
8110
  # })
7886
8111
  #
7887
8112
  # @example Response structure
@@ -8005,6 +8230,7 @@ module Aws::ECS
8005
8230
  # resp.service.created_by #=> String
8006
8231
  # resp.service.enable_ecs_managed_tags #=> Boolean
8007
8232
  # resp.service.propagate_tags #=> String, one of "TASK_DEFINITION", "SERVICE"
8233
+ # resp.service.enable_execute_command #=> Boolean
8008
8234
  #
8009
8235
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateService AWS API Documentation
8010
8236
  #
@@ -8210,7 +8436,7 @@ module Aws::ECS
8210
8436
  params: params,
8211
8437
  config: config)
8212
8438
  context[:gem_name] = 'aws-sdk-ecs'
8213
- context[:gem_version] = '1.75.0'
8439
+ context[:gem_version] = '1.76.0'
8214
8440
  Seahorse::Client::Request.new(handlers, context)
8215
8441
  end
8216
8442