aws-sdk-ecs 1.68.0 → 1.73.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -97,14 +97,18 @@ module Aws::ECS
97
97
  # }
98
98
  #
99
99
  # @!attribute [rw] name
100
- # The name of the attribute. Up to 128 letters (uppercase and
101
- # lowercase), numbers, hyphens, underscores, and periods are allowed.
100
+ # The name of the attribute. The `name` must contain between 1 and 128
101
+ # characters and name may contain letters (uppercase and lowercase),
102
+ # numbers, hyphens, underscores, forward slashes, back slashes, or
103
+ # periods.
102
104
  # @return [String]
103
105
  #
104
106
  # @!attribute [rw] value
105
- # The value of the attribute. Up to 128 letters (uppercase and
106
- # lowercase), numbers, hyphens, underscores, periods, at signs (@),
107
- # forward slashes, colons, and spaces are allowed.
107
+ # The value of the attribute. The `value` must contain between 1 and
108
+ # 128 characters and may contain letters (uppercase and lowercase),
109
+ # numbers, hyphens, underscores, periods, at signs (@), forward
110
+ # slashes, back slashes, colons, or spaces. The value cannot contain
111
+ # any leading or trailing whitespace.
108
112
  # @return [String]
109
113
  #
110
114
  # @!attribute [rw] target_type
@@ -149,6 +153,7 @@ module Aws::ECS
149
153
  # target_capacity: 1,
150
154
  # minimum_scaling_step_size: 1,
151
155
  # maximum_scaling_step_size: 1,
156
+ # instance_warmup_period: 1,
152
157
  # },
153
158
  # managed_termination_protection: "ENABLED", # accepts ENABLED, DISABLED
154
159
  # }
@@ -198,6 +203,76 @@ module Aws::ECS
198
203
  include Aws::Structure
199
204
  end
200
205
 
206
+ # The details of the Auto Scaling group capacity provider to update.
207
+ #
208
+ # @note When making an API call, you may pass AutoScalingGroupProviderUpdate
209
+ # data as a hash:
210
+ #
211
+ # {
212
+ # managed_scaling: {
213
+ # status: "ENABLED", # accepts ENABLED, DISABLED
214
+ # target_capacity: 1,
215
+ # minimum_scaling_step_size: 1,
216
+ # maximum_scaling_step_size: 1,
217
+ # instance_warmup_period: 1,
218
+ # },
219
+ # managed_termination_protection: "ENABLED", # accepts ENABLED, DISABLED
220
+ # }
221
+ #
222
+ # @!attribute [rw] managed_scaling
223
+ # The managed scaling settings for the Auto Scaling group capacity
224
+ # provider.
225
+ #
226
+ # When managed scaling is enabled, Amazon ECS manages the scale-in and
227
+ # scale-out actions of the Auto Scaling group. Amazon ECS manages a
228
+ # target tracking scaling policy using an Amazon ECS-managed
229
+ # CloudWatch metric with the specified `targetCapacity` value as the
230
+ # target value for the metric. For more information, see [Using
231
+ # Managed Scaling][1] in the *Amazon Elastic Container Service
232
+ # Developer Guide*.
233
+ #
234
+ # If managed scaling is disabled, the user must manage the scaling of
235
+ # the Auto Scaling group.
236
+ #
237
+ #
238
+ #
239
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/asg-capacity-providers.html#asg-capacity-providers-managed-scaling
240
+ # @return [Types::ManagedScaling]
241
+ #
242
+ # @!attribute [rw] managed_termination_protection
243
+ # The managed termination protection setting to use for the Auto
244
+ # Scaling group capacity provider. This determines whether the Auto
245
+ # Scaling group has managed termination protection.
246
+ #
247
+ # When using managed termination protection, managed scaling must also
248
+ # be used otherwise managed termination protection will not work.
249
+ #
250
+ # When managed termination protection is enabled, Amazon ECS prevents
251
+ # the Amazon EC2 instances in an Auto Scaling group that contain tasks
252
+ # from being terminated during a scale-in action. The Auto Scaling
253
+ # group and each instance in the Auto Scaling group must have instance
254
+ # protection from scale-in actions enabled as well. For more
255
+ # information, see [Instance Protection][1] in the *AWS Auto Scaling
256
+ # User Guide*.
257
+ #
258
+ # When managed termination protection is disabled, your Amazon EC2
259
+ # instances are not protected from termination when the Auto Scaling
260
+ # group scales in.
261
+ #
262
+ #
263
+ #
264
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection
265
+ # @return [String]
266
+ #
267
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/AutoScalingGroupProviderUpdate AWS API Documentation
268
+ #
269
+ class AutoScalingGroupProviderUpdate < Struct.new(
270
+ :managed_scaling,
271
+ :managed_termination_protection)
272
+ SENSITIVE = []
273
+ include Aws::Structure
274
+ end
275
+
201
276
  # An object representing the networking details for a task or service.
202
277
  #
203
278
  # @note When making an API call, you may pass AwsVpcConfiguration
@@ -210,8 +285,9 @@ module Aws::ECS
210
285
  # }
211
286
  #
212
287
  # @!attribute [rw] subnets
213
- # The subnets associated with the task or service. There is a limit of
214
- # 16 subnets that can be specified per `AwsVpcConfiguration`.
288
+ # The IDs of the subnets associated with the task or service. There is
289
+ # a limit of 16 subnets that can be specified per
290
+ # `AwsVpcConfiguration`.
215
291
  #
216
292
  # <note markdown="1"> All specified subnets must be from the same VPC.
217
293
  #
@@ -219,10 +295,10 @@ module Aws::ECS
219
295
  # @return [Array<String>]
220
296
  #
221
297
  # @!attribute [rw] security_groups
222
- # The security groups associated with the task or service. If you do
223
- # not specify a security group, the default security group for the VPC
224
- # is used. There is a limit of 5 security groups that can be specified
225
- # per `AwsVpcConfiguration`.
298
+ # The IDs of the security groups associated with the task or service.
299
+ # If you do not specify a security group, the default security group
300
+ # for the VPC is used. There is a limit of 5 security groups that can
301
+ # be specified per `AwsVpcConfiguration`.
226
302
  #
227
303
  # <note markdown="1"> All specified security groups must be from the same VPC.
228
304
  #
@@ -919,7 +995,7 @@ module Aws::ECS
919
995
  #
920
996
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
921
997
  # [2]: https://docs.docker.com/engine/api/v1.35/
922
- # [3]: https://docs.docker.com/engine/reference/run/
998
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
923
999
  # @return [String]
924
1000
  #
925
1001
  # @!attribute [rw] image
@@ -958,7 +1034,7 @@ module Aws::ECS
958
1034
  #
959
1035
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
960
1036
  # [2]: https://docs.docker.com/engine/api/v1.35/
961
- # [3]: https://docs.docker.com/engine/reference/run/
1037
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
962
1038
  # @return [String]
963
1039
  #
964
1040
  # @!attribute [rw] repository_credentials
@@ -1016,13 +1092,14 @@ module Aws::ECS
1016
1092
  # On Windows container instances, the CPU limit is enforced as an
1017
1093
  # absolute limit, or a quota. Windows containers only have access to
1018
1094
  # the specified amount of CPU that is described in the task
1019
- # definition.
1095
+ # definition. A null or zero CPU value is passed to Docker as `0`,
1096
+ # which Windows interprets as 1% of one CPU.
1020
1097
  #
1021
1098
  #
1022
1099
  #
1023
1100
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1024
1101
  # [2]: https://docs.docker.com/engine/api/v1.35/
1025
- # [3]: https://docs.docker.com/engine/reference/run/
1102
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1026
1103
  # [4]: http://aws.amazon.com/ec2/instance-types/
1027
1104
  # [5]: https://docs.docker.com/engine/reference/run/#cpu-share-constraint
1028
1105
  # @return [Integer]
@@ -1054,7 +1131,7 @@ module Aws::ECS
1054
1131
  #
1055
1132
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1056
1133
  # [2]: https://docs.docker.com/engine/api/v1.35/
1057
- # [3]: https://docs.docker.com/engine/reference/run/
1134
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1058
1135
  # @return [Integer]
1059
1136
  #
1060
1137
  # @!attribute [rw] memory_reservation
@@ -1092,7 +1169,7 @@ module Aws::ECS
1092
1169
  #
1093
1170
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1094
1171
  # [2]: https://docs.docker.com/engine/api/v1.35/
1095
- # [3]: https://docs.docker.com/engine/reference/run/
1172
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1096
1173
  # @return [Integer]
1097
1174
  #
1098
1175
  # @!attribute [rw] links
@@ -1107,7 +1184,8 @@ module Aws::ECS
1107
1184
  # container][2] section of the [Docker Remote API][3] and the `--link`
