aws-sdk-ecs 1.167.0 → 1.169.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: edda24a27897186dd3bc79f07a068ce9c96d495845a7dd3f8aed949b19a94001
4
- data.tar.gz: ab9a6237522618405f1aacee49e08e2d097bdee2888da5b8fd672ec480111c05
3
+ metadata.gz: 30fac8616313be6b5ff15e2f15998e16eebfa2a3a54c42bd189f583911f5e42f
4
+ data.tar.gz: d4fb4e9ed2ea70e2107f264b4798194971becdf92dde3f69f729e729b5c8c80c
5
5
  SHA512:
6
- metadata.gz: e80cd0231e6f1319f8f51dd26526d65d1da05c2aee29ac2c1f878dc06c623a2d149930c0e8317e1e1e3a366f6655063311bad97e3e5d5db6e5e5b53c520c6235
7
- data.tar.gz: 69168e6e336bacb3ca9db8dddb5ce881e9a838fc9a064e242c07d575c024121e925273a35eff11a0a658c3eecd7c9a03ffe3c60ab054f9dc2d0bae56627d35bc
6
+ metadata.gz: baabe262a4076a5ef4c54cd38d09aa076f83ce61056da35b9b03f54253e18aae365cbe9f88a42834506ee3bc1e4a74f2ca78349d3251446387bd9ddc218cf9a1
7
+ data.tar.gz: 12d2dbb5c31e2cd65a058fcb045c28b10d38781e277a79d00839595dd3d77262668fec76b5006949d10860d313f238f575db430c4f93a3b5b89e539adc0e371c
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.169.0 (2024-11-19)
5
+ ------------------
6
+
7
+ * Feature - This release introduces support for configuring the version consistency feature for individual containers defined within a task definition. The configuration allows to specify whether ECS should resolve the container image tag specified in the container definition to an image digest.
8
+
9
+ 1.168.0 (2024-11-18)
10
+ ------------------
11
+
12
+ * Feature - This release adds support for adding VPC Lattice configurations in ECS CreateService/UpdateService APIs. The configuration allows for associating VPC Lattice target groups with ECS Services.
13
+
4
14
  1.167.0 (2024-11-06)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.167.0
1
+ 1.169.0
@@ -562,20 +562,21 @@ module Aws::ECS
562
562
  # `default` cluster when you launch your first container instance.
563
563
  # However, you can create your own cluster with a unique name.
564
564
  #
565
- # <note markdown="1"> When you call the CreateCluster API operation, Amazon ECS attempts to
566
- # create the Amazon ECS service-linked role for your account. This is so
567
- # that it can manage required resources in other Amazon Web Services
568
- # services on your behalf. However, if the user that makes the call
569
- # doesn't have permissions to create the service-linked role, it isn't
570
- # created. For more information, see [Using service-linked roles for
571
- # Amazon ECS][1] in the *Amazon Elastic Container Service Developer
572
- # Guide*.
565
+ # <note markdown="1"> When you call the [CreateCluster][1] API operation, Amazon ECS
566
+ # attempts to create the Amazon ECS service-linked role for your
567
+ # account. This is so that it can manage required resources in other
568
+ # Amazon Web Services services on your behalf. However, if the user that
569
+ # makes the call doesn't have permissions to create the service-linked
570
+ # role, it isn't created. For more information, see [Using
571
+ # service-linked roles for Amazon ECS][2] in the *Amazon Elastic
572
+ # Container Service Developer Guide*.
573
573
  #
574
574
  # </note>
575
575
  #
576
576
  #
577
577
  #
578
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using-service-linked-roles.html
578
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCluster.html
579
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using-service-linked-roles.html
579
580
  #
580
581
  # @option params [String] :cluster_name
581
582
  # The name of your cluster. If you don't specify a name for your
@@ -821,8 +822,8 @@ module Aws::ECS
821
822
  # Runs and maintains your desired number of tasks from a specified task
822
823
  # definition. If the number of tasks running in a service drops below
823
824
  # the `desiredCount`, Amazon ECS runs another copy of the task in the
824
- # specified cluster. To update an existing service, see the
825
- # UpdateService action.
825
+ # specified cluster. To update an existing service, use
826
+ # [UpdateService][1].
826
827
  #
827
828
  # <note markdown="1"> On March 21, 2024, a change was made to resolve the task definition
828
829
  # revision before authorization. When a task definition revision is not
@@ -839,13 +840,13 @@ module Aws::ECS
839
840
  # you can optionally run your service behind one or more load balancers.
840
841
  # The load balancers distribute traffic across the tasks that are
841
842
  # associated with the service. For more information, see [Service load
842
- # balancing][1] in the *Amazon Elastic Container Service Developer
843
+ # balancing][2] in the *Amazon Elastic Container Service Developer
843
844
  # Guide*.
844
845
  #
845
846
  # You can attach Amazon EBS volumes to Amazon ECS tasks by configuring
846
847
  # the volume when creating or updating a service. `volumeConfigurations`
847
848
  # is only supported for REPLICA service and not DAEMON service. For more
848
- # infomation, see [Amazon EBS volumes][2] in the *Amazon Elastic
849
+ # infomation, see [Amazon EBS volumes][3] in the *Amazon Elastic
849
850
  # Container Service Developer Guide*.
850
851
  #
851
852
  # Tasks for services that don't use a load balancer are considered
@@ -860,7 +861,7 @@ module Aws::ECS
860
861
  # service scheduler spreads tasks across Availability Zones. You can
861
862
  # use task placement strategies and constraints to customize task
862
863
  # placement decisions. For more information, see [Service scheduler
863
- # concepts][3] in the *Amazon Elastic Container Service Developer
864
+ # concepts][4] in the *Amazon Elastic Container Service Developer
864
865
  # Guide*.
865
866
  #
866
867
  # * `DAEMON` - The daemon scheduling strategy deploys exactly one task
@@ -871,13 +872,13 @@ module Aws::ECS
871
872
  # constraints. When using this strategy, you don't need to specify a
872
873
  # desired number of tasks, a task placement strategy, or use Service
873
874
  # Auto Scaling policies. For more information, see [Service scheduler
874
- # concepts][3] in the *Amazon Elastic Container Service Developer
875
+ # concepts][4] in the *Amazon Elastic Container Service Developer
875
876
  # Guide*.
876
877
  #
877
878
  # You can optionally specify a deployment configuration for your
878
879
  # service. The deployment is initiated by changing properties. For
879
880
  # example, the deployment might be initiated by the task definition or
880
- # by your desired count of a service. You can use [UpdateService][4].
881
+ # by your desired count of a service. You can use [UpdateService][1].
881
882
  # The default value for a replica service for `minimumHealthyPercent` is
882
883
  # 100%. The default value for a daemon service for
883
884
  # `minimumHealthyPercent` is 0%.
@@ -937,10 +938,10 @@ module Aws::ECS
937
938
  #
938
939
  #
939
940
  #
940
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html
941
- # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-volumes.html#ebs-volume-types
942
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html
943
- # [4]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateService.html
941
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_UpdateService.html
942
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html
943
+ # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-volumes.html#ebs-volume-types
944
+ # [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html
944
945
  # [5]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateTaskSet.html
945
946
  # [6]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
946
947
  # [7]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement.html
@@ -1138,7 +1139,7 @@ module Aws::ECS
1138
1139
  #
1139
1140
  # @option params [Types::DeploymentConfiguration] :deployment_configuration
1140
1141
  # Optional deployment parameters that control how many tasks run during
1141
- # the deployment and the failure detection methods.
1142
+ # the deployment and the ordering of stopping and starting tasks.
1142
1143
  #
1143
1144
  # @option params [Array<Types::PlacementConstraint>] :placement_constraints
1144
1145
  # An array of placement constraint objects to use for tasks in your
@@ -1163,26 +1164,18 @@ module Aws::ECS
1163
1164
  #
1164
1165
  # @option params [Integer] :health_check_grace_period_seconds
1165
1166
  # The period of time, in seconds, that the Amazon ECS service scheduler
1166
- # ignores unhealthy Elastic Load Balancing target health checks after a
1167
- # task has first started. This is only used when your service is
1168
- # configured to use a load balancer. If your service has a load balancer
1169
- # defined and you don't specify a health check grace period value, the
1170
- # default value of `0` is used.
1171
- #
1172
- # If you do not use an Elastic Load Balancing, we recommend that you use
1173
- # the `startPeriod` in the task definition health check parameters. For
1174
- # more information, see [Health check][1].
1175
- #
1176
- # If your service's tasks take a while to start and respond to Elastic
1177
- # Load Balancing health checks, you can specify a health check grace
1178
- # period of up to 2,147,483,647 seconds (about 69 years). During that
1179
- # time, the Amazon ECS service scheduler ignores health check status.
1180
- # This grace period can prevent the service scheduler from marking tasks
1181
- # as unhealthy and stopping them before they have time to come up.
1182
- #
1183
- #
1184
- #
1185
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html
1167
+ # ignores unhealthy Elastic Load Balancing, VPC Lattice, and container
1168
+ # health checks after a task has first started. If you don't specify a
1169
+ # health check grace period value, the default value of `0` is used. If
1170
+ # you don't use any of the health checks, then
1171
+ # `healthCheckGracePeriodSeconds` is unused.
1172
+ #
1173
+ # If your service's tasks take a while to start and respond to health
1174
+ # checks, you can specify a health check grace period of up to
1175
+ # 2,147,483,647 seconds (about 69 years). During that time, the Amazon
1176
+ # ECS service scheduler ignores health check status. This grace period
1177
+ # can prevent the service scheduler from marking tasks as unhealthy and
1178
+ # stopping them before they have time to come up.
1186
1179
  #
1187
1180
  # @option params [String] :scheduling_strategy
1188
1181
  # The scheduling strategy to use for the service. For more information,
@@ -1308,6 +1301,9 @@ module Aws::ECS
1308
1301
  # volume that is configured at launch time. Currently, the only
1309
1302
  # supported volume type is an Amazon EBS volume.
1310
1303
  #
1304
+ # @option params [Array<Types::VpcLatticeConfiguration>] :vpc_lattice_configurations
1305
+ # The VPC Lattice configuration for the service being created.
1306
+ #
1311
1307
  # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1312
1308
  #
1313
1309
  # * {Types::CreateServiceResponse#service #service} => Types::Service
@@ -1578,6 +1574,13 @@ module Aws::ECS
1578
1574
  # },
1579
1575
  # },
1580
1576
  # ],
1577
+ # vpc_lattice_configurations: [
1578
+ # {
1579
+ # role_arn: "IAMRoleArn", # required
1580
+ # target_group_arn: "String", # required
1581
+ # port_name: "String", # required
1582
+ # },
1583
+ # ],
1581
1584
  # })
1582
1585
  #
1583
1586
  # @example Response structure
@@ -1724,6 +1727,10 @@ module Aws::ECS
1724
1727
  # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.role_arn #=> String
1725
1728
  # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.filesystem_type #=> String, one of "ext3", "ext4", "xfs", "ntfs"
1726
1729
  # resp.service.deployments[0].fargate_ephemeral_storage.kms_key_id #=> String
1730
+ # resp.service.deployments[0].vpc_lattice_configurations #=> Array
1731
+ # resp.service.deployments[0].vpc_lattice_configurations[0].role_arn #=> String
1732
+ # resp.service.deployments[0].vpc_lattice_configurations[0].target_group_arn #=> String
1733
+ # resp.service.deployments[0].vpc_lattice_configurations[0].port_name #=> String
1727
1734
  # resp.service.role_arn #=> String
1728
1735
  # resp.service.events #=> Array
1729
1736
  # resp.service.events[0].id #=> String
@@ -2535,6 +2542,10 @@ module Aws::ECS
2535
2542
  # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.role_arn #=> String
2536
2543
  # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.filesystem_type #=> String, one of "ext3", "ext4", "xfs", "ntfs"
2537
2544
  # resp.service.deployments[0].fargate_ephemeral_storage.kms_key_id #=> String
2545
+ # resp.service.deployments[0].vpc_lattice_configurations #=> Array
2546
+ # resp.service.deployments[0].vpc_lattice_configurations[0].role_arn #=> String
2547
+ # resp.service.deployments[0].vpc_lattice_configurations[0].target_group_arn #=> String
2548
+ # resp.service.deployments[0].vpc_lattice_configurations[0].port_name #=> String
2538
2549
  # resp.service.role_arn #=> String
2539
2550
  # resp.service.events #=> Array
2540
2551
  # resp.service.events[0].id #=> String
@@ -2690,6 +2701,7 @@ module Aws::ECS
2690
2701
  # resp.task_definitions[0].container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
2691
2702
  # resp.task_definitions[0].container_definitions[0].start_timeout #=> Integer
2692
2703
  # resp.task_definitions[0].container_definitions[0].stop_timeout #=> Integer
2704
+ # resp.task_definitions[0].container_definitions[0].version_consistency #=> String, one of "enabled", "disabled"
2693
2705
  # resp.task_definitions[0].container_definitions[0].hostname #=> String
2694
2706
  # resp.task_definitions[0].container_definitions[0].user #=> String
2695
2707
  # resp.task_definitions[0].container_definitions[0].working_directory #=> String
@@ -3151,6 +3163,7 @@ module Aws::ECS
3151
3163
  # resp.task_definition.container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
3152
3164
  # resp.task_definition.container_definitions[0].start_timeout #=> Integer
3153
3165
  # resp.task_definition.container_definitions[0].stop_timeout #=> Integer
3166
+ # resp.task_definition.container_definitions[0].version_consistency #=> String, one of "enabled", "disabled"
3154
3167
  # resp.task_definition.container_definitions[0].hostname #=> String
3155
3168
  # resp.task_definition.container_definitions[0].user #=> String
3156
3169
  # resp.task_definition.container_definitions[0].working_directory #=> String
@@ -3852,6 +3865,10 @@ module Aws::ECS
3852
3865
  # resp.service_revisions[0].volume_configurations[0].managed_ebs_volume.filesystem_type #=> String, one of "ext3", "ext4", "xfs", "ntfs"
3853
3866
  # resp.service_revisions[0].fargate_ephemeral_storage.kms_key_id #=> String
3854
3867
  # resp.service_revisions[0].created_at #=> Time
3868
+ # resp.service_revisions[0].vpc_lattice_configurations #=> Array
3869
+ # resp.service_revisions[0].vpc_lattice_configurations[0].role_arn #=> String
3870
+ # resp.service_revisions[0].vpc_lattice_configurations[0].target_group_arn #=> String
3871
+ # resp.service_revisions[0].vpc_lattice_configurations[0].port_name #=> String
3855
3872
  # resp.failures #=> Array
3856
3873
  # resp.failures[0].arn #=> String
3857
3874
  # resp.failures[0].reason #=> String
@@ -4097,6 +4114,10 @@ module Aws::ECS
4097
4114
  # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.role_arn #=> String
4098
4115
  # resp.services[0].deployments[0].volume_configurations[0].managed_ebs_volume.filesystem_type #=> String, one of "ext3", "ext4", "xfs", "ntfs"
4099
4116
  # resp.services[0].deployments[0].fargate_ephemeral_storage.kms_key_id #=> String
4117
+ # resp.services[0].deployments[0].vpc_lattice_configurations #=> Array
4118
+ # resp.services[0].deployments[0].vpc_lattice_configurations[0].role_arn #=> String
4119
+ # resp.services[0].deployments[0].vpc_lattice_configurations[0].target_group_arn #=> String
4120
+ # resp.services[0].deployments[0].vpc_lattice_configurations[0].port_name #=> String
4100
4121
  # resp.services[0].role_arn #=> String
4101
4122
  # resp.services[0].events #=> Array
4102
4123
  # resp.services[0].events[0].id #=> String
@@ -4306,6 +4327,7 @@ module Aws::ECS
4306
4327
  # resp.task_definition.container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
4307
4328
  # resp.task_definition.container_definitions[0].start_timeout #=> Integer
4308
4329
  # resp.task_definition.container_definitions[0].stop_timeout #=> Integer
4330
+ # resp.task_definition.container_definitions[0].version_consistency #=> String, one of "enabled", "disabled"
4309
4331
  # resp.task_definition.container_definitions[0].hostname #=> String
4310
4332
  # resp.task_definition.container_definitions[0].user #=> String
4311
4333
  # resp.task_definition.container_definitions[0].working_directory #=> String
@@ -6848,22 +6870,19 @@ module Aws::ECS
6848
6870
  # non-root user.
6849
6871
  #
6850
6872
  # If the network mode is `awsvpc`, the task is allocated an elastic
6851
- # network interface, and you must specify a NetworkConfiguration value
6852
- # when you create a service or run a task with the task definition. For
6853
- # more information, see [Task Networking][1] in the *Amazon Elastic
6854
- # Container Service Developer Guide*.
6873
+ # network interface, and you must specify a [NetworkConfiguration][1]
6874
+ # value when you create a service or run a task with the task
6875
+ # definition. For more information, see [Task Networking][2] in the
6876
+ # *Amazon Elastic Container Service Developer Guide*.
6855
6877
  #