1108
1185
  # option to [docker run][4].
1109
1186
  #
1110
- # <note markdown="1"> This parameter is not supported for Windows containers.
1187
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks that
1188
+ # use the awsvpc network mode.
1111
1189
  #
1112
1190
  # </note>
1113
1191
  #
@@ -1121,7 +1199,7 @@ module Aws::ECS
1121
1199
  # [1]: https://docs.docker.com/network/links/
1122
1200
  # [2]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1123
1201
  # [3]: https://docs.docker.com/engine/api/v1.35/
1124
- # [4]: https://docs.docker.com/engine/reference/run/
1202
+ # [4]: https://docs.docker.com/engine/reference/run/#security-configuration
1125
1203
  # @return [Array<String>]
1126
1204
  #
1127
1205
  # @!attribute [rw] port_mappings
@@ -1158,7 +1236,7 @@ module Aws::ECS
1158
1236
  #
1159
1237
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1160
1238
  # [2]: https://docs.docker.com/engine/api/v1.35/
1161
- # [3]: https://docs.docker.com/engine/reference/run/
1239
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1162
1240
  # @return [Array<Types::PortMapping>]
1163
1241
  #
1164
1242
  # @!attribute [rw] essential
@@ -1197,7 +1275,7 @@ module Aws::ECS
1197
1275
  #
1198
1276
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1199
1277
  # [2]: https://docs.docker.com/engine/api/v1.35/
1200
- # [3]: https://docs.docker.com/engine/reference/run/
1278
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1201
1279
  # [4]: https://docs.docker.com/engine/reference/builder/#entrypoint
1202
1280
  # @return [Array<String>]
1203
1281
  #
@@ -1214,7 +1292,7 @@ module Aws::ECS
1214
1292
  #
1215
1293
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1216
1294
  # [2]: https://docs.docker.com/engine/api/v1.35/
1217
- # [3]: https://docs.docker.com/engine/reference/run/
1295
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1218
1296
  # [4]: https://docs.docker.com/engine/reference/builder/#cmd
1219
1297
  # @return [Array<String>]
1220
1298
  #
@@ -1230,7 +1308,7 @@ module Aws::ECS
1230
1308
  #
1231
1309
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1232
1310
  # [2]: https://docs.docker.com/engine/api/v1.35/
1233
- # [3]: https://docs.docker.com/engine/reference/run/
1311
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1234
1312
  # @return [Array<Types::KeyValuePair>]
1235
1313
  #
1236
1314
  # @!attribute [rw] environment_files
@@ -1254,12 +1332,9 @@ module Aws::ECS
1254
1332
  # Variables][3] in the *Amazon Elastic Container Service Developer
1255
1333
  # Guide*.
1256
1334
  #
1257
- # This field is not valid for containers in tasks using the Fargate
1258
- # launch type.
1259
1335
  #
1260
1336
  #
1261
- #
1262
- # [1]: https://docs.docker.com/engine/reference/run/
1337
+ # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
1263
1338
  # [2]: https://docs.docker.com/compose/env-file/
1264
1339
  # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html
1265
1340
  # @return [Array<Types::EnvironmentFile>]
@@ -1279,7 +1354,7 @@ module Aws::ECS
1279
1354
  #
1280
1355
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1281
1356
  # [2]: https://docs.docker.com/engine/api/v1.35/
1282
- # [3]: https://docs.docker.com/engine/reference/run/
1357
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1283
1358
  # @return [Array<Types::MountPoint>]
1284
1359
  #
1285
1360
  # @!attribute [rw] volumes_from
@@ -1291,7 +1366,7 @@ module Aws::ECS
1291
1366
  #
1292
1367
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1293
1368
  # [2]: https://docs.docker.com/engine/api/v1.35/
1294
- # [3]: https://docs.docker.com/engine/reference/run/
1369
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1295
1370
  # @return [Array<Types::VolumeFrom>]
1296
1371
  #
1297
1372
  # @!attribute [rw] linux_parameters
@@ -1353,25 +1428,23 @@ module Aws::ECS
1353
1428
  # give up and not start. This results in the task transitioning to a
1354
1429
  # `STOPPED` state.
1355
1430
  #
1431
+ # <note markdown="1"> When the `ECS_CONTAINER_START_TIMEOUT` container agent configuration
1432
+ # variable is used, it is enforced indendently from this start timeout
1433
+ # value.
1434
+ #
1435
+ # </note>
1436
+ #
1356
1437
  # For tasks using the Fargate launch type, this parameter requires
1357
- # that the task or service uses platform version 1.3.0 or later. If
1358
- # this parameter is not specified, the default value of 3 minutes is
1359
- # used.
1438
+ # that the task or service uses platform version 1.3.0 or later.
1360
1439
  #
1361
- # For tasks using the EC2 launch type, if the `startTimeout` parameter
1362
- # is not specified, the value set for the Amazon ECS container agent
1363
- # configuration variable `ECS_CONTAINER_START_TIMEOUT` is used by
1364
- # default. If neither the `startTimeout` parameter or the
1365
- # `ECS_CONTAINER_START_TIMEOUT` agent configuration variable are set,
1366
- # then the default values of 3 minutes for Linux containers and 8
1367
- # minutes on Windows containers are used. Your container instances
1368
- # require at least version 1.26.0 of the container agent to enable a
1440
+ # For tasks using the EC2 launch type, your container instances
1441
+ # require at least version `1.26.0` of the container agent to enable a
1369
1442
  # container start timeout value. However, we recommend using the
1370
1443
  # latest container agent version. For information about checking your
1371
1444
  # agent version and updating to the latest version, see [Updating the
1372
1445
  # Amazon ECS Container Agent][1] in the *Amazon Elastic Container
1373
1446
  # Service Developer Guide*. If you are using an Amazon ECS-optimized
1374
- # Linux AMI, your instance needs at least version 1.26.0-1 of the
1447
+ # Linux AMI, your instance needs at least version `1.26.0-1` of the
1375
1448
  # `ecs-init` package. If your container instances are launched from
1376
1449
  # version `20190301` or later, then they contain the required versions
1377
1450
  # of the container agent and `ecs-init`. For more information, see
@@ -1433,16 +1506,20 @@ module Aws::ECS
1433
1506
  #
1434
1507
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1435
1508
  # [2]: https://docs.docker.com/engine/api/v1.35/
1436
- # [3]: https://docs.docker.com/engine/reference/run/
1509
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1437
1510
  # @return [String]
1438
1511
  #
1439
1512
  # @!attribute [rw] user
1440
- # The user name to use inside the container. This parameter maps to
1441
- # `User` in the [Create a container][1] section of the [Docker Remote
1442
- # API][2] and the `--user` option to [docker run][3].
1513
+ # The user to use inside the container. This parameter maps to `User`
1514
+ # in the [Create a container][1] section of the [Docker Remote API][2]
1515
+ # and the `--user` option to [docker run][3].
1516
+ #
1517
+ # When running tasks using the `host` network mode, you should not run
1518
+ # containers using the root user (UID 0). It is considered best
1519
+ # practice to use a non-root user.
1443
1520
  #
1444
- # You can use the following formats. If specifying a UID or GID, you
1445
- # must specify it as a positive integer.
1521
+ # You can specify the `user` using the following formats. If
1522
+ # specifying a UID or GID, you must specify it as a positive integer.
1446
1523
  #
1447
1524
  # * `user`
1448
1525
  #
@@ -1456,7 +1533,8 @@ module Aws::ECS
1456
1533
  #
1457
1534
  # * `uid:group`
1458
1535
  #
1459
- # <note markdown="1"> This parameter is not supported for Windows containers.
1536
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks that
1537
+ # use the awsvpc network mode.
1460
1538
  #
1461
1539
  # </note>
1462
1540
  #
@@ -1464,7 +1542,7 @@ module Aws::ECS
1464
1542
  #
1465
1543
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1466
1544
  # [2]: https://docs.docker.com/engine/api/v1.35/
1467
- # [3]: https://docs.docker.com/engine/reference/run/
1545
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1468
1546
  # @return [String]
1469
1547
  #
1470
1548
  # @!attribute [rw] working_directory
@@ -1477,7 +1555,7 @@ module Aws::ECS
1477
1555
  #
1478
1556
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1479
1557
  # [2]: https://docs.docker.com/engine/api/v1.35/
1480
- # [3]: https://docs.docker.com/engine/reference/run/
1558
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1481
1559
  # @return [String]
1482
1560
  #
1483
1561
  # @!attribute [rw] disable_networking
@@ -1485,7 +1563,8 @@ module Aws::ECS
1485
1563
  # container. This parameter maps to `NetworkDisabled` in the [Create a