6856
6878
  # If the network mode is `host`, you cannot run multiple instantiations
6857
6879
  # of the same task on a single container instance when port mappings are
6858
6880
  # used.
6859
6881
  #
6860
- # For more information, see [Network settings][2] in the *Docker run
6861
- # reference*.
6862
6882
  #
6863
6883
  #
6864
- #
6865
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
6866
- # [2]: https://docs.docker.com/engine/reference/run/#network-settings
6884
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html
6885
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
6867
6886
  #
6868
6887
  # @option params [required, Array<Types::ContainerDefinition>] :container_definitions
6869
6888
  # A list of container definitions in JSON format that describe the
@@ -7026,12 +7045,10 @@ module Aws::ECS
7026
7045
  # the same process namespace.
7027
7046
  #
7028
7047
  # If no value is specified, the default is a private namespace for each
7029
- # container. For more information, see [PID settings][1] in the *Docker
7030
- # run reference*.
7048
+ # container.
7031
7049
  #
7032
7050
  # If the `host` PID mode is used, there's a heightened risk of
7033
- # undesired process namespace exposure. For more information, see
7034
- # [Docker security][2].
7051
+ # undesired process namespace exposure.
7035
7052
  #
7036
7053
  # <note markdown="1"> This parameter is not supported for Windows containers.
7037
7054
  #
@@ -7043,11 +7060,6 @@ module Aws::ECS
7043
7060
  #
7044
7061
  # </note>
7045
7062
  #
7046
- #
7047
- #
7048
- # [1]: https://docs.docker.com/engine/reference/run/#pid-settings---pid
7049
- # [2]: https://docs.docker.com/engine/security/security/
7050
- #
7051
7063
  # @option params [String] :ipc_mode
7052
7064
  # The IPC resource namespace to use for the containers in the task. The
7053
7065
  # valid values are `host`, `task`, or `none`. If `host` is specified,
@@ -7059,16 +7071,14 @@ module Aws::ECS
7059
7071
  # private and not shared with other containers in a task or on the
7060
7072
  # container instance. If no value is specified, then the IPC resource
7061
7073
  # namespace sharing depends on the Docker daemon setting on the
7062
- # container instance. For more information, see [IPC settings][1] in the
7063
- # *Docker run reference*.
7074
+ # container instance.
7064
7075
  #
7065
7076
  # If the `host` IPC mode is used, be aware that there is a heightened
7066
- # risk of undesired IPC namespace expose. For more information, see
7067
- # [Docker security][2].
7077
+ # risk of undesired IPC namespace expose.
7068
7078
  #
7069
7079
  # If you are setting namespaced kernel parameters using `systemControls`
7070
7080
  # for the containers in the task, the following will apply to your IPC
7071
- # resource namespace. For more information, see [System Controls][3] in
7081
+ # resource namespace. For more information, see [System Controls][1] in
7072
7082
  # the *Amazon Elastic Container Service Developer Guide*.
7073
7083
  #
7074
7084
  # * For tasks that use the `host` IPC mode, IPC namespace related
@@ -7084,9 +7094,7 @@ module Aws::ECS
7084
7094
  #
7085
7095
  #
7086
7096
  #
7087
- # [1]: https://docs.docker.com/engine/reference/run/#ipc-settings---ipc
7088
- # [2]: https://docs.docker.com/engine/security/security/
7089
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
7097
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
7090
7098
  #
7091
7099
  # @option params [Types::ProxyConfiguration] :proxy_configuration
7092
7100
  # The configuration details for the App Mesh proxy.
@@ -7293,6 +7301,7 @@ module Aws::ECS
7293
7301
  # ],
7294
7302
  # start_timeout: 1,
7295
7303
  # stop_timeout: 1,
7304
+ # version_consistency: "enabled", # accepts enabled, disabled
7296
7305
  # hostname: "String",
7297
7306
  # user: "String",
7298
7307
  # working_directory: "String",
@@ -7507,6 +7516,7 @@ module Aws::ECS
7507
7516
  # resp.task_definition.container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
7508
7517
  # resp.task_definition.container_definitions[0].start_timeout #=> Integer
7509
7518
  # resp.task_definition.container_definitions[0].stop_timeout #=> Integer
7519
+ # resp.task_definition.container_definitions[0].version_consistency #=> String, one of "enabled", "disabled"
7510
7520
  # resp.task_definition.container_definitions[0].hostname #=> String
7511
7521
  # resp.task_definition.container_definitions[0].user #=> String
7512
7522
  # resp.task_definition.container_definitions[0].working_directory #=> String
@@ -9851,7 +9861,7 @@ module Aws::ECS
9851
9861
  #
9852
9862
  # @option params [Types::DeploymentConfiguration] :deployment_configuration
9853
9863
  # Optional deployment parameters that control how many tasks run during
9854
- # the deployment and the failure detection methods.
9864
+ # the deployment and the ordering of stopping and starting tasks.
9855
9865
  #
9856
9866
  # @option params [Types::NetworkConfiguration] :network_configuration
9857
9867
  # An object representing the network configuration for the service.
@@ -9897,14 +9907,17 @@ module Aws::ECS
9897
9907
  #
9898
9908
  # @option params [Integer] :health_check_grace_period_seconds
9899
9909
  # The period of time, in seconds, that the Amazon ECS service scheduler
9900
- # ignores unhealthy Elastic Load Balancing target health checks after a
9901
- # task has first started. This is only valid if your service is
9902
- # configured to use a load balancer. If your service's tasks take a
9903
- # while to start and respond to Elastic Load Balancing health checks,
9904
- # you can specify a health check grace period of up to 2,147,483,647
9905
- # seconds. During that time, the Amazon ECS service scheduler ignores
9906
- # the Elastic Load Balancing health check status. This grace period can
9907
- # prevent the ECS service scheduler from marking tasks as unhealthy and
9910
+ # ignores unhealthy Elastic Load Balancing, VPC Lattice, and container
9911
+ # health checks after a task has first started. If you don't specify a
9912
+ # health check grace period value, the default value of `0` is used. If
9913
+ # you don't use any of the health checks, then
9914
+ # `healthCheckGracePeriodSeconds` is unused.
9915
+ #
9916
+ # If your service's tasks take a while to start and respond to health
9917
+ # checks, you can specify a health check grace period of up to
9918
+ # 2,147,483,647 seconds (about 69 years). During that time, the Amazon
9919
+ # ECS service scheduler ignores health check status. This grace period
9920
+ # can prevent the service scheduler from marking tasks as unhealthy and
9908
9921
  # stopping them before they have time to come up.
9909
9922
  #
9910
9923
  # @option params [Boolean] :enable_execute_command
@@ -10018,6 +10031,10 @@ module Aws::ECS
10018
10031
  #
10019
10032
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ServiceManagedEBSVolumeConfiguration.html
10020
10033
  #
10034
+ # @option params [Array<Types::VpcLatticeConfiguration>] :vpc_lattice_configurations
10035
+ # An object representing the VPC Lattice configuration for the service
10036
+ # being updated.
10037
+ #
10021
10038
  # @return [Types::UpdateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10022
10039
  #
10023
10040
  # * {Types::UpdateServiceResponse#service #service} => Types::Service
@@ -10185,6 +10202,13 @@ module Aws::ECS
10185
10202
  # },
10186
10203
  # },
10187
10204
  # ],
10205
+ # vpc_lattice_configurations: [
10206
+ # {
10207
+ # role_arn: "IAMRoleArn", # required
10208
+ # target_group_arn: "String", # required
10209
+ # port_name: "String", # required
10210
+ # },
10211
+ # ],
10188
10212
  # })
10189
10213
  #
10190
10214
  # @example Response structure
@@ -10331,6 +10355,10 @@ module Aws::ECS
10331
10355
  # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.role_arn #=> String
10332
10356
  # resp.service.deployments[0].volume_configurations[0].managed_ebs_volume.filesystem_type #=> String, one of "ext3", "ext4", "xfs", "ntfs"
10333
10357
  # resp.service.deployments[0].fargate_ephemeral_storage.kms_key_id #=> String
10358
+ # resp.service.deployments[0].vpc_lattice_configurations #=> Array
10359
+ # resp.service.deployments[0].vpc_lattice_configurations[0].role_arn #=> String
10360
+ # resp.service.deployments[0].vpc_lattice_configurations[0].target_group_arn #=> String
10361
+ # resp.service.deployments[0].vpc_lattice_configurations[0].port_name #=> String
10334
10362
  # resp.service.role_arn #=> String