1486
1564
  # container][1] section of the [Docker Remote API][2].
1487
1565
  #
1488
- # <note markdown="1"> This parameter is not supported for Windows containers.
1566
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks that
1567
+ # use the awsvpc network mode.
1489
1568
  #
1490
1569
  # </note>
1491
1570
  #
@@ -1511,7 +1590,7 @@ module Aws::ECS
1511
1590
  #
1512
1591
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1513
1592
  # [2]: https://docs.docker.com/engine/api/v1.35/
1514
- # [3]: https://docs.docker.com/engine/reference/run/
1593
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1515
1594
  # @return [Boolean]
1516
1595
  #
1517
1596
  # @!attribute [rw] readonly_root_filesystem
@@ -1520,7 +1599,8 @@ module Aws::ECS
1520
1599
  # the [Create a container][1] section of the [Docker Remote API][2]
1521
1600
  # and the `--read-only` option to [docker run][3].
1522
1601
  #
1523
- # <note markdown="1"> This parameter is not supported for Windows containers.
1602
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks that
1603
+ # use the awsvpc network mode.
1524
1604
  #
1525
1605
  # </note>
1526
1606
  #
@@ -1528,7 +1608,7 @@ module Aws::ECS
1528
1608
  #
1529
1609
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1530
1610
  # [2]: https://docs.docker.com/engine/api/v1.35/
1531
- # [3]: https://docs.docker.com/engine/reference/run/
1611
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1532
1612
  # @return [Boolean]
1533
1613
  #
1534
1614
  # @!attribute [rw] dns_servers
@@ -1537,7 +1617,8 @@ module Aws::ECS
1537
1617
  # the [Docker Remote API][2] and the `--dns` option to [docker
1538
1618
  # run][3].
1539
1619
  #
1540
- # <note markdown="1"> This parameter is not supported for Windows containers.
1620
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks that
1621
+ # use the awsvpc network mode.
1541
1622
  #
1542
1623
  # </note>
1543
1624
  #
@@ -1545,7 +1626,7 @@ module Aws::ECS
1545
1626
  #
1546
1627
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1547
1628
  # [2]: https://docs.docker.com/engine/api/v1.35/
1548
- # [3]: https://docs.docker.com/engine/reference/run/
1629
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1549
1630
  # @return [Array<String>]
1550
1631
  #
1551
1632
  # @!attribute [rw] dns_search_domains
@@ -1554,7 +1635,8 @@ module Aws::ECS
1554
1635
  # section of the [Docker Remote API][2] and the `--dns-search` option
1555
1636
  # to [docker run][3].
1556
1637
  #
1557
- # <note markdown="1"> This parameter is not supported for Windows containers.
1638
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks that
1639
+ # use the awsvpc network mode.
1558
1640
  #
1559
1641
  # </note>
1560
1642
  #
@@ -1562,7 +1644,7 @@ module Aws::ECS
1562
1644
  #
1563
1645
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1564
1646
  # [2]: https://docs.docker.com/engine/api/v1.35/
1565
- # [3]: https://docs.docker.com/engine/reference/run/
1647
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1566
1648
  # @return [Array<String>]
1567
1649
  #
1568
1650
  # @!attribute [rw] extra_hosts
@@ -1580,7 +1662,7 @@ module Aws::ECS
1580
1662
  #
1581
1663
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1582
1664
  # [2]: https://docs.docker.com/engine/api/v1.35/
1583
- # [3]: https://docs.docker.com/engine/reference/run/
1665
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1584
1666
  # @return [Array<Types::HostEntry>]
1585
1667
  #
1586
1668
  # @!attribute [rw] docker_security_options
@@ -1607,12 +1689,18 @@ module Aws::ECS
1607
1689
  #
1608
1690
  # </note>
1609
1691
  #
1692
+ # For more information about valid values, see [Docker Run Security
1693
+ # Configuration][4].
1694
+ #
1695
+ # Valid values: "no-new-privileges" \| "apparmor:PROFILE" \|
1696
+ # "label:value" \| "credentialspec:CredentialSpecFilePath"
1697
+ #
1610
1698
  #
1611
1699
  #
1612
1700
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html
1613
1701
  # [2]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1614
1702
  # [3]: https://docs.docker.com/engine/api/v1.35/
1615
- # [4]: https://docs.docker.com/engine/reference/run/
1703
+ # [4]: https://docs.docker.com/engine/reference/run/#security-configuration
1616
1704
  # [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
1617
1705
  # @return [Array<String>]
1618
1706
  #
@@ -1627,7 +1715,7 @@ module Aws::ECS
1627
1715
  #
1628
1716
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1629
1717
  # [2]: https://docs.docker.com/engine/api/v1.35/
1630
- # [3]: https://docs.docker.com/engine/reference/run/
1718
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1631
1719
  # @return [Boolean]
1632
1720
  #
1633
1721
  # @!attribute [rw] pseudo_terminal
@@ -1639,7 +1727,7 @@ module Aws::ECS
1639
1727
  #
1640
1728
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1641
1729
  # [2]: https://docs.docker.com/engine/api/v1.35/
1642
- # [3]: https://docs.docker.com/engine/reference/run/
1730
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1643
1731
  # @return [Boolean]
1644
1732
  #
1645
1733
  # @!attribute [rw] docker_labels
@@ -1656,7 +1744,7 @@ module Aws::ECS
1656
1744
  #
1657
1745
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1658
1746
  # [2]: https://docs.docker.com/engine/api/v1.35/
1659
- # [3]: https://docs.docker.com/engine/reference/run/
1747
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1660
1748
  # @return [Hash<String,String>]
1661
1749
  #
1662
1750
  # @!attribute [rw] ulimits
@@ -1671,7 +1759,8 @@ module Aws::ECS
1671
1759
  # log in to your container instance and run the following command:
1672
1760
  # `sudo docker version --format '\{\{.Server.APIVersion\}\}'`
1673
1761
  #
1674
- # <note markdown="1"> This parameter is not supported for Windows containers.
1762
+ # <note markdown="1"> This parameter is not supported for Windows containers or tasks that
1763
+ # use the awsvpc network mode.
1675
1764
  #
1676
1765
  # </note>
1677
1766
  #
@@ -1679,7 +1768,7 @@ module Aws::ECS
1679
1768
  #
1680
1769
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1681
1770
  # [2]: https://docs.docker.com/engine/api/v1.35/
1682
- # [3]: https://docs.docker.com/engine/reference/run/
1771
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1683
1772
  # @return [Array<Types::Ulimit>]
1684
1773
  #
1685
1774
  # @!attribute [rw] log_configuration
@@ -1724,7 +1813,7 @@ module Aws::ECS
1724
1813
  #
1725
1814
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1726
1815
  # [2]: https://docs.docker.com/engine/api/v1.35/
1727
- # [3]: https://docs.docker.com/engine/reference/run/
1816
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1728
1817
  # [4]: https://docs.docker.com/engine/admin/logging/overview/
1729
1818
  # [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html
1730
1819
  # @return [Types::LogConfiguration]
@@ -1739,7 +1828,7 @@ module Aws::ECS
1739
1828
  #
1740
1829
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1741
1830
  # [2]: https://docs.docker.com/engine/api/v1.35/
1742
- # [3]: https://docs.docker.com/engine/reference/run/
1831
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1743
1832
  # @return [Types::HealthCheck]
1744
1833
  #
1745
1834
  # @!attribute [rw] system_controls
@@ -1763,7 +1852,7 @@ module Aws::ECS
1763
1852
  #
1764
1853
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
1765
1854
  # [2]: https://docs.docker.com/engine/api/v1.35/
1766
- # [3]: https://docs.docker.com/engine/reference/run/
1855
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
1767
1856
  # @return [Array<Types::SystemControl>]
1768
1857
  #
1769
1858
  # @!attribute [rw] resource_requirements
@@ -1878,10 +1967,12 @@ module Aws::ECS
1878
1967
  # * `COMPLETE` - This condition validates that a dependent container
1879
1968
  # runs to completion (exits) before permitting other containers to
1880
1969
  # start. This can be useful for nonessential containers that run a
1881
- # script and then exit.
1970
+ # script and then exit. This condition cannot be set on an essential
1971
+ # container.
1882
1972
  #
1883
1973
  # * `SUCCESS` - This condition is the same as `COMPLETE`, but it also
1884
- # requires that the container exits with a `zero` status.
1974
+ # requires that the container exits with a `zero` status. This
1975
+ # condition cannot be set on an essential container.
1885
1976
  #
1886
1977
  # * `HEALTHY` - This condition validates that the dependent container
1887
1978
  # passes its Docker health check before permitting other containers
@@ -2257,6 +2348,7 @@ module Aws::ECS
2257
2348
  # target_capacity: 1,
2258
2349
  # minimum_scaling_step_size: 1,
2259
2350
  # maximum_scaling_step_size: 1,
2351
+ # instance_warmup_period: 1,
2260
2352
  # },
2261
2353
  # managed_termination_protection: "ENABLED", # accepts ENABLED, DISABLED
2262
2354
  # },
@@ -2511,6 +2603,10 @@ module Aws::ECS
2511
2603
  # platform_version: "String",
2512
2604
  # role: "String",
2513
2605
  # deployment_configuration: {
2606
+ # deployment_circuit_breaker: {
2607
+ # enable: false, # required
2608
+ # rollback: false, # required
2609
+ # },
2514
2610
  # maximum_percent: 1,
2515
2611
  # minimum_healthy_percent: 1,
2516
2612
  # },
@@ -2566,8 +2662,8 @@ module Aws::ECS
2566
2662
  # task definition to run in your service. If a `revision` is not
2567
2663
  # specified, the latest `ACTIVE` revision is used.
2568
2664
  #
2569
- # A task definition must be specified if the service is using the
2570
- # `ECS` deployment controller.
2665
+ # A task definition must be specified if the service is using either
2666
+ # the `ECS` or `CODE_DEPLOY` deployment controllers.
2571
2667
  # @return [String]
2572
2668
  #
2573
2669
  # @!attribute [rw] load_balancers
@@ -2577,11 +2673,11 @@ module Aws::ECS
2577
2673
  #
2578
2674
  # If the service is using the rolling update (`ECS`) deployment
2579
2675
  # controller and using either an Application Load Balancer or Network
2580
- # Load Balancer, you can specify multiple target groups to attach to
2581
- # the service. The service-linked role is required for services that
2582
- # make use of multiple target groups. For more information, see [Using
2583
- # Service-Linked Roles for Amazon ECS][2] in the *Amazon Elastic
2584
- # Container Service Developer Guide*.
2676
+ # Load Balancer, you must specify one or more target group ARNs to
2677
+ # attach to the service. The service-linked role is required for
2678
+ # services that make use of multiple target groups. For more
2679
+ # information, see [Using Service-Linked Roles for Amazon ECS][2] in
2680
+ # the *Amazon Elastic Container Service Developer Guide*.
2585
2681
  #
2586
2682
  # If the service is using the `CODE_DEPLOY` deployment controller, the
2587
2683
  # service is required to use either an Application Load Balancer or
@@ -2604,17 +2700,19 @@ module Aws::ECS
2604
2700
  # For Application Load Balancers and Network Load Balancers, this
2605
2701
  # object must contain the load balancer target group ARN, the
2606
2702
  # container name (as it appears in a container definition), and the
2607
- # container port to access from the load balancer. When a task from
2608
- # this service is placed on a container instance, the container
2609
- # instance and port combination is registered as a target in the
2610
- # target group specified here.
2703
+ # container port to access from the load balancer. The load balancer
2704
+ # name parameter must be omitted. When a task from this service is
2705
+ # placed on a container instance, the container instance and port
2706
+ # combination is registered as a target in the target group specified
2707
+ # here.
2611
2708
  #
2612
2709
  # For Classic Load Balancers, this object must contain the load
2613
2710
  # balancer name, the container name (as it appears in a container
2614
2711
  # definition), and the container port to access from the load
2615
- # balancer. When a task from this service is placed on a container
2616
- # instance, the container instance is registered with the load
2617
- # balancer specified here.
2712
+ # balancer. The target group ARN parameter must be omitted. When a
2713
+ # task from this service is placed on a container instance, the
2714
+ # container instance is registered with the load balancer specified
2715
+ # here.
2618
2716
  #
2619
2717
  # Services with tasks that use the `awsvpc` network mode (for example,
2620
2718
  # those with the Fargate launch type) only support Application Load
@@ -3466,6 +3564,19 @@ module Aws::ECS
3466
3564
  # status.
3467
3565
  # @return [Integer]
3468
3566
  #
3567
+ # @!attribute [rw] failed_tasks
3568
+ # The number of consecutively failed tasks in the deployment. A task
3569
+ # is considered a failure if the service scheduler can't launch the
3570
+ # task, the task doesn't transition to a `RUNNING` state, or if it
3571
+ # fails any of its defined health checks and is stopped.
3572
+ #
3573
+ # <note markdown="1"> Once a service deployment has one or more successfully running
3574
+ # tasks, the failed task count resets to zero and stops being
3575
+ # evaluated.
3576
+ #
3577
+ # </note>
3578
+ # @return [Integer]
3579
+ #
3469
3580
  # @!attribute [rw] created_at
3470
3581
  # The Unix timestamp for when the service deployment was created.
3471
3582
  # @return [Time]
@@ -3507,6 +3618,26 @@ module Aws::ECS
3507
3618
  # networking mode.
3508
3619
  # @return [Types::NetworkConfiguration]
3509
3620
  #
3621
+ # @!attribute [rw] rollout_state
3622
+ # <note markdown="1"> The `rolloutState` of a service is only returned for services that
3623
+ # use the rolling update (`ECS`) deployment type that are not behind a
3624
+ # Classic Load Balancer.
3625
+ #
3626
+ # </note>
3627
+ #
3628
+ # The rollout state of the deployment. When a service deployment is
3629
+ # started, it begins in an `IN_PROGRESS` state. When the service
3630
+ # reaches a steady state, the deployment will transition to a
3631
+ # `COMPLETED` state. If the service fails to reach a steady state and
3632
+ # circuit breaker is enabled, the deployment will transition to a
3633
+ # `FAILED` state. A deployment in `FAILED` state will launch no new
3634
+ # tasks. For more information, see DeploymentCircuitBreaker.
3635
+ # @return [String]
3636
+ #
3637
+ # @!attribute [rw] rollout_state_reason
3638
+ # A description of the rollout state of a deployment.
3639
+ # @return [String]
3640
+ #
3510
3641
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Deployment AWS API Documentation
3511
3642
  #
3512
3643
  class Deployment < Struct.new(
@@ -3516,12 +3647,62 @@ module Aws::ECS
3516
3647
  :desired_count,
3517
3648
  :pending_count,
3518
3649
  :running_count,
3650
+ :failed_tasks,
3519
3651
  :created_at,
3520
3652
  :updated_at,
3521
3653
  :capacity_provider_strategy,
3522
3654
  :launch_type,
3523
3655
  :platform_version,
3524
- :network_configuration)
3656
+ :network_configuration,
3657
+ :rollout_state,
3658
+ :rollout_state_reason)
3659
+ SENSITIVE = []
3660
+ include Aws::Structure
3661
+ end
3662
+
3663
+ # <note markdown="1"> The deployment circuit breaker can only be used for services using the
3664
+ # rolling update (`ECS`) deployment type that are not behind a Classic
3665
+ # Load Balancer.
3666
+ #
3667
+ # </note>
3668
+ #
3669
+ # The **deployment circuit breaker** determines whether a service
3670
+ # deployment will fail if the service can't reach a steady state. If
3671
+ # enabled, a service deployment will transition to a failed state and
3672
+ # stop launching new tasks. You can also enable Amazon ECS to roll back
3673
+ # your service to the last completed deployment after a failure. For
3674
+ # more information, see [Rolling update][1] in the *Amazon Elastic
3675
+ # Container Service Developer Guide*.
3676
+ #
3677
+ #
3678
+ #
3679
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html
3680
+ #
3681
+ # @note When making an API call, you may pass DeploymentCircuitBreaker
3682
+ # data as a hash:
3683
+ #
3684
+ # {
3685
+ # enable: false, # required
3686
+ # rollback: false, # required
3687
+ # }
3688
+ #
3689
+ # @!attribute [rw] enable
3690
+ # Whether to enable the deployment circuit breaker logic for the
3691
+ # service.
3692
+ # @return [Boolean]
3693
+ #
3694
+ # @!attribute [rw] rollback
3695
+ # Whether to enable Amazon ECS to roll back the service if a service
3696
+ # deployment fails. If rollback is enabled, when a service deployment
3697
+ # fails, the service is rolled back to the last deployment that
3698
+ # completed successfully.
3699
+ # @return [Boolean]
3700
+ #
3701
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentCircuitBreaker AWS API Documentation
3702
+ #
3703
+ class DeploymentCircuitBreaker < Struct.new(
3704
+ :enable,
3705
+ :rollback)
3525
3706
  SENSITIVE = []
3526
3707
  include Aws::Structure
3527
3708
  end
@@ -3533,10 +3714,28 @@ module Aws::ECS
3533
3714
  # data as a hash:
3534
3715
  #
3535
3716
  # {