10335
10363
  # resp.service.events #=> Array
10336
10364
  # resp.service.events[0].id #=> String
@@ -10744,7 +10772,7 @@ module Aws::ECS
10744
10772
  tracer: tracer
10745
10773
  )
10746
10774
  context[:gem_name] = 'aws-sdk-ecs'
10747
- context[:gem_version] = '1.167.0'
10775
+ context[:gem_version] = '1.169.0'
10748
10776
  Seahorse::Client::Request.new(handlers, context)
10749
10777
  end
10750
10778
 
@@ -434,11 +434,14 @@ module Aws::ECS
434
434
  UpdateTaskProtectionResponse = Shapes::StructureShape.new(name: 'UpdateTaskProtectionResponse')
435
435
  UpdateTaskSetRequest = Shapes::StructureShape.new(name: 'UpdateTaskSetRequest')
436
436
  UpdateTaskSetResponse = Shapes::StructureShape.new(name: 'UpdateTaskSetResponse')
437
+ VersionConsistency = Shapes::StringShape.new(name: 'VersionConsistency')
437
438
  VersionInfo = Shapes::StructureShape.new(name: 'VersionInfo')
438
439
  Volume = Shapes::StructureShape.new(name: 'Volume')
439
440
  VolumeFrom = Shapes::StructureShape.new(name: 'VolumeFrom')
440
441
  VolumeFromList = Shapes::ListShape.new(name: 'VolumeFromList')
441
442
  VolumeList = Shapes::ListShape.new(name: 'VolumeList')
443
+ VpcLatticeConfiguration = Shapes::StructureShape.new(name: 'VpcLatticeConfiguration')
444
+ VpcLatticeConfigurations = Shapes::ListShape.new(name: 'VpcLatticeConfigurations')
442
445
 
443
446
  AccessDeniedException.struct_class = Types::AccessDeniedException
444
447
 
@@ -600,6 +603,7 @@ module Aws::ECS
600
603
  ContainerDefinition.add_member(:depends_on, Shapes::ShapeRef.new(shape: ContainerDependencies, location_name: "dependsOn"))
601
604
  ContainerDefinition.add_member(:start_timeout, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "startTimeout"))
602
605
  ContainerDefinition.add_member(:stop_timeout, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "stopTimeout"))
606
+ ContainerDefinition.add_member(:version_consistency, Shapes::ShapeRef.new(shape: VersionConsistency, location_name: "versionConsistency"))
603
607
  ContainerDefinition.add_member(:hostname, Shapes::ShapeRef.new(shape: String, location_name: "hostname"))
604
608
  ContainerDefinition.add_member(:user, Shapes::ShapeRef.new(shape: String, location_name: "user"))
605
609
  ContainerDefinition.add_member(:working_directory, Shapes::ShapeRef.new(shape: String, location_name: "workingDirectory"))
@@ -739,6 +743,7 @@ module Aws::ECS
739
743
  CreateServiceRequest.add_member(:enable_execute_command, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableExecuteCommand"))
740
744
  CreateServiceRequest.add_member(:service_connect_configuration, Shapes::ShapeRef.new(shape: ServiceConnectConfiguration, location_name: "serviceConnectConfiguration"))
741
745
  CreateServiceRequest.add_member(:volume_configurations, Shapes::ShapeRef.new(shape: ServiceVolumeConfigurations, location_name: "volumeConfigurations"))
746
+ CreateServiceRequest.add_member(:vpc_lattice_configurations, Shapes::ShapeRef.new(shape: VpcLatticeConfigurations, location_name: "vpcLatticeConfigurations"))
742
747
  CreateServiceRequest.struct_class = Types::CreateServiceRequest
743
748
 
744
749
  CreateServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "service"))
@@ -836,6 +841,7 @@ module Aws::ECS
836
841
  Deployment.add_member(:service_connect_resources, Shapes::ShapeRef.new(shape: ServiceConnectServiceResourceList, location_name: "serviceConnectResources"))
837
842
  Deployment.add_member(:volume_configurations, Shapes::ShapeRef.new(shape: ServiceVolumeConfigurations, location_name: "volumeConfigurations"))
838
843
  Deployment.add_member(:fargate_ephemeral_storage, Shapes::ShapeRef.new(shape: DeploymentEphemeralStorage, location_name: "fargateEphemeralStorage"))
844
+ Deployment.add_member(:vpc_lattice_configurations, Shapes::ShapeRef.new(shape: VpcLatticeConfigurations, location_name: "vpcLatticeConfigurations"))
839
845
  Deployment.struct_class = Types::Deployment
840
846
 
841
847
  DeploymentAlarms.add_member(:alarm_names, Shapes::ShapeRef.new(shape: StringList, required: true, location_name: "alarmNames"))
@@ -1673,6 +1679,7 @@ module Aws::ECS
1673
1679
  ServiceRevision.add_member(:volume_configurations, Shapes::ShapeRef.new(shape: ServiceVolumeConfigurations, location_name: "volumeConfigurations"))
1674
1680
  ServiceRevision.add_member(:fargate_ephemeral_storage, Shapes::ShapeRef.new(shape: DeploymentEphemeralStorage, location_name: "fargateEphemeralStorage"))
1675
1681
  ServiceRevision.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdAt"))
1682
+ ServiceRevision.add_member(:vpc_lattice_configurations, Shapes::ShapeRef.new(shape: VpcLatticeConfigurations, location_name: "vpcLatticeConfigurations"))
1676
1683
  ServiceRevision.struct_class = Types::ServiceRevision
1677
1684
 
1678
1685
  ServiceRevisionSummary.add_member(:arn, Shapes::ShapeRef.new(shape: String, location_name: "arn"))
@@ -2040,6 +2047,7 @@ module Aws::ECS
2040
2047
  UpdateServiceRequest.add_member(:service_registries, Shapes::ShapeRef.new(shape: ServiceRegistries, location_name: "serviceRegistries"))
2041
2048
  UpdateServiceRequest.add_member(:service_connect_configuration, Shapes::ShapeRef.new(shape: ServiceConnectConfiguration, location_name: "serviceConnectConfiguration"))
2042
2049
  UpdateServiceRequest.add_member(:volume_configurations, Shapes::ShapeRef.new(shape: ServiceVolumeConfigurations, location_name: "volumeConfigurations"))
2050
+ UpdateServiceRequest.add_member(:vpc_lattice_configurations, Shapes::ShapeRef.new(shape: VpcLatticeConfigurations, location_name: "vpcLatticeConfigurations"))
2043
2051
  UpdateServiceRequest.struct_class = Types::UpdateServiceRequest
2044
2052
 
2045
2053
  UpdateServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "service"))
@@ -2085,6 +2093,13 @@ module Aws::ECS
2085
2093
 
2086
2094
  VolumeList.member = Shapes::ShapeRef.new(shape: Volume)
2087
2095
 
2096
+ VpcLatticeConfiguration.add_member(:role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, required: true, location_name: "roleArn"))
2097
+ VpcLatticeConfiguration.add_member(:target_group_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "targetGroupArn"))
2098
+ VpcLatticeConfiguration.add_member(:port_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "portName"))
2099
+ VpcLatticeConfiguration.struct_class = Types::VpcLatticeConfiguration
2100
+
2101
+ VpcLatticeConfigurations.member = Shapes::ShapeRef.new(shape: VpcLatticeConfiguration)
2102
+
2088
2103
 
2089
2104
  # @api private
2090
2105
  API = Seahorse::Model::Api.new.tap do |api|
@@ -1500,6 +1500,21 @@ module Aws::ECS
1500
1500
  # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html
1501
1501
  # @return [Integer]
1502
1502
  #
1503
+ # @!attribute [rw] version_consistency
1504
+ # Specifies whether Amazon ECS will resolve the container image tag
1505
+ # provided in the container definition to an image digest. By default,
1506
+ # the value is `enabled`. If you set the value for a container as
1507
+ # `disabled`, Amazon ECS will not resolve the provided container image
1508
+ # tag to a digest and will use the original image URI specified in the
1509
+ # container definition for deployment. For more information about
1510
+ # container image resolution, see [Container image resolution][1] in
1511
+ # the *Amazon ECS Developer Guide*.
1512
+ #
1513
+ #
1514
+ #
1515
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html#deployment-container-image-stability
1516
+ # @return [String]
1517
+ #
1503
1518
  # @!attribute [rw] hostname
1504
1519
  # The hostname to use for your container. This parameter maps to