3717
+ # deployment_circuit_breaker: {
3718
+ # enable: false, # required
3719
+ # rollback: false, # required
3720
+ # },
3536
3721
  # maximum_percent: 1,
3537
3722
  # minimum_healthy_percent: 1,
3538
3723
  # }
3539
3724
  #
3725
+ # @!attribute [rw] deployment_circuit_breaker
3726
+ # <note markdown="1"> The deployment circuit breaker can only be used for services using
3727
+ # the rolling update (`ECS`) deployment type.
3728
+ #
3729
+ # </note>
3730
+ #
3731
+ # The **deployment circuit breaker** determines whether a service
3732
+ # deployment will fail if the service can't reach a steady state. If
3733
+ # deployment circuit breaker is enabled, a service deployment will
3734
+ # transition to a failed state and stop launching new tasks. If
3735
+ # rollback is enabled, when a service deployment fails, the service is
3736
+ # rolled back to the last deployment that completed successfully.
3737
+ # @return [Types::DeploymentCircuitBreaker]
3738
+ #
3540
3739
  # @!attribute [rw] maximum_percent
3541
3740
  # If a service is using the rolling update (`ECS`) deployment type,
3542
3741
  # the **maximum percent** parameter represents an upper limit on the
@@ -3592,6 +3791,7 @@ module Aws::ECS
3592
3791
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentConfiguration AWS API Documentation
3593
3792
  #
3594
3793
  class DeploymentConfiguration < Struct.new(
3794
+ :deployment_circuit_breaker,
3595
3795
  :maximum_percent,
3596
3796
  :minimum_healthy_percent)
3597
3797
  SENSITIVE = []
@@ -4393,11 +4593,12 @@ module Aws::ECS
4393
4593
  # @!attribute [rw] access_point_id
4394
4594
  # The Amazon EFS access point ID to use. If an access point is
4395
4595
  # specified, the root directory value specified in the
4396
- # `EFSVolumeConfiguration` will be relative to the directory set for
4397
- # the access point. If an access point is used, transit encryption
4398
- # must be enabled in the `EFSVolumeConfiguration`. For more
4399
- # information, see [Working with Amazon EFS Access Points][1] in the
4400
- # *Amazon Elastic File System User Guide*.
4596
+ # `EFSVolumeConfiguration` must either be omitted or set to `/` which
4597
+ # will enforce the path set on the EFS access point. If an access
4598
+ # point is used, transit encryption must be enabled in the
4599
+ # `EFSVolumeConfiguration`. For more information, see [Working with
4600
+ # Amazon EFS Access Points][1] in the *Amazon Elastic File System User
4601
+ # Guide*.
4401
4602
  #
4402
4603
  #
4403
4604
  #
@@ -4458,6 +4659,10 @@ module Aws::ECS
4458
4659
  # directory inside the host. If this parameter is omitted, the root of
4459
4660
  # the Amazon EFS volume will be used. Specifying `/` will have the
4460
4661
  # same effect as omitting this parameter.
4662
+ #
4663
+ # If an EFS access point is specified in the `authorizationConfig`,
4664
+ # the root directory parameter must either be omitted or set to `/`
4665
+ # which will enforce the path set on the EFS access point.
4461
4666
  # @return [String]
4462
4667
  #
4463
4668
  # @!attribute [rw] transit_encryption
@@ -4553,7 +4758,108 @@ module Aws::ECS
4553
4758
  include Aws::Structure
4554
4759
  end
4555
4760
 
4556
- # A failed resource.
4761
+ # The authorization configuration details for Amazon FSx for Windows
4762
+ # File Server file system. See
4763
+ # [FSxWindowsFileServerVolumeConfiguration][1] in the *Amazon Elastic
4764
+ # Container Service API Reference*.
4765
+ #
4766
+ # For more information and the input format, see [Amazon FSx for Windows
4767
+ # File Server Volumes][2] in the *Amazon Elastic Container Service
4768
+ # Developer Guide*.
4769
+ #
4770
+ #
4771
+ #
4772
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_FSxWindowsFileServerVolumeConfiguration.html
4773
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/wfsx-volumes.html
4774
+ #
4775
+ # @note When making an API call, you may pass FSxWindowsFileServerAuthorizationConfig
4776
+ # data as a hash:
4777
+ #
4778
+ # {
4779
+ # credentials_parameter: "String", # required
4780
+ # domain: "String", # required
4781
+ # }
4782
+ #
4783
+ # @!attribute [rw] credentials_parameter
4784
+ # The authorization credential option to use. The authorization
4785
+ # credential options can be provided using either the Amazon Resource
4786
+ # Name (ARN) of an AWS Secrets Manager secret or AWS Systems Manager
4787
+ # Parameter Store parameter. The ARNs refer to the stored credentials.
4788
+ # @return [String]
4789
+ #
4790
+ # @!attribute [rw] domain
4791
+ # A fully qualified domain name hosted by an [AWS Directory
4792
+ # Service][1] Managed Microsoft AD (Active Directory) or self-hosted
4793
+ # AD on Amazon EC2.
4794
+ #
4795
+ #
4796
+ #
4797
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_microsoft_ad.html
4798
+ # @return [String]
4799
+ #
4800
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/FSxWindowsFileServerAuthorizationConfig AWS API Documentation
4801
+ #
4802
+ class FSxWindowsFileServerAuthorizationConfig < Struct.new(
4803
+ :credentials_parameter,
4804
+ :domain)
4805
+ SENSITIVE = []
4806
+ include Aws::Structure
4807
+ end
4808
+
4809
+ # This parameter is specified when you are using [Amazon FSx for Windows
4810
+ # File Server][1] file system for task storage.
4811
+ #
4812
+ # For more information and the input format, see [Amazon FSx for Windows
4813
+ # File Server Volumes][2] in the *Amazon Elastic Container Service
4814
+ # Developer Guide*.
4815
+ #
4816
+ #
4817
+ #
4818
+ # [1]: https://docs.aws.amazon.com/fsx/latest/WindowsGuide/what-is.html
4819
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/wfsx-volumes.html
4820
+ #
4821
+ # @note When making an API call, you may pass FSxWindowsFileServerVolumeConfiguration
4822
+ # data as a hash:
4823
+ #
4824
+ # {
4825
+ # file_system_id: "String", # required
4826
+ # root_directory: "String", # required
4827
+ # authorization_config: { # required
4828
+ # credentials_parameter: "String", # required
4829
+ # domain: "String", # required
4830
+ # },
4831
+ # }
4832
+ #
4833
+ # @!attribute [rw] file_system_id
4834
+ # The Amazon FSx for Windows File Server file system ID to use.
4835
+ # @return [String]
4836
+ #
4837
+ # @!attribute [rw] root_directory
4838
+ # The directory within the Amazon FSx for Windows File Server file
4839
+ # system to mount as the root directory inside the host.
4840
+ # @return [String]
4841
+ #
4842
+ # @!attribute [rw] authorization_config
4843
+ # The authorization configuration details for the Amazon FSx for
4844
+ # Windows File Server file system.
4845
+ # @return [Types::FSxWindowsFileServerAuthorizationConfig]
4846
+ #
4847
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/FSxWindowsFileServerVolumeConfiguration AWS API Documentation
4848
+ #
4849
+ class FSxWindowsFileServerVolumeConfiguration < Struct.new(
4850
+ :file_system_id,
4851
+ :root_directory,
4852
+ :authorization_config)
4853
+ SENSITIVE = []
4854
+ include Aws::Structure
4855
+ end
4856
+
4857
+ # A failed resource. For a list of common causes, see [API failure
4858
+ # reasons][1] in the *Amazon Elastic Container Service Developer Guide*.
4859
+ #
4860
+ #
4861
+ #
4862
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/api_failures_messages.html
4557
4863
  #
4558
4864
  # @!attribute [rw] arn
4559
4865
  # The Amazon Resource Name (ARN) of the failed resource.
@@ -4920,9 +5226,8 @@ module Aws::ECS
4920
5226
  # `CapAdd` in the [Create a container][1] section of the [Docker
4921
5227
  # Remote API][2] and the `--cap-add` option to [docker run][3].
4922
5228
  #
4923
- # <note markdown="1"> The `SYS_PTRACE` capability is supported for tasks that use the
4924
- # Fargate launch type if they are also using platform version 1.4.0.
4925
- # The other capabilities are not supported for any platform versions.
5229
+ # <note markdown="1"> Tasks launched on AWS Fargate only support adding the `SYS_PTRACE`
5230
+ # kernel capability.
4926
5231
  #
4927
5232
  # </note>
4928
5233
  #
@@ -4940,7 +5245,7 @@ module Aws::ECS
4940
5245
  #
4941
5246
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
4942
5247
  # [2]: https://docs.docker.com/engine/api/v1.35/
4943
- # [3]: https://docs.docker.com/engine/reference/run/
5248
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
4944
5249
  # @return [Array<String>]
4945
5250
  #
4946
5251
  # @!attribute [rw] drop
@@ -4963,7 +5268,7 @@ module Aws::ECS
4963
5268
  #
4964
5269
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
4965
5270
  # [2]: https://docs.docker.com/engine/api/v1.35/
4966
- # [3]: https://docs.docker.com/engine/reference/run/
5271
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
4967
5272
  # @return [Array<String>]
4968
5273
  #
4969
5274
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/KernelCapabilities AWS API Documentation
@@ -5066,7 +5371,7 @@ module Aws::ECS
5066
5371
  #
5067
5372
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
5068
5373
  # [2]: https://docs.docker.com/engine/api/v1.35/
5069
- # [3]: https://docs.docker.com/engine/reference/run/
5374
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
5070
5375
  # @return [Array<Types::Device>]
5071
5376
  #
5072
5377
  # @!attribute [rw] init_process_enabled
@@ -5080,7 +5385,7 @@ module Aws::ECS
5080
5385
  #
5081
5386
  #
5082
5387
  #
5083
- # [1]: https://docs.docker.com/engine/reference/run/
5388
+ # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5084
5389
  # @return [Boolean]
5085
5390
  #
5086
5391
  # @!attribute [rw] shared_memory_size
@@ -5094,7 +5399,7 @@ module Aws::ECS
5094
5399
  #
5095
5400
  #
5096
5401
  #
5097
- # [1]: https://docs.docker.com/engine/reference/run/
5402
+ # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5098
5403
  # @return [Integer]
5099
5404
  #
5100
5405
  # @!attribute [rw] tmpfs
@@ -5109,7 +5414,7 @@ module Aws::ECS
5109
5414
  #
5110
5415
  #
5111
5416
  #
5112
- # [1]: https://docs.docker.com/engine/reference/run/
5417
+ # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5113
5418
  # @return [Array<Types::Tmpfs>]
5114
5419
  #
5115
5420
  # @!attribute [rw] max_swap
@@ -5132,7 +5437,7 @@ module Aws::ECS
5132
5437
  #
5133
5438
  #
5134
5439
  #
5135
- # [1]: https://docs.docker.com/engine/reference/run/
5440
+ # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5136
5441
  # @return [Integer]
5137
5442
  #
5138
5443
  # @!attribute [rw] swappiness
@@ -5153,7 +5458,7 @@ module Aws::ECS
5153
5458
  #
5154
5459
  #
5155
5460
  #
5156
- # [1]: https://docs.docker.com/engine/reference/run/
5461
+ # [1]: https://docs.docker.com/engine/reference/run/#security-configuration
5157
5462
  # @return [Integer]
5158
5463
  #
5159
5464
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/LinuxParameters AWS API Documentation
@@ -6019,19 +6324,16 @@ module Aws::ECS
6019
6324
  include Aws::Structure
6020
6325
  end
6021
6326
 
6022
- # The log configuration specification for the container.
6327
+ # The log configuration for the container. This parameter maps to
6328
+ # `LogConfig` in the [Create a container][1] section of the [Docker
6329
+ # Remote API][2] and the `--log-driver` option to [ `docker run` ][3].
6023
6330
  #
6024
- # This parameter maps to `LogConfig` in the [Create a container][1]
6025
- # section of the [Docker Remote API][2] and the `--log-driver` option to
6026
- # [ `docker run` ][3]. By default, containers use the same logging
6027
- # driver that the Docker daemon uses; however the container may use a
6028
- # different logging driver than the Docker daemon by specifying a log
6029
- # driver with this parameter in the container definition. To use a
6030
- # different logging driver for a container, the log system must be
6031
- # configured properly on the container instance (or on a different log
6032
- # server for remote logging options). For more information on the
6033
- # options for different supported log drivers, see [Configure logging
6034
- # drivers][4] in the Docker documentation.
6331
+ # By default, containers use the same logging driver that the Docker
6332
+ # daemon uses; however the container may use a different logging driver
6333
+ # than the Docker daemon by specifying a log driver configuration in the
6334
+ # container definition. For more information on the options for
6335
+ # different supported log drivers, see [Configure logging drivers][4] in
6336
+ # the Docker documentation.
6035
6337
  #
6036
6338
  # The following should be noted when specifying a log configuration for
6037
6339
  # your containers:
@@ -6044,19 +6346,19 @@ module Aws::ECS
6044
6346
  # * This parameter requires version 1.18 of the Docker Remote API or
6045
6347
  # greater on your container instance.
6046
6348
  #
6047
- # * For tasks using the EC2 launch type, the Amazon ECS container agent
6048
- # running on a container instance must register the logging drivers
6049
- # available on that instance with the `ECS_AVAILABLE_LOGGING_DRIVERS`
6050
- # environment variable before containers placed on that instance can
6051
- # use these log configuration options. For more information, see
6052
- # [Amazon ECS Container Agent Configuration][5] in the *Amazon Elastic
6053
- # Container Service Developer Guide*.
6349
+ # * For tasks hosted on Amazon EC2 instances, the Amazon ECS container
6350
+ # agent must register the available logging drivers with the
6351
+ # `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before
6352
+ # containers placed on that instance can use these log configuration
6353
+ # options. For more information, see [Amazon ECS container agent
6354
+ # configuration][5] in the *Amazon Elastic Container Service Developer
6355
+ # Guide*.
6054
6356
  #
6055
- # * For tasks using the Fargate launch type, because you do not have
6056
- # access to the underlying infrastructure your tasks are hosted on,
6057
- # any additional software needed will have to be installed outside of
6058
- # the task. For example, the Fluentd output aggregators or a remote
6059
- # host running Logstash to send Gelf logs to.
6357
+ # * For tasks on AWS Fargate, because you do not have access to the
6358
+ # underlying infrastructure your tasks are hosted on, any additional
6359
+ # software needed will have to be installed outside of the task. For
6360
+ # example, the Fluentd output aggregators or a remote host running
6361
+ # Logstash to send Gelf logs to.
6060
6362
  #
6061
6363
  #
6062
6364
  #
@@ -6083,23 +6385,21 @@ module Aws::ECS
6083
6385
  # }
6084
6386
  #
6085
6387
  # @!attribute [rw] log_driver
6086
- # The log driver to use for the container. The valid values listed
6087
- # earlier are log drivers that the Amazon ECS container agent can
6088
- # communicate with by default.
6388
+ # The log driver to use for the container.
6089
6389
  #
6090
- # For tasks using the Fargate launch type, the supported log drivers
6091
- # are `awslogs`, `splunk`, and `awsfirelens`.
6390
+ # For tasks on AWS Fargate, the supported log drivers are `awslogs`,
6391
+ # `splunk`, and `awsfirelens`.
6092
6392
  #
6093
- # For tasks using the EC2 launch type, the supported log drivers are
6094
- # `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`,
6393
+ # For tasks hosted on Amazon EC2 instances, the supported log drivers
6394
+ # are `awslogs`, `fluentd`, `gelf`, `json-file`, `journald`,
6095
6395
  # `logentries`,`syslog`, `splunk`, and `awsfirelens`.
6096
6396
  #
6097
6397
  # For more information about using the `awslogs` log driver, see
6098
- # [Using the awslogs Log Driver][1] in the *Amazon Elastic Container
6398
+ # [Using the awslogs log driver][1] in the *Amazon Elastic Container
6099
6399
  # Service Developer Guide*.
6100
6400
  #
6101
6401
  # For more information about using the `awsfirelens` log driver, see
6102
- # [Custom Log Routing][2] in the *Amazon Elastic Container Service
6402
+ # [Custom log routing][2] in the *Amazon Elastic Container Service
6103
6403
  # Developer Guide*.
6104
6404
  #
6105
6405
  # <note markdown="1"> If you have a custom driver that is not listed, you can fork the
@@ -6172,6 +6472,7 @@ module Aws::ECS
6172
6472
  # target_capacity: 1,
6173
6473
  # minimum_scaling_step_size: 1,
6174
6474
  # maximum_scaling_step_size: 1,
6475
+ # instance_warmup_period: 1,
6175
6476
  # }
6176
6477
  #
6177
6478
  # @!attribute [rw] status
@@ -6197,13 +6498,21 @@ module Aws::ECS
6197
6498
  # default value of `10000` is used.
6198
6499
  # @return [Integer]
6199
6500
  #