1505
1520
  # `Hostname` in the docker container create command and the
@@ -1842,6 +1857,7 @@ module Aws::ECS
1842
1857
  :depends_on,
1843
1858
  :start_timeout,
1844
1859
  :stop_timeout,
1860
+ :version_consistency,
1845
1861
  :hostname,
1846
1862
  :user,
1847
1863
  :working_directory,
@@ -2785,7 +2801,8 @@ module Aws::ECS
2785
2801
  #
2786
2802
  # @!attribute [rw] deployment_configuration
2787
2803
  # Optional deployment parameters that control how many tasks run
2788
- # during the deployment and the failure detection methods.
2804
+ # during the deployment and the ordering of stopping and starting
2805
+ # tasks.
2789
2806
  # @return [Types::DeploymentConfiguration]
2790
2807
  #
2791
2808
  # @!attribute [rw] placement_constraints
@@ -2815,27 +2832,18 @@ module Aws::ECS
2815
2832
  #
2816
2833
  # @!attribute [rw] health_check_grace_period_seconds
2817
2834
  # The period of time, in seconds, that the Amazon ECS service
2818
- # scheduler ignores unhealthy Elastic Load Balancing target health
2819
- # checks after a task has first started. This is only used when your
2820
- # service is configured to use a load balancer. If your service has a
2821
- # load balancer defined and you don't specify a health check grace
2822
- # period value, the default value of `0` is used.
2823
- #
2824
- # If you do not use an Elastic Load Balancing, we recommend that you
2825
- # use the `startPeriod` in the task definition health check
2826
- # parameters. For more information, see [Health check][1].
2827
- #
2828
- # If your service's tasks take a while to start and respond to
2829
- # Elastic Load Balancing health checks, you can specify a health check
2830
- # grace period of up to 2,147,483,647 seconds (about 69 years). During
2831
- # that time, the Amazon ECS service scheduler ignores health check
2832
- # status. This grace period can prevent the service scheduler from
2833
- # marking tasks as unhealthy and stopping them before they have time
2834
- # to come up.
2835
- #
2836
- #
2837
- #
2838
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html
2835
+ # scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and
2836
+ # container health checks after a task has first started. If you
2837
+ # don't specify a health check grace period value, the default value
2838
+ # of `0` is used. If you don't use any of the health checks, then
2839
+ # `healthCheckGracePeriodSeconds` is unused.
2840
+ #
2841
+ # If your service's tasks take a while to start and respond to health
2842
+ # checks, you can specify a health check grace period of up to
2843
+ # 2,147,483,647 seconds (about 69 years). During that time, the Amazon
2844
+ # ECS service scheduler ignores health check status. This grace period
2845
+ # can prevent the service scheduler from marking tasks as unhealthy
2846
+ # and stopping them before they have time to come up.
2839
2847
  # @return [Integer]
2840
2848
  #
2841
2849
  # @!attribute [rw] scheduling_strategy
@@ -2973,6 +2981,10 @@ module Aws::ECS
2973
2981
  # supported volume type is an Amazon EBS volume.
2974
2982
  # @return [Array<Types::ServiceVolumeConfiguration>]
2975
2983
  #
2984
+ # @!attribute [rw] vpc_lattice_configurations
2985
+ # The VPC Lattice configuration for the service being created.
2986
+ # @return [Array<Types::VpcLatticeConfiguration>]
2987
+ #
2976
2988
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateServiceRequest AWS API Documentation
2977
2989
  #
2978
2990
  class CreateServiceRequest < Struct.new(
@@ -2999,7 +3011,8 @@ module Aws::ECS
2999
3011
  :propagate_tags,
3000
3012
  :enable_execute_command,
3001
3013
  :service_connect_configuration,
3002
- :volume_configurations)
3014
+ :volume_configurations,
3015
+ :vpc_lattice_configurations)
3003
3016
  SENSITIVE = []
3004
3017
  include Aws::Structure
3005
3018
  end
@@ -3644,6 +3657,10 @@ module Aws::ECS
3644
3657
  # The Fargate ephemeral storage settings for the deployment.
3645
3658
  # @return [Types::DeploymentEphemeralStorage]
3646
3659
  #
3660
+ # @!attribute [rw] vpc_lattice_configurations
3661
+ # The VPC Lattice configuration for the service deployment.
3662
+ # @return [Array<Types::VpcLatticeConfiguration>]
3663
+ #
3647
3664
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Deployment AWS API Documentation
3648
3665
  #
3649
3666
  class Deployment < Struct.new(
@@ -3666,7 +3683,8 @@ module Aws::ECS
3666
3683
  :service_connect_configuration,
3667
3684
  :service_connect_resources,
3668
3685
  :volume_configurations,
3669
- :fargate_ephemeral_storage)
3686
+ :fargate_ephemeral_storage,
3687
+ :vpc_lattice_configurations)
3670
3688
  SENSITIVE = []
3671
3689
  include Aws::Structure
3672
3690
  end
@@ -3759,7 +3777,7 @@ module Aws::ECS
3759
3777
  end
3760
3778
 
3761
3779
  # Optional deployment parameters that control how many tasks run during
3762
- # the deployment and the failure detection methods.
3780
+ # a deployment and the ordering of stopping and starting tasks.
3763
3781
  #
3764
3782
  # @!attribute [rw] deployment_circuit_breaker
3765
3783
  # <note markdown="1"> The deployment circuit breaker can only be used for services using
@@ -3957,8 +3975,8 @@ module Aws::ECS
3957
3975
  # The amount of ephemeral storage to allocate for the deployment.
3958
3976
  #
3959
3977
  # @!attribute [rw] kms_key_id
3960
- # Specify an Amazon Web Services Key Management Service key ID to
3961
- # encrypt the ephemeral storage for deployment.
3978
+ # Specify an Key Management Service key ID to encrypt the ephemeral
3979
+ # storage for deployment.
3962
3980
  # @return [String]
3963
3981
  #
3964
3982
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentEphemeralStorage AWS API Documentation
@@ -6648,8 +6666,8 @@ module Aws::ECS
6648
6666
  # @return [String]
6649
6667
  #
6650
6668
  # @!attribute [rw] load_balancer_name
6651
- # The name of the load balancer to associate with the service or task
6652
- # set.
6669
+ # The name of the load balancer to associate with the Amazon ECS
6670
+ # service or task set.
6653
6671
  #
6654
6672
  # If you are using an Application Load Balancer or a Network Load
6655
6673
  # Balancer the load balancer name parameter should be omitted.
@@ -7069,8 +7087,9 @@ module Aws::ECS
7069
7087
  #
7070
7088
  # @!attribute [rw] minimum_scaling_step_size
7071
7089
  # The minimum number of Amazon EC2 instances that Amazon ECS will
7072
- # scale out at one time. If this parameter is omitted, the default
7073
- # value of `1` is used.
7090
+ # scale out at one time. The scale in process is not affected by this
7091
+ # parameter If this parameter is omitted, the default value of `1` is
7092
+ # used.
7074
7093
  #
7075
7094
  # When additional capacity is required, Amazon ECS will scale up the
7076
7095
  # minimum scaling step size even if the actual demand is less than the
@@ -7111,8 +7130,8 @@ module Aws::ECS
7111
7130
  # The managed storage configuration for the cluster.
7112
7131
  #
7113
7132
  # @!attribute [rw] kms_key_id
7114
- # Specify a Amazon Web Services Key Management Service key ID to
7115
- # encrypt the managed storage.
7133
+ # Specify a Key Management Service key ID to encrypt the managed
7134
+ # storage.
7116
7135
  # @return [String]
7117
7136
  #
7118
7137
  # @!attribute [rw] fargate_ephemeral_storage_kms_key_id
@@ -7232,7 +7251,6 @@ module Aws::ECS
7232
7251
  # Amazon ECS agent finds open host ports from the default
7233
7252
  # ephemeral range and passes it to docker to bind them to the
7234
7253
  # container ports.
7235
- #
7236
7254
  # * The `containerPortRange` valid values are between 1 and 65535.
7237
7255
  #
7238
7256
  # * A port can only be included in one port mapping per container.
@@ -7449,14 +7467,13 @@ module Aws::ECS
7449
7467
  #
7450
7468
  class PlatformUnknownException < Aws::EmptyStructure; end
7451
7469
 
7452
- # Port mappings expose your container's network ports to the outside
7453
- # world. this allows clients to access your application. It's also used
7454
- # for inter-container communication within the same task.
7470
+ # Port mappings allow containers to access ports on the host container
7471
+ # instance to send or receive traffic. Port mappings are specified as
7472
+ # part of the container definition.
7455
7473
  #
7456
- # For task definitions (both the Fargate and EC2 launch type) that use
7457
- # the `awsvpc` network mode, only specify the `containerPort`. The
7458
- # `hostPort` is always ignored, and the container port is automatically
7459
- # mapped to a random high-numbered port on the host.
7474
+ # If you use containers in a task with the `awsvpc` or `host` network
7475
+ # mode, specify the exposed ports using `containerPort`. The `hostPort`
7476
+ # can be left blank or it must be the same value as the `containerPort`.
7460
7477
  #
7461
7478
  # Most fields of this parameter (`containerPort`, `hostPort`,
7462
7479
  # `protocol`) maps to `PortBindings` in the docker container create
@@ -7481,19 +7498,15 @@ module Aws::ECS
7481
7498
  # The port number on the container that's bound to the user-specified
7482
7499
  # or automatically assigned host port.
7483
7500
  #
7484
- # For tasks that use the Fargate launch type or EC2 tasks that use the
7485
- # `awsvpc` network mode, you use `containerPort` to specify the
7486
- # exposed ports.
7487
- #
7488
- # For Windows containers on Fargate, you can't use port 3150 for the
7489
- # `containerPort`. This is because it's reserved.
7490
- #
7491
- # Suppose that you're using containers in a task with the EC2 launch
7492
- # type and you specify a container port and not a host port. Then,
7493
- # your container automatically receives a host port in the ephemeral
7494
- # port range. For more information, see `hostPort`. Port mappings that
7495
- # are automatically assigned in this way don't count toward the 100
7496
- # reserved ports quota of a container instance.
7501
+ # If you use containers in a task with the `awsvpc` or `host` network
7502
+ # mode, specify the exposed ports using `containerPort`.
7503
+ #
7504
+ # If you use containers in a task with the `bridge` network mode and
7505
+ # you specify a container port and not a host port, your container
7506
+ # automatically receives a host port in the ephemeral port range. For
7507
+ # more information, see `hostPort`. Port mappings that are
7508
+ # automatically assigned in this way do not count toward the 100
7509
+ # reserved ports limit of a container instance.
7497
7510
  # @return [Integer]
7498
7511
  #
7499
7512
  # @!attribute [rw] host_port
@@ -7555,19 +7568,12 @@ module Aws::ECS
7555
7568
  # @return [String]
7556
7569
  #
7557
7570
  # @!attribute [rw] name
7558
- # The name that's used for the port mapping. This parameter only
7559
- # applies to Service Connect. This parameter is the name that you use
7560
- # in the `serviceConnectConfiguration` of a service. The name can
7561
- # include up to 64 characters. The characters can include lowercase
7562
- # letters, numbers, underscores (\_), and hyphens (-). The name can't
7563
- # start with a hyphen.
7564
- #
7565
- # For more information, see [Service Connect][1] in the *Amazon
7566
- # Elastic Container Service Developer Guide*.
7567
- #
7568
- #
7569
- #
7570
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
7571
+ # The name that's used for the port mapping. This parameter is the
7572
+ # name that you use in the `serviceConnectConfiguration` and the
7573
+ # `vpcLatticeConfigurations` of a service. The name can include up to
7574
+ # 64 characters. The characters can include lowercase letters,
7575
+ # numbers, underscores (\_), and hyphens (-). The name can't start
7576
+ # with a hyphen.
7571
7577
  # @return [String]
7572
7578
  #
7573
7579
  # @!attribute [rw] app_protocol
@@ -7632,7 +7638,6 @@ module Aws::ECS
7632
7638
  # Amazon ECS agent finds open host ports from the default
7633
7639
  # ephemeral range and passes it to docker to bind them to the
7634
7640
  # container ports.
7635
- #
7636
7641
  # * The `containerPortRange` valid values are between 1 and 65535.
7637
7642
  #
7638
7643
  # * A port can only be included in one port mapping per container.
@@ -8326,22 +8331,19 @@ module Aws::ECS
8326
8331
  # non-root user.
8327
8332
  #
8328
8333
  # If the network mode is `awsvpc`, the task is allocated an elastic
8329
- # network interface, and you must specify a NetworkConfiguration value
8330
- # when you create a service or run a task with the task definition.
8331
- # For more information, see [Task Networking][1] in the *Amazon
8332
- # Elastic Container Service Developer Guide*.
8334
+ # network interface, and you must specify a [NetworkConfiguration][1]
8335
+ # value when you create a service or run a task with the task
8336
+ # definition. For more information, see [Task Networking][2] in the
8337
+ # *Amazon Elastic Container Service Developer Guide*.
8333
8338
  #
8334
8339
  # If the network mode is `host`, you cannot run multiple
8335
8340
  # instantiations of the same task on a single container instance when
8336
8341
  # port mappings are used.
8337
8342
  #
8338
- # For more information, see [Network settings][2] in the *Docker run
8339
- # reference*.
8340
8343
  #
8341
8344
  #
8342
- #
8343
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
8344
- # [2]: https://docs.docker.com/engine/reference/run/#network-settings
8345
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html
8346
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
8345
8347
  # @return [String]
8346
8348
  #
8347
8349
  # @!attribute [rw] container_definitions
@@ -8514,12 +8516,10 @@ module Aws::ECS
8514
8516
  # share the same process namespace.
8515
8517
  #
8516
8518
  # If no value is specified, the default is a private namespace for
8517
- # each container. For more information, see [PID settings][1] in the
8518
- # *Docker run reference*.
8519
+ # each container.
8519
8520
  #
8520
8521
  # If the `host` PID mode is used, there's a heightened risk of
8521
- # undesired process namespace exposure. For more information, see
8522
- # [Docker security][2].
8522
+ # undesired process namespace exposure.
8523
8523
  #
8524
8524
  # <note markdown="1"> This parameter is not supported for Windows containers.
8525
8525
  #
@@ -8530,11 +8530,6 @@ module Aws::ECS
8530
8530
  # (Linux). This isn't supported for Windows containers on Fargate.
8531
8531
  #
8532
8532
  # </note>
8533
- #
8534
- #
8535
- #
8536
- # [1]: https://docs.docker.com/engine/reference/run/#pid-settings---pid
8537
- # [2]: https://docs.docker.com/engine/security/security/
8538
8533
  # @return [String]
8539
8534
  #
8540
8535
  # @!attribute [rw] ipc_mode
@@ -8548,17 +8543,15 @@ module Aws::ECS
8548
8543
  # containers of a task are private and not shared with other
8549
8544
  # containers in a task or on the container instance. If no value is
8550
8545
  # specified, then the IPC resource namespace sharing depends on the
8551
- # Docker daemon setting on the container instance. For more
8552
- # information, see [IPC settings][1] in the *Docker run reference*.
8546
+ # Docker daemon setting on the container instance.
8553
8547
  #
8554
8548
  # If the `host` IPC mode is used, be aware that there is a heightened
8555
- # risk of undesired IPC namespace expose. For more information, see
8556
- # [Docker security][2].
8549
+ # risk of undesired IPC namespace expose.
8557
8550
  #
8558
8551
  # If you are setting namespaced kernel parameters using
8559
8552
  # `systemControls` for the containers in the task, the following will
8560
8553
  # apply to your IPC resource namespace. For more information, see
8561
- # [System Controls][3] in the *Amazon Elastic Container Service
8554
+ # [System Controls][1] in the *Amazon Elastic Container Service
8562
8555
  # Developer Guide*.
8563
8556
  #
8564
8557
  # * For tasks that use the `host` IPC mode, IPC namespace related
@@ -8574,9 +8567,7 @@ module Aws::ECS
8574
8567
  #
8575
8568
  #
8576
8569
  #
8577
- # [1]: https://docs.docker.com/engine/reference/run/#ipc-settings---ipc
8578
- # [2]: https://docs.docker.com/engine/security/security/
8579
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
8570
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
8580
8571
  # @return [String]
8581
8572
  #
8582
8573
  # @!attribute [rw] proxy_configuration
@@ -9155,14 +9146,10 @@ module Aws::ECS
9155
9146
  # You can run your Linux tasks on an ARM-based platform by setting the
9156
9147
  # value to `ARM64`. This option is available for tasks that run on
9157
9148
  # Linux Amazon EC2 instance or Linux containers on Fargate.
9158
- #
9159
- # The default is `X86_64`.
9160
9149
  # @return [String]
9161
9150
  #
9162
9151
  # @!attribute [rw] operating_system_family
9163
9152
  # The operating system.
9164
- #
9165
- # The default is `Linux`.
9166
9153
  # @return [String]