6501
+ # @!attribute [rw] instance_warmup_period
6502
+ # The period of time, in seconds, after a newly launched Amazon EC2
6503
+ # instance can contribute to CloudWatch metrics for Auto Scaling
6504
+ # group. If this parameter is omitted, the default value of `300`
6505
+ # seconds is used.
6506
+ # @return [Integer]
6507
+ #
6200
6508
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ManagedScaling AWS API Documentation
6201
6509
  #
6202
6510
  class ManagedScaling < Struct.new(
6203
6511
  :status,
6204
6512
  :target_capacity,
6205
6513
  :minimum_scaling_step_size,
6206
- :maximum_scaling_step_size)
6514
+ :maximum_scaling_step_size,
6515
+ :instance_warmup_period)
6207
6516
  SENSITIVE = []
6208
6517
  include Aws::Structure
6209
6518
  end
@@ -6538,9 +6847,6 @@ module Aws::ECS
6538
6847
  # more information, see `hostPort`. Port mappings that are
6539
6848
  # automatically assigned in this way do not count toward the 100
6540
6849
  # reserved ports limit of a container instance.
6541
- #
6542
- # You cannot expose the same container port for multiple protocols. An
6543
- # error will be returned if this is attempted.
6544
6850
  # @return [Integer]
6545
6851
  #
6546
6852
  # @!attribute [rw] host_port
@@ -6606,11 +6912,7 @@ module Aws::ECS
6606
6912
  # your container instances are launched from the Amazon ECS-optimized
6607
6913
  # AMI version `20190301` or later, then they contain the required
6608
6914
  # versions of the container agent and `ecs-init`. For more information,
6609
- # see [Amazon ECS-optimized Linux AMI][1] in the *Amazon Elastic
6610
- # Container Service Developer Guide*.
6611
- #
6612
- # For tasks using the Fargate launch type, the task or service requires
6613
- # platform version 1.3.0 or later.
6915
+ # see [Amazon ECS-optimized Linux AMI][1]
6614
6916
  #
6615
6917
  #
6616
6918
  #
@@ -7253,6 +7555,14 @@ module Aws::ECS
7253
7555
  # iam: "ENABLED", # accepts ENABLED, DISABLED
7254
7556
  # },
7255
7557
  # },
7558
+ # fsx_windows_file_server_volume_configuration: {
7559
+ # file_system_id: "String", # required
7560
+ # root_directory: "String", # required
7561
+ # authorization_config: { # required
7562
+ # credentials_parameter: "String", # required
7563
+ # domain: "String", # required
7564
+ # },
7565
+ # },
7256
7566
  # },
7257
7567
  # ],
7258
7568
  # placement_constraints: [
@@ -7324,16 +7634,17 @@ module Aws::ECS
7324
7634
  #
7325
7635
  # @!attribute [rw] network_mode
7326
7636
  # The Docker networking mode to use for the containers in the task.
7327
- # The valid values are `none`, `bridge`, `awsvpc`, and `host`. The
7328
- # default Docker network mode is `bridge`. If you are using the
7329
- # Fargate launch type, the `awsvpc` network mode is required. If you
7330
- # are using the EC2 launch type, any network mode can be used. If the
7331
- # network mode is set to `none`, you cannot specify port mappings in
7332
- # your container definitions, and the tasks containers do not have
7333
- # external connectivity. The `host` and `awsvpc` network modes offer
7334
- # the highest networking performance for containers because they use
7335
- # the EC2 network stack instead of the virtualized network stack
7336
- # provided by the `bridge` mode.
7637
+ # The valid values are `none`, `bridge`, `awsvpc`, and `host`. If no
7638
+ # network mode is specified, the default is `bridge`.
7639
+ #
7640
+ # For Amazon ECS tasks on Fargate, the `awsvpc` network mode is
7641
+ # required. For Amazon ECS tasks on Amazon EC2 instances, any network
7642
+ # mode can be used. If the network mode is set to `none`, you cannot
7643
+ # specify port mappings in your container definitions, and the tasks
7644
+ # containers do not have external connectivity. The `host` and
7645
+ # `awsvpc` network modes offer the highest networking performance for
7646
+ # containers because they use the EC2 network stack instead of the
7647
+ # virtualized network stack provided by the `bridge` mode.
7337
7648
  #
7338
7649
  # With the `host` and `awsvpc` network modes, exposed container ports
7339
7650
  # are mapped directly to the corresponding host port (for the `host`
@@ -7341,6 +7652,10 @@ module Aws::ECS
7341
7652
  # the `awsvpc` network mode), so you cannot take advantage of dynamic
7342
7653
  # host port mappings.
7343
7654
  #
7655
+ # When using the `host` network mode, you should not run containers
7656
+ # using the root user (UID 0). It is considered best practice to use a
7657
+ # non-root user.
7658
+ #
7344
7659
  # If the network mode is `awsvpc`, the task is allocated an elastic
7345
7660
  # network interface, and you must specify a NetworkConfiguration value
7346
7661
  # when you create a service or run a task with the task definition.
@@ -7390,8 +7705,10 @@ module Aws::ECS
7390
7705
  # @return [Array<Types::TaskDefinitionPlacementConstraint>]
7391
7706
  #
7392
7707
  # @!attribute [rw] requires_compatibilities
7393
- # The launch type required by the task. If no value is specified, it
7394
- # defaults to `EC2`.
7708
+ # The task launch type that Amazon ECS should validate the task
7709
+ # definition against. This ensures that the task definition parameters
7710
+ # are compatible with the specified launch type. If no value is
7711
+ # specified, it defaults to `EC2`.
7395
7712
  # @return [Array<String>]
7396
7713
  #
7397
7714
  # @!attribute [rw] cpu
@@ -7574,11 +7891,7 @@ module Aws::ECS
7574
7891
  # If your container instances are launched from the Amazon
7575
7892
  # ECS-optimized AMI version `20190301` or later, then they contain the
7576
7893
  # required versions of the container agent and `ecs-init`. For more
7577
- # information, see [Amazon ECS-optimized Linux AMI][1] in the *Amazon
7578
- # Elastic Container Service Developer Guide*.
7579
- #
7580
- # For tasks using the Fargate launch type, the task or service
7581
- # requires platform version 1.3.0 or later.
7894
+ # information, see [Amazon ECS-optimized Linux AMI][1]
7582
7895
  #
7583
7896
  #
7584
7897
  #
@@ -9091,7 +9404,7 @@ module Aws::ECS
9091
9404
  #
9092
9405
  # [1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
9093
9406
  # [2]: https://docs.docker.com/engine/api/v1.35/
9094
- # [3]: https://docs.docker.com/engine/reference/run/
9407
+ # [3]: https://docs.docker.com/engine/reference/run/#security-configuration
9095
9408
  #
9096
9409
  # @note When making an API call, you may pass SystemControl
9097
9410
  # data as a hash:
@@ -9624,16 +9937,17 @@ module Aws::ECS
9624
9937
  #
9625
9938
  # @!attribute [rw] network_mode
9626
9939
  # The Docker networking mode to use for the containers in the task.
9627
- # The valid values are `none`, `bridge`, `awsvpc`, and `host`. The
9628
- # default Docker network mode is `bridge`. If you are using the
9629
- # Fargate launch type, the `awsvpc` network mode is required. If you
9630
- # are using the EC2 launch type, any network mode can be used. If the
9631
- # network mode is set to `none`, you cannot specify port mappings in
9632
- # your container definitions, and the tasks containers do not have
9633
- # external connectivity. The `host` and `awsvpc` network modes offer
9634
- # the highest networking performance for containers because they use
9635
- # the EC2 network stack instead of the virtualized network stack
9636
- # provided by the `bridge` mode.
9940
+ # The valid values are `none`, `bridge`, `awsvpc`, and `host`. If no
9941
+ # network mode is specified, the default is `bridge`.
9942
+ #
9943
+ # For Amazon ECS tasks on Fargate, the `awsvpc` network mode is
9944
+ # required. For Amazon ECS tasks on Amazon EC2 instances, any network
9945
+ # mode can be used. If the network mode is set to `none`, you cannot
9946
+ # specify port mappings in your container definitions, and the tasks
9947
+ # containers do not have external connectivity. The `host` and
9948
+ # `awsvpc` network modes offer the highest networking performance for
9949
+ # containers because they use the EC2 network stack instead of the
9950
+ # virtualized network stack provided by the `bridge` mode.
9637
9951
  #
9638
9952
  # With the `host` and `awsvpc` network modes, exposed container ports
9639
9953
  # are mapped directly to the corresponding host port (for the `host`
@@ -9641,6 +9955,10 @@ module Aws::ECS
9641
9955
  # the `awsvpc` network mode), so you cannot take advantage of dynamic
9642
9956
  # host port mappings.
9643
9957
  #