9167
9154
  #
9168
9155
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/RuntimePlatform AWS API Documentation
@@ -9336,9 +9323,9 @@ module Aws::ECS
9336
9323
  # @return [String]
9337
9324
  #
9338
9325
  # @!attribute [rw] capacity_provider_strategy
9339
- # The capacity provider strategy the service uses. When using
9340
- # `DescribeServices`, this field is omitted if the service was created
9341
- # using a launch type.
9326
+ # The capacity provider strategy the service uses. When using the
9327
+ # DescribeServices API, this field is omitted if the service was
9328
+ # created using a launch type.
9342
9329
  # @return [Array<Types::CapacityProviderStrategyItem>]
9343
9330
  #
9344
9331
  # @!attribute [rw] platform_version
@@ -9461,7 +9448,7 @@ module Aws::ECS
9461
9448
  # @!attribute [rw] tags
9462
9449
  # The metadata that you apply to the service to help you categorize
9463
9450
  # and organize them. Each tag consists of a key and an optional value.
9464
- # You define both the key and value.
9451
+ # You define bot the key and value.
9465
9452
  #
9466
9453
  # The following basic restrictions apply to tags:
9467
9454
  #
@@ -9963,7 +9950,7 @@ module Aws::ECS
9963
9950
  #
9964
9951
  # @!attribute [rw] deployment_configuration
9965
9952
  # Optional deployment parameters that control how many tasks run
9966
- # during the deployment and the failure detection methods.
9953
+ # during a deployment and the ordering of stopping and starting tasks.
9967
9954
  # @return [Types::DeploymentConfiguration]
9968
9955
  #
9969
9956
  # @!attribute [rw] rollback
@@ -10561,6 +10548,10 @@ module Aws::ECS
10561
10548
  # yyyy-mm-dd HH:mm:ss.SSSSS.
10562
10549
  # @return [Time]
10563
10550
  #
10551
+ # @!attribute [rw] vpc_lattice_configurations
10552
+ # The VPC Lattice configuration for the service revision.
10553
+ # @return [Array<Types::VpcLatticeConfiguration>]
10554
+ #
10564
10555
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceRevision AWS API Documentation
10565
10556
  #
10566
10557
  class ServiceRevision < Struct.new(
@@ -10580,7 +10571,8 @@ module Aws::ECS
10580
10571
  :service_connect_configuration,
10581
10572
  :volume_configurations,
10582
10573
  :fargate_ephemeral_storage,
10583
- :created_at)
10574
+ :created_at,
10575
+ :vpc_lattice_configurations)
10584
10576
  SENSITIVE = []
10585
10577
  include Aws::Structure
10586
10578
  end
@@ -11740,22 +11732,19 @@ module Aws::ECS
11740
11732
  # non-root user.
11741
11733
  #
11742
11734
  # If the network mode is `awsvpc`, the task is allocated an elastic
11743
- # network interface, and you must specify a NetworkConfiguration value
11744
- # when you create a service or run a task with the task definition.
11745
- # For more information, see [Task Networking][1] in the *Amazon
11746
- # Elastic Container Service Developer Guide*.
11735
+ # network interface, and you must specify a [NetworkConfiguration][1]
11736
+ # value when you create a service or run a task with the task
11737
+ # definition. For more information, see [Task Networking][2] in the
11738
+ # *Amazon Elastic Container Service Developer Guide*.
11747
11739
  #
11748
11740
  # If the network mode is `host`, you cannot run multiple
11749
11741
  # instantiations of the same task on a single container instance when
11750
11742
  # port mappings are used.
11751
11743
  #
11752
- # For more information, see [Network settings][2] in the *Docker run
11753
- # reference*.
11754
- #
11755
11744
  #
11756
11745
  #
11757
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
11758
- # [2]: https://docs.docker.com/engine/reference/run/#network-settings
11746
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html
11747
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
11759
11748
  # @return [String]
11760
11749
  #
11761
11750
  # @!attribute [rw] revision
@@ -11950,12 +11939,10 @@ module Aws::ECS
11950
11939
  # share the same process namespace.
11951
11940
  #
11952
11941
  # If no value is specified, the default is a private namespace for
11953
- # each container. For more information, see [PID settings][1] in the
11954
- # *Docker run reference*.
11942
+ # each container.
11955
11943
  #
11956
11944
  # If the `host` PID mode is used, there's a heightened risk of
11957
- # undesired process namespace exposure. For more information, see
11958
- # [Docker security][2].
11945
+ # undesired process namespace exposure.
11959
11946
  #
11960
11947
  # <note markdown="1"> This parameter is not supported for Windows containers.
11961
11948
  #
@@ -11966,11 +11953,6 @@ module Aws::ECS
11966
11953
  # (Linux). This isn't supported for Windows containers on Fargate.
11967
11954
  #
11968
11955
  # </note>
11969
- #
11970
- #
11971
- #
11972
- # [1]: https://docs.docker.com/engine/reference/run/#pid-settings---pid
11973
- # [2]: https://docs.docker.com/engine/security/security/
11974
11956
  # @return [String]
11975
11957
  #
11976
11958
  # @!attribute [rw] ipc_mode
@@ -11984,17 +11966,15 @@ module Aws::ECS
11984
11966
  # containers of a task are private and not shared with other
11985
11967
  # containers in a task or on the container instance. If no value is
11986
11968
  # specified, then the IPC resource namespace sharing depends on the
11987
- # Docker daemon setting on the container instance. For more
11988
- # information, see [IPC settings][1] in the *Docker run reference*.
11969
+ # Docker daemon setting on the container instance.
11989
11970
  #
11990
11971
  # If the `host` IPC mode is used, be aware that there is a heightened
11991
- # risk of undesired IPC namespace expose. For more information, see
11992
- # [Docker security][2].
11972
+ # risk of undesired IPC namespace expose.
11993
11973
  #
11994
11974
  # If you are setting namespaced kernel parameters using
11995
11975
  # `systemControls` for the containers in the task, the following will
11996
11976
  # apply to your IPC resource namespace. For more information, see
11997
- # [System Controls][3] in the *Amazon Elastic Container Service
11977
+ # [System Controls][1] in the *Amazon Elastic Container Service
11998
11978
  # Developer Guide*.
11999
11979
  #
12000
11980
  # * For tasks that use the `host` IPC mode, IPC namespace related
@@ -12010,9 +11990,7 @@ module Aws::ECS
12010
11990
  #
12011
11991
  #
12012
11992
  #
12013
- # [1]: https://docs.docker.com/engine/reference/run/#ipc-settings---ipc
12014
- # [2]: https://docs.docker.com/engine/security/security/
12015
- # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
11993
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
12016
11994
  # @return [String]
12017
11995
  #
12018
11996
  # @!attribute [rw] proxy_configuration
@@ -12127,8 +12105,8 @@ module Aws::ECS
12127
12105
  # @return [Integer]
12128
12106
  #
12129
12107
  # @!attribute [rw] kms_key_id
12130
- # Specify an Amazon Web Services Key Management Service key ID to
12131
- # encrypt the ephemeral storage for the task.
12108
+ # Specify an Key Management Service key ID to encrypt the ephemeral
12109
+ # storage for the task.
12132
12110
  # @return [String]
12133
12111
  #
12134
12112
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/TaskEphemeralStorage AWS API Documentation
@@ -13167,7 +13145,8 @@ module Aws::ECS
13167
13145
  #
13168
13146
  # @!attribute [rw] deployment_configuration
13169
13147
  # Optional deployment parameters that control how many tasks run
13170
- # during the deployment and the failure detection methods.
13148
+ # during the deployment and the ordering of stopping and starting
13149
+ # tasks.
13171
13150
  # @return [Types::DeploymentConfiguration]
13172
13151
  #
13173
13152
  # @!attribute [rw] network_configuration
@@ -13221,16 +13200,18 @@ module Aws::ECS
13221
13200
  #
13222
13201
  # @!attribute [rw] health_check_grace_period_seconds
13223
13202
  # The period of time, in seconds, that the Amazon ECS service
13224
- # scheduler ignores unhealthy Elastic Load Balancing target health
13225
- # checks after a task has first started. This is only valid if your
13226
- # service is configured to use a load balancer. If your service's
13227
- # tasks take a while to start and respond to Elastic Load Balancing
13228
- # health checks, you can specify a health check grace period of up to
13229
- # 2,147,483,647 seconds. During that time, the Amazon ECS service
13230
- # scheduler ignores the Elastic Load Balancing health check status.
13231
- # This grace period can prevent the ECS service scheduler from marking
13232
- # tasks as unhealthy and stopping them before they have time to come
13233
- # up.
13203
+ # scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and
13204
+ # container health checks after a task has first started. If you
13205
+ # don't specify a health check grace period value, the default value
13206
+ # of `0` is used. If you don't use any of the health checks, then
13207
+ # `healthCheckGracePeriodSeconds` is unused.
13208
+ #
13209
+ # If your service's tasks take a while to start and respond to health
13210
+ # checks, you can specify a health check grace period of up to
13211
+ # 2,147,483,647 seconds (about 69 years). During that time, the Amazon
13212
+ # ECS service scheduler ignores health check status. This grace period
13213
+ # can prevent the service scheduler from marking tasks as unhealthy
13214
+ # and stopping them before they have time to come up.
13234
13215
  # @return [Integer]
13235
13216
  #
13236
13217
  # @!attribute [rw] enable_execute_command
@@ -13355,6 +13336,11 @@ module Aws::ECS
13355
13336
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ServiceManagedEBSVolumeConfiguration.html
13356
13337
  # @return [Array<Types::ServiceVolumeConfiguration>]
13357
13338
  #
13339
+ # @!attribute [rw] vpc_lattice_configurations
13340
+ # An object representing the VPC Lattice configuration for the service
13341
+ # being updated.
13342
+ # @return [Array<Types::VpcLatticeConfiguration>]
13343
+ #
13358
13344
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateServiceRequest AWS API Documentation
13359
13345
  #
13360
13346
  class UpdateServiceRequest < Struct.new(
@@ -13376,7 +13362,8 @@ module Aws::ECS
13376
13362
  :propagate_tags,
13377
13363
  :service_registries,
13378
13364
  :service_connect_configuration,
13379
- :volume_configurations)
13365
+ :volume_configurations,
13366
+ :vpc_lattice_configurations)
13380
13367
  SENSITIVE = []
13381
13368
  include Aws::Structure
13382
13369
  end
@@ -13646,6 +13633,38 @@ module Aws::ECS
13646
13633
  include Aws::Structure
13647
13634
  end
13648
13635
 
13636
+ # The VPC Lattice configuration for your service that holds the
13637
+ # information for the target group(s) Amazon ECS tasks will be
13638
+ # registered to.
13639
+ #
13640
+ # @!attribute [rw] role_arn
13641
+ # The ARN of the IAM role to associate with this VPC Lattice
13642
+ # configuration. This is the Amazon ECS
 infrastructure IAM role that
13643
+ # is used to manage your VPC Lattice infrastructure.
13644
+ # @return [String]
13645
+ #
13646
+ # @!attribute [rw] target_group_arn
13647
+ # The full Amazon Resource Name (ARN) of the target group or groups
13648
+ # associated with the VPC Lattice configuration that the Amazon ECS
13649
+ # tasks will be registered to.
13650
+ # @return [String]
13651
+ #
13652
+ # @!attribute [rw] port_name
13653
+ # The name of the port mapping to register in the VPC Lattice target
13654
+ # group. This is the name of the `portMapping` you defined in your
13655
+ # task definition.
13656
+ # @return [String]
13657
+ #
13658
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/VpcLatticeConfiguration AWS API Documentation
13659
+ #
13660
+ class VpcLatticeConfiguration < Struct.new(
13661
+ :role_arn,
13662
+ :target_group_arn,
13663
+ :port_name)
13664
+ SENSITIVE = []
13665
+ include Aws::Structure
13666
+ end
13667
+
13649
13668
  end
13650
13669
  end
13651
13670
 
data/lib/aws-sdk-ecs.rb CHANGED
@@ -55,7 +55,7 @@ module Aws::ECS
55
55
  autoload :EndpointProvider, 'aws-sdk-ecs/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-ecs/endpoints'
57
57
 
58
- GEM_VERSION = '1.167.0'
58
+ GEM_VERSION = '1.169.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -302,6 +302,13 @@ module Aws
302
302
  filesystem_type: ("ext3" | "ext4" | "xfs" | "ntfs")?
303
303
  }?
304
304
  },
305
+ ],
306
+ ?vpc_lattice_configurations: Array[
307
+ {
308
+ role_arn: ::String,
309
+ target_group_arn: ::String,
310
+ port_name: ::String
311
+ },
305
312
  ]
306
313
  ) -> _CreateServiceResponseSuccess
307
314
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateServiceResponseSuccess
@@ -1001,6 +1008,7 @@ module Aws
1001
1008
  ]?,
1002
1009
  start_timeout: ::Integer?,
1003
1010
  stop_timeout: ::Integer?,
1011
+ version_consistency: ("enabled" | "disabled")?,
1004
1012
  hostname: ::String?,
1005
1013
  user: ::String?,
1006
1014
  working_directory: ::String?,
@@ -1733,6 +1741,13 @@ module Aws
1733
1741
  filesystem_type: ("ext3" | "ext4" | "xfs" | "ntfs")?
1734
1742
  }?
1735
1743
  },
1744
+ ],
1745
+ ?vpc_lattice_configurations: Array[
1746
+ {
1747
+ role_arn: ::String,
1748
+ target_group_arn: ::String,
1749
+ port_name: ::String
1750
+ },
1736
1751
  ]
1737
1752
  ) -> _UpdateServiceResponseSuccess
1738
1753
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateServiceResponseSuccess
data/sig/types.rbs CHANGED
@@ -186,6 +186,7 @@ module Aws::ECS
186
186
  attr_accessor depends_on: ::Array[Types::ContainerDependency]
187
187
  attr_accessor start_timeout: ::Integer
188
188
  attr_accessor stop_timeout: ::Integer
189
+ attr_accessor version_consistency: ("enabled" | "disabled")
189
190
  attr_accessor hostname: ::String
190
191
  attr_accessor user: ::String
191
192
  attr_accessor working_directory: ::String
@@ -333,6 +334,7 @@ module Aws::ECS
333
334
  attr_accessor enable_execute_command: bool
334
335
  attr_accessor service_connect_configuration: Types::ServiceConnectConfiguration
335
336
  attr_accessor volume_configurations: ::Array[Types::ServiceVolumeConfiguration]
337
+ attr_accessor vpc_lattice_configurations: ::Array[Types::VpcLatticeConfiguration]
336
338
  SENSITIVE: []
337
339
  end
338
340
 
@@ -468,6 +470,7 @@ module Aws::ECS
468
470
  attr_accessor service_connect_resources: ::Array[Types::ServiceConnectServiceResource]
469
471
  attr_accessor volume_configurations: ::Array[Types::ServiceVolumeConfiguration]
470
472
  attr_accessor fargate_ephemeral_storage: Types::DeploymentEphemeralStorage
473
+ attr_accessor vpc_lattice_configurations: ::Array[Types::VpcLatticeConfiguration]
471
474
  SENSITIVE: []
472
475
  end
473
476
 
@@ -1489,6 +1492,7 @@ module Aws::ECS
1489
1492
  attr_accessor volume_configurations: ::Array[Types::ServiceVolumeConfiguration]
1490
1493
  attr_accessor fargate_ephemeral_storage: Types::DeploymentEphemeralStorage
1491
1494
  attr_accessor created_at: ::Time
1495
+ attr_accessor vpc_lattice_configurations: ::Array[Types::VpcLatticeConfiguration]
1492
1496
  SENSITIVE: []
1493
1497
  end
1494
1498
 
@@ -1906,6 +1910,7 @@ module Aws::ECS
1906
1910
  attr_accessor service_registries: ::Array[Types::ServiceRegistry]
1907
1911
  attr_accessor service_connect_configuration: Types::ServiceConnectConfiguration
1908
1912
  attr_accessor volume_configurations: ::Array[Types::ServiceVolumeConfiguration]
1913
+ attr_accessor vpc_lattice_configurations: ::Array[Types::VpcLatticeConfiguration]
1909
1914
  SENSITIVE: []
1910
1915
  end
1911
1916
 
@@ -1963,5 +1968,12 @@ module Aws::ECS
1963
1968
  attr_accessor read_only: bool
1964
1969
  SENSITIVE: []
1965
1970
  end
1971
+
1972
+ class VpcLatticeConfiguration
1973
+ attr_accessor role_arn: ::String
1974
+ attr_accessor target_group_arn: ::String
1975
+ attr_accessor port_name: ::String
1976
+ SENSITIVE: []
1977
+ end
1966
1978
  end
1967
1979
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ecs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.167.0
4
+ version: 1.169.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-11-06 00:00:00.000000000 Z
11
+ date: 2024-11-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core