9958
+ # When using the `host` network mode, you should not run containers
9959
+ # using the root user (UID 0). It is considered best practice to use a
9960
+ # non-root user.
9961
+ #
9644
9962
  # If the network mode is `awsvpc`, the task is allocated an elastic
9645
9963
  # network interface, and you must specify a NetworkConfiguration value
9646
9964
  # when you create a service or run a task with the task definition.
@@ -9753,9 +10071,12 @@ module Aws::ECS
9753
10071
  # @!attribute [rw] memory
9754
10072
  # The amount (in MiB) of memory used by the task.
9755
10073
  #
9756
- # If using the EC2 launch type, this field is optional and any value
9757
- # can be used. If a task-level memory value is specified then the
9758
- # container-level memory value is optional.
10074
+ # If using the EC2 launch type, you must specify either a task-level
10075
+ # memory value or a container-level memory value. This field is
10076
+ # optional and any value can be used. If a task-level memory value is
10077
+ # specified then the container-level memory value is optional. For
10078
+ # more information regarding container-level memory and memory
10079
+ # reservation, see [ContainerDefinition][1].
9759
10080
  #
9760
10081
  # If using the Fargate launch type, this field is required and you
9761
10082
  # must use one of the following values, which determines your range of
@@ -9775,6 +10096,10 @@ module Aws::ECS
9775
10096
  #
9776
10097
  # * Between 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB)
9777
10098
  # - Available `cpu` values: 4096 (4 vCPU)
10099
+ #
10100
+ #
10101
+ #
10102
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDefinition.html
9778
10103
  # @return [String]
9779
10104
  #
9780
10105
  # @!attribute [rw] inference_accelerators
@@ -9865,6 +10190,18 @@ module Aws::ECS
9865
10190
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html
9866
10191
  # @return [Types::ProxyConfiguration]
9867
10192
  #
10193
+ # @!attribute [rw] registered_at
10194
+ # The Unix timestamp for when the task definition was registered.
10195
+ # @return [Time]
10196
+ #
10197
+ # @!attribute [rw] deregistered_at
10198
+ # The Unix timestamp for when the task definition was deregistered.
10199
+ # @return [Time]
10200
+ #
10201
+ # @!attribute [rw] registered_by
10202
+ # The principal that registered the task definition.
10203
+ # @return [String]
10204
+ #
9868
10205
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/TaskDefinition AWS API Documentation
9869
10206
  #
9870
10207
  class TaskDefinition < Struct.new(
@@ -9886,7 +10223,10 @@ module Aws::ECS
9886
10223
  :inference_accelerators,
9887
10224
  :pid_mode,
9888
10225
  :ipc_mode,
9889
- :proxy_configuration)
10226
+ :proxy_configuration,
10227
+ :registered_at,
10228
+ :deregistered_at,
10229
+ :registered_by)
9890
10230
  SENSITIVE = []
9891
10231
  include Aws::Structure
9892
10232
  end
@@ -10272,7 +10612,7 @@ module Aws::ECS
10272
10612
  # @return [String]
10273
10613
  #
10274
10614
  # @!attribute [rw] size
10275
- # The size (in MiB) of the tmpfs volume.
10615
+ # The maximum size (in MiB) of the tmpfs volume.
10276
10616
  # @return [Integer]
10277
10617
  #
10278
10618
  # @!attribute [rw] mount_options
@@ -10368,6 +10708,53 @@ module Aws::ECS
10368
10708
  #
10369
10709
  class UntagResourceResponse < Aws::EmptyStructure; end
10370
10710
 
10711
+ # @note When making an API call, you may pass UpdateCapacityProviderRequest
10712
+ # data as a hash:
10713
+ #
10714
+ # {
10715
+ # name: "String", # required
10716
+ # auto_scaling_group_provider: { # required
10717
+ # managed_scaling: {
10718
+ # status: "ENABLED", # accepts ENABLED, DISABLED
10719
+ # target_capacity: 1,
10720
+ # minimum_scaling_step_size: 1,
10721
+ # maximum_scaling_step_size: 1,
10722
+ # instance_warmup_period: 1,
10723
+ # },
10724
+ # managed_termination_protection: "ENABLED", # accepts ENABLED, DISABLED
10725
+ # },
10726
+ # }
10727
+ #
10728
+ # @!attribute [rw] name
10729
+ # The name of the capacity provider to update.
10730
+ # @return [String]
10731
+ #
10732
+ # @!attribute [rw] auto_scaling_group_provider
10733
+ # An object representing the parameters to update for the Auto Scaling
10734
+ # group capacity provider.
10735
+ # @return [Types::AutoScalingGroupProviderUpdate]
10736
+ #
10737
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateCapacityProviderRequest AWS API Documentation
10738
+ #
10739
+ class UpdateCapacityProviderRequest < Struct.new(
10740
+ :name,
10741
+ :auto_scaling_group_provider)
10742
+ SENSITIVE = []
10743
+ include Aws::Structure
10744
+ end
10745
+
10746
+ # @!attribute [rw] capacity_provider
10747
+ # The details of a capacity provider.
10748
+ # @return [Types::CapacityProvider]
10749
+ #
10750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateCapacityProviderResponse AWS API Documentation
10751
+ #
10752
+ class UpdateCapacityProviderResponse < Struct.new(
10753
+ :capacity_provider)
10754
+ SENSITIVE = []
10755
+ include Aws::Structure
10756
+ end
10757
+
10371
10758
  # @note When making an API call, you may pass UpdateClusterSettingsRequest
10372
10759
  # data as a hash:
10373
10760
  #
@@ -10590,6 +10977,10 @@ module Aws::ECS
10590
10977
  # },
10591
10978
  # ],
10592
10979
  # deployment_configuration: {
10980
+ # deployment_circuit_breaker: {
10981
+ # enable: false, # required
10982
+ # rollback: false, # required
10983
+ # },
10593
10984
  # maximum_percent: 1,
10594
10985
  # minimum_healthy_percent: 1,
10595
10986
  # },
@@ -10872,12 +11263,14 @@ module Aws::ECS
10872
11263
  include Aws::Structure
10873
11264
  end
10874
11265
 
10875
- # A data volume used in a task definition. For tasks that use Amazon
10876
- # Elastic File System (Amazon EFS) file storage, specify an
10877
- # `efsVolumeConfiguration`. For tasks that use a Docker volume, specify
10878
- # a `DockerVolumeConfiguration`. For tasks that use a bind mount host
10879
- # volume, specify a `host` and optional `sourcePath`. For more
10880
- # information, see [Using Data Volumes in Tasks][1].
11266
+ # A data volume used in a task definition. For tasks that use the Amazon
11267
+ # Elastic File System (Amazon EFS), specify an `efsVolumeConfiguration`.
11268
+ # For Windows tasks that use Amazon FSx for Windows File Server file
11269
+ # system, specify a `fsxWindowsFileServerVolumeConfiguration`. For tasks
11270
+ # that use a Docker volume, specify a `DockerVolumeConfiguration`. For
11271
+ # tasks that use a bind mount host volume, specify a `host` and optional
11272
+ # `sourcePath`. For more information, see [Using Data Volumes in
11273
+ # Tasks][1].
10881
11274
  #
10882
11275
  #
10883
11276
  #
@@ -10912,6 +11305,14 @@ module Aws::ECS
10912
11305
  # iam: "ENABLED", # accepts ENABLED, DISABLED
10913
11306
  # },
10914
11307
  # },
11308
+ # fsx_windows_file_server_volume_configuration: {
11309
+ # file_system_id: "String", # required
11310
+ # root_directory: "String", # required
11311
+ # authorization_config: { # required
11312
+ # credentials_parameter: "String", # required
11313
+ # domain: "String", # required
11314
+ # },
11315
+ # },
10915
11316
  # }
10916
11317
  #
10917
11318
  # @!attribute [rw] name
@@ -10948,13 +11349,19 @@ module Aws::ECS
10948
11349
  # File System file system for task storage.
10949
11350
  # @return [Types::EFSVolumeConfiguration]
10950
11351
  #
11352
+ # @!attribute [rw] fsx_windows_file_server_volume_configuration
11353
+ # This parameter is specified when you are using Amazon FSx for
11354
+ # Windows File Server file system for task storage.
11355
+ # @return [Types::FSxWindowsFileServerVolumeConfiguration]
11356
+ #
10951
11357
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Volume AWS API Documentation
10952
11358
  #
10953
11359
  class Volume < Struct.new(
10954
11360
  :name,
10955
11361
  :host,
10956
11362
  :docker_volume_configuration,
10957
- :efs_volume_configuration)
11363
+ :efs_volume_configuration,
11364
+ :fsx_windows_file_server_volume_configuration)
10958
11365
  SENSITIVE = []
10959
11366
  include Aws::Structure
10960
11367
  end