aws-sdk-ecs 1.236.0 → 1.238.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e7a766db64a652a9b9cf78f5b0e741778269d306df11f2638f64fbb144ae95c1
4
- data.tar.gz: 66a333a5bf3e6fa60de495a249b01604b91dbd8a5f8e94db0eba3bfd916c6956
3
+ metadata.gz: 7cb318724f73d1a7e40ec775154e7c7c35bdccc5d575c2eeb4b0845f9facb89e
4
+ data.tar.gz: 874349088dc3c7e751b772ed04e8e7d8090e425fadc927f18b3e0f8621ae3be4
5
5
  SHA512:
6
- metadata.gz: 7c82b107776f99d2b50cffbd3f668ef40bdf53ee485102e59719793be3d69c0428b7106b663e7a6f2b579aed6c59f1ac09e12b6ecf7e770b46418de16ee0745e
7
- data.tar.gz: 484a9c0f0278554dfa83d960b40281d58ea8764d8294099c69345856b698e9018cfbeddb32610646980bd343651a4b78dccc26b76f4fa8f025ffad70b61f2b41
6
+ metadata.gz: 3de3597aca2dfceaf276de4f0c0033dcba479dc3aa0fc143e292714a0eedbe2cb1b76c2822514b94bcb3d6e425ac32c95d6ea15f1e0d39a6b2c43cdf6d2759b5
7
+ data.tar.gz: b3042dd2689112a0043568fc4a913c019f29840b7f31cfd12e26a6888e95401f29bb78c60ac53c73200d78e90efbe38fdd87ce022a546b376296b0eda5f5ca71
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.238.0 (2026-06-18)
5
+ ------------------
6
+
7
+ * Feature - Amazon ECS services now support high resolution (20 second) CloudWatch metrics for CPUUtilization and MemoryUtilization. Use these metrics for faster service auto scaling.
8
+
9
+ 1.237.0 (2026-06-17)
10
+ ------------------
11
+
12
+ * Feature - Releasing the ability to bring-your-own task-definition for CreateExpressGatewayService and UpdateGatewayExpressService
13
+
4
14
  1.236.0 (2026-06-10)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.236.0
1
+ 1.238.0
@@ -493,9 +493,14 @@ module Aws::ECS
493
493
  # [DescribeServiceDeployments][1] and inspect the `lifecycleHookDetails`
494
494
  # field.
495
495
  #
496
+ # For more information, see [Continuing Amazon ECS service
497
+ # deployments][2] in the *Amazon Elastic Container Service Developer
498
+ # Guide*.
499
+ #
496
500
  #
497
501
  #
498
502
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeServiceDeployments.html
503
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/continue-service-deployment.html
499
504
  #
500
505
  # @option params [required, String] :service_deployment_arn
501
506
  # The ARN of the service deployment to continue or roll back.
@@ -531,7 +536,7 @@ module Aws::ECS
531
536
  #
532
537
  # resp = client.continue_service_deployment({
533
538
  # action: "CONTINUE",
534
- # hook_id: "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",
539
+ # hook_id: "ecs-pause-Xk7rT2mP9sLwQn4vB8fYd3hJ6gA1cE5iO0uR_ZpWq",
535
540
  # service_deployment_arn: "arn:aws:ecs:us-east-1:123456789012:service-deployment/MyCluster/MyService/r9i43YFjvgF_xlg7m2eJ1r",
536
541
  # })
537
542
  #
@@ -547,7 +552,7 @@ module Aws::ECS
547
552
  #
548
553
  # resp = client.continue_service_deployment({
549
554
  # action: "ROLLBACK",
550
- # hook_id: "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",
555
+ # hook_id: "ecs-pause-Xk7rT2mP9sLwQn4vB8fYd3hJ6gA1cE5iO0uR_ZpWq",
551
556
  # service_deployment_arn: "arn:aws:ecs:us-east-1:123456789012:service-deployment/MyCluster/MyService/r9i43YFjvgF_xlg7m2eJ1r",
552
557
  # })
553
558
  #
@@ -1326,7 +1331,7 @@ module Aws::ECS
1326
1331
  # Provide an execution role for task operations and an infrastructure
1327
1332
  # role for managing Amazon Web Services resources on your behalf.
1328
1333
  #
1329
- # @option params [required, String] :execution_role_arn
1334
+ # @option params [String] :execution_role_arn
1330
1335
  # The Amazon Resource Name (ARN) of the task execution role that grants
1331
1336
  # the Amazon ECS container agent permission to make Amazon Web Services
1332
1337
  # API calls on your behalf. This role is required for Amazon ECS to pull
@@ -1378,7 +1383,7 @@ module Aws::ECS
1378
1383
  # check path must start with a forward slash and can include query
1379
1384
  # parameters. Examples: `/health`, `/api/status`, `/ping?format=json`.
1380
1385
  #
1381
- # @option params [required, Types::ExpressGatewayContainer] :primary_container
1386
+ # @option params [Types::ExpressGatewayContainer] :primary_container
1382
1387
  # The primary container configuration for the Express service. This
1383
1388
  # defines the main application container that will receive traffic from
1384
1389
  # the Application Load Balancer.
@@ -1436,6 +1441,20 @@ module Aws::ECS
1436
1441
  # and organize it. Each tag consists of a key and an optional value. You
1437
1442
  # can apply up to 50 tags to a service.
1438
1443
  #
1444
+ # @option params [String] :task_definition_arn
1445
+ # The Amazon Resource Name (ARN) of a task definition to use to create
1446
+ # the Express Gateway service. This allows you to manage your own task
1447
+ # definition, giving you more control over the service configuration
1448
+ # such as adding sidecar containers.
1449
+ #
1450
+ # The task definition must have a container named `Main` with a single
1451
+ # TCP port mapping that includes a container port and port name. The
1452
+ # task definition must also have `FARGATE` compatibility.
1453
+ #
1454
+ # If you provide a task definition ARN, you cannot also specify
1455
+ # `primaryContainer`, `executionRoleArn`, `taskRoleArn`, `cpu`, or
1456
+ # `memory`.
1457
+ #
1439
1458
  # @return [Types::CreateExpressGatewayServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1440
1459
  #
1441
1460
  # * {Types::CreateExpressGatewayServiceResponse#service #service} => Types::ECSExpressGatewayService
@@ -1443,12 +1462,12 @@ module Aws::ECS
1443
1462
  # @example Request syntax with placeholder values
1444
1463
  #
1445
1464
  # resp = client.create_express_gateway_service({
1446
- # execution_role_arn: "String", # required
1465
+ # execution_role_arn: "String",
1447
1466
  # infrastructure_role_arn: "String", # required
1448
1467
  # service_name: "String",
1449
1468
  # cluster: "String",
1450
1469
  # health_check_path: "String",
1451
- # primary_container: { # required
1470
+ # primary_container: {
1452
1471
  # image: "String", # required
1453
1472
  # container_port: 1,
1454
1473
  # aws_logs_configuration: {
@@ -1491,6 +1510,7 @@ module Aws::ECS
1491
1510
  # value: "TagValue",
1492
1511
  # },
1493
1512
  # ],
1513
+ # task_definition_arn: "String",
1494
1514
  # })
1495
1515
  #
1496
1516
  # @example Response structure
@@ -1506,6 +1526,7 @@ module Aws::ECS
1506
1526
  # resp.service.active_configurations[0].service_revision_arn #=> String
1507
1527
  # resp.service.active_configurations[0].execution_role_arn #=> String
1508
1528
  # resp.service.active_configurations[0].task_role_arn #=> String
1529
+ # resp.service.active_configurations[0].task_definition_arn #=> String
1509
1530
  # resp.service.active_configurations[0].cpu #=> String
1510
1531
  # resp.service.active_configurations[0].memory #=> String
1511
1532
  # resp.service.active_configurations[0].network_configuration.security_groups #=> Array
@@ -2150,6 +2171,12 @@ module Aws::ECS
2150
2171
  # @option params [Array<Types::VpcLatticeConfiguration>] :vpc_lattice_configurations
2151
2172
  # The VPC Lattice configuration for the service being created.
2152
2173
  #
2174
+ # @option params [Types::MonitoringConfiguration] :monitoring
2175
+ # The optional monitoring configuration for the service, which defines
2176
+ # the resolution for the service-level `CPUUtilization` and
2177
+ # `MemoryUtilization` Amazon CloudWatch metrics. When not specified,
2178
+ # Amazon ECS uses the default resolution of `60` seconds.
2179
+ #
2153
2180
  # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2154
2181
  #
2155
2182
  # * {Types::CreateServiceResponse#service #service} => Types::Service
@@ -2347,6 +2374,47 @@ module Aws::ECS
2347
2374
  # },
2348
2375
  # }
2349
2376
  #
2377
+ # @example Example: To create a service with a monitoring configuration
2378
+ #
2379
+ # # This example creates a service with a monitoring configuration that sets 20-second resolution for CPUUtilization and
2380
+ # # MemoryUtilization CloudWatch metrics. The monitoring configuration is not returned in the CreateService response. Use
2381
+ # # DescribeServiceRevisions to view the monitoring configuration.
2382
+ #
2383
+ # resp = client.create_service({
2384
+ # desired_count: 2,
2385
+ # monitoring: {
2386
+ # metric_configurations: [
2387
+ # {
2388
+ # metric_names: [
2389
+ # "CPUUtilization",
2390
+ # "MemoryUtilization",
2391
+ # ],
2392
+ # resolution_seconds: 20,
2393
+ # },
2394
+ # ],
2395
+ # },
2396
+ # service_name: "ecs-monitored-service",
2397
+ # task_definition: "my-app:1",
2398
+ # })
2399
+ #
2400
+ # resp.to_h outputs the following:
2401
+ # {
2402
+ # service: {
2403
+ # cluster_arn: "arn:aws:ecs:us-east-1:012345678910:cluster/default",
2404
+ # deployment_configuration: {
2405
+ # maximum_percent: 200,
2406
+ # minimum_healthy_percent: 100,
2407
+ # },
2408
+ # desired_count: 2,
2409
+ # pending_count: 0,
2410
+ # running_count: 0,
2411
+ # service_arn: "arn:aws:ecs:us-east-1:012345678910:service/default/ecs-monitored-service",
2412
+ # service_name: "ecs-monitored-service",
2413
+ # status: "ACTIVE",
2414
+ # task_definition: "arn:aws:ecs:us-east-1:012345678910:task-definition/my-app:1",
2415
+ # },
2416
+ # }
2417
+ #
2350
2418
  # @example Request syntax with placeholder values
2351
2419
  #
2352
2420
  # resp = client.create_service({
@@ -2546,6 +2614,14 @@ module Aws::ECS
2546
2614
  # port_name: "String", # required
2547
2615
  # },
2548
2616
  # ],
2617
+ # monitoring: {
2618
+ # metric_configurations: [
2619
+ # {
2620
+ # metric_names: ["MetricName"], # required
2621
+ # resolution_seconds: 1, # required
2622
+ # },
2623
+ # ],
2624
+ # },
2549
2625
  # })
2550
2626
  #
2551
2627
  # @example Response structure
@@ -3674,6 +3750,7 @@ module Aws::ECS
3674
3750
  # resp.service.active_configurations[0].service_revision_arn #=> String
3675
3751
  # resp.service.active_configurations[0].execution_role_arn #=> String
3676
3752
  # resp.service.active_configurations[0].task_role_arn #=> String
3753
+ # resp.service.active_configurations[0].task_definition_arn #=> String
3677
3754
  # resp.service.active_configurations[0].cpu #=> String
3678
3755
  # resp.service.active_configurations[0].memory #=> String
3679
3756
  # resp.service.active_configurations[0].network_configuration.security_groups #=> Array
@@ -5951,6 +6028,7 @@ module Aws::ECS
5951
6028
  # resp.service.active_configurations[0].service_revision_arn #=> String
5952
6029
  # resp.service.active_configurations[0].execution_role_arn #=> String
5953
6030
  # resp.service.active_configurations[0].task_role_arn #=> String
6031
+ # resp.service.active_configurations[0].task_definition_arn #=> String
5954
6032
  # resp.service.active_configurations[0].cpu #=> String
5955
6033
  # resp.service.active_configurations[0].memory #=> String
5956
6034
  # resp.service.active_configurations[0].network_configuration.security_groups #=> Array
@@ -6097,7 +6175,7 @@ module Aws::ECS
6097
6175
  # lifecycle_hook_details: [
6098
6176
  # {
6099
6177
  # expires_at: Time.parse("2026-05-06T17:00:00.000Z"),
6100
- # hook_id: "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",
6178
+ # hook_id: "ecs-pause-Xk7rT2mP9sLwQn4vB8fYd3hJ6gA1cE5iO0uR_ZpWq",
6101
6179
  # status: "AWAITING_ACTION",
6102
6180
  # target_type: "PAUSE",
6103
6181
  # timeout_action: "ROLLBACK",
@@ -6276,6 +6354,46 @@ module Aws::ECS
6276
6354
  # ],
6277
6355
  # }
6278
6356
  #
6357
+ # @example Example: To describe a service revision with a monitoring configuration
6358
+ #
6359
+ # # This example describes a service revision that has a monitoring configuration with 20-second resolution for
6360
+ # # CPUUtilization and MemoryUtilization CloudWatch metrics.
6361
+ #
6362
+ # resp = client.describe_service_revisions({
6363
+ # service_revision_arns: [
6364
+ # "arn:aws:ecs:us-east-1:012345678910:service-revision/default/ecs-monitored-service/8675309012345678901",
6365
+ # ],
6366
+ # })
6367
+ #
6368
+ # resp.to_h outputs the following:
6369
+ # {
6370
+ # failures: [
6371
+ # ],
6372
+ # service_revisions: [
6373
+ # {
6374
+ # cluster_arn: "arn:aws:ecs:us-east-1:012345678910:cluster/default",
6375
+ # created_at: Time.parse("2026-06-10T12:00:00.00Z"),
6376
+ # launch_type: "FARGATE",
6377
+ # monitoring: {
6378
+ # metric_configurations: [
6379
+ # {
6380
+ # metric_names: [
6381
+ # "CPUUtilization",
6382
+ # "MemoryUtilization",
6383
+ # ],
6384
+ # resolution_seconds: 20,
6385
+ # },
6386
+ # ],
6387
+ # },
6388
+ # platform_family: "DockerLinux",
6389
+ # platform_version: "1.4.0",
6390
+ # service_arn: "arn:aws:ecs:us-east-1:012345678910:service/default/ecs-monitored-service",
6391
+ # service_revision_arn: "arn:aws:ecs:us-east-1:012345678910:service-revision/default/ecs-monitored-service/8675309012345678901",
6392
+ # task_definition: "arn:aws:ecs:us-east-1:012345678910:task-definition/my-app:1",
6393
+ # },
6394
+ # ],
6395
+ # }
6396
+ #
6279
6397
  # @example Request syntax with placeholder values
6280
6398
  #
6281
6399
  # resp = client.describe_service_revisions({
@@ -6439,6 +6557,10 @@ module Aws::ECS
6439
6557
  # resp.service_revisions[0].ecs_managed_resources.log_groups[0].status_reason #=> String
6440
6558
  # resp.service_revisions[0].ecs_managed_resources.log_groups[0].updated_at #=> Time
6441
6559
  # resp.service_revisions[0].ecs_managed_resources.log_groups[0].log_group_name #=> String
6560
+ # resp.service_revisions[0].monitoring.metric_configurations #=> Array
6561
+ # resp.service_revisions[0].monitoring.metric_configurations[0].metric_names #=> Array
6562
+ # resp.service_revisions[0].monitoring.metric_configurations[0].metric_names[0] #=> String
6563
+ # resp.service_revisions[0].monitoring.metric_configurations[0].resolution_seconds #=> Integer
6442
6564
  # resp.failures #=> Array
6443
6565
  # resp.failures[0].arn #=> String
6444
6566
  # resp.failures[0].reason #=> String
@@ -8372,7 +8494,7 @@ module Aws::ECS
8372
8494
  #
8373
8495
  # @option params [String] :cluster_arn
8374
8496
  # The Amazon Resource Name (ARN) of the cluster to filter daemons by. If
8375
- # not specified, daemons from all clusters are returned.
8497
+ # you do not specify a cluster, the default cluster is assumed.
8376
8498
  #
8377
8499
  # @option params [Array<String>] :capacity_provider_arns
8378
8500
  # The Amazon Resource Names (ARNs) of the capacity providers to filter
@@ -10393,18 +10515,24 @@ module Aws::ECS
10393
10515
  # your tags per resource limit.
10394
10516
  #
10395
10517
  # @option params [String] :pid_mode
10396
- # The process namespace mode for the daemon. When set to `shared`, the
10397
- # daemon shares the PID namespace with co-located tasks on the same
10398
- # container instance, giving the daemon visibility into application
10399
- # processes. When set to `none`, the daemon gets its own isolated PID
10400
- # namespace. The default is `none`.
10518
+ # The PID namespace mode for the daemon. The valid values are `none` and
10519
+ # `shared`. The default is `none`.
10520
+ #
10521
+ # If `none` is specified or no value is provided, the daemon runs with
10522
+ # its own PID namespace, isolated from other tasks. If `shared` is
10523
+ # specified, the daemon joins the host PID namespace, making it
10524
+ # accessible to non-daemon tasks that use `pidMode: "host"` or other
10525
+ # daemons that use `pidMode: "shared"`.
10401
10526
  #
10402
10527
  # @option params [String] :ipc_mode
10403
- # The IPC namespace mode for the daemon. When set to `shared`, the
10404
- # daemon shares the IPC namespace with co-located tasks on the same
10405
- # container instance, allowing communication through POSIX shared
10406
- # memory, semaphores, and message queues. When set to `none`, the daemon
10407
- # gets its own isolated IPC namespace. The default is `none`.
10528
+ # The IPC namespace mode for the daemon. The valid values are `none` and
10529
+ # `shared`. The default is `none`.
10530
+ #
10531
+ # If `none` is specified or no value is provided, the daemon runs with
10532
+ # its own IPC namespace, isolated from other tasks. If `shared` is
10533
+ # specified, the daemon joins the host IPC namespace, making it
10534
+ # accessible to non-daemon tasks that use `ipcMode: "host"` or other
10535
+ # daemons that use `ipcMode: "shared"`.
10408
10536
  #
10409
10537
  # @return [Types::RegisterDaemonTaskDefinitionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10410
10538
  #
@@ -14509,6 +14637,19 @@ module Aws::ECS
14509
14637
  # @option params [Types::ExpressGatewayScalingTarget] :scaling_target
14510
14638
  # The auto-scaling configuration for the Express service.
14511
14639
  #
14640
+ # @option params [String] :task_definition_arn
14641
+ # The Amazon Resource Name (ARN) of a task definition to use to update
14642
+ # the Express Gateway service. This allows you to manage your own task
14643
+ # definition, giving you more control over the service configuration
14644
+ # such as adding sidecar containers.
14645
+ #
14646
+ # The task definition must have a container named `Main` with a single
14647
+ # TCP port mapping that includes a container port and port name. The
14648
+ # task definition must also have `FARGATE` compatibility.
14649
+ #
14650
+ # If you provide a task definition ARN, you cannot also specify
14651
+ # `primaryContainer`, `taskRoleArn`, `cpu`, or `memory`.
14652
+ #
14512
14653
  # @return [Types::UpdateExpressGatewayServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
14513
14654
  #
14514
14655
  # * {Types::UpdateExpressGatewayServiceResponse#service #service} => Types::UpdatedExpressGatewayService
@@ -14556,6 +14697,7 @@ module Aws::ECS
14556
14697
  # auto_scaling_metric: "AVERAGE_CPU", # accepts AVERAGE_CPU, AVERAGE_MEMORY, REQUEST_COUNT_PER_TARGET
14557
14698
  # auto_scaling_target_value: 1,
14558
14699
  # },
14700
+ # task_definition_arn: "String",
14559
14701
  # })
14560
14702
  #
14561
14703
  # @example Response structure
@@ -14568,6 +14710,7 @@ module Aws::ECS
14568
14710
  # resp.service.target_configuration.service_revision_arn #=> String
14569
14711
  # resp.service.target_configuration.execution_role_arn #=> String
14570
14712
  # resp.service.target_configuration.task_role_arn #=> String
14713
+ # resp.service.target_configuration.task_definition_arn #=> String
14571
14714
  # resp.service.target_configuration.cpu #=> String
14572
14715
  # resp.service.target_configuration.memory #=> String
14573
14716
  # resp.service.target_configuration.network_configuration.security_groups #=> Array
@@ -15072,6 +15215,12 @@ module Aws::ECS
15072
15215
  #
15073
15216
  # This parameter triggers a new service deployment.
15074
15217
  #
15218
+ # @option params [Types::MonitoringConfiguration] :monitoring
15219
+ # The optional monitoring configuration for the service, which defines
15220
+ # the resolution for the service-level `CPUUtilization` and
15221
+ # `MemoryUtilization` Amazon CloudWatch metrics. When not specified,
15222
+ # Amazon ECS uses the default resolution of `60` seconds.
15223
+ #
15075
15224
  # @return [Types::UpdateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
15076
15225
  #
15077
15226
  # * {Types::UpdateServiceResponse#service #service} => Types::Service
@@ -15132,6 +15281,31 @@ module Aws::ECS
15132
15281
  # {
15133
15282
  # }
15134
15283
  #
15284
+ # @example Example: To update a service with a monitoring configuration
15285
+ #
15286
+ # # This example updates a service to add a monitoring configuration that sets 20-second resolution for CPUUtilization and
15287
+ # # MemoryUtilization CloudWatch metrics. The monitoring configuration is not returned in the UpdateService response. Use
15288
+ # # DescribeServiceRevisions to view the monitoring configuration.
15289
+ #
15290
+ # resp = client.update_service({
15291
+ # monitoring: {
15292
+ # metric_configurations: [
15293
+ # {
15294
+ # metric_names: [
15295
+ # "CPUUtilization",
15296
+ # "MemoryUtilization",
15297
+ # ],
15298
+ # resolution_seconds: 20,
15299
+ # },
15300
+ # ],
15301
+ # },
15302
+ # service: "ecs-monitored-service",
15303
+ # })
15304
+ #
15305
+ # resp.to_h outputs the following:
15306
+ # {
15307
+ # }
15308
+ #
15135
15309
  # @example Request syntax with placeholder values
15136
15310
  #
15137
15311
  # resp = client.update_service({
@@ -15322,6 +15496,14 @@ module Aws::ECS
15322
15496
  # port_name: "String", # required
15323
15497
  # },
15324
15498
  # ],
15499
+ # monitoring: {
15500
+ # metric_configurations: [
15501
+ # {
15502
+ # metric_names: ["MetricName"], # required
15503
+ # resolution_seconds: 1, # required
15504
+ # },
15505
+ # ],
15506
+ # },
15325
15507
  # })
15326
15508
  #
15327
15509
  # @example Response structure
@@ -16028,7 +16210,7 @@ module Aws::ECS
16028
16210
  tracer: tracer
16029
16211
  )
16030
16212
  context[:gem_name] = 'aws-sdk-ecs'
16031
- context[:gem_version] = '1.236.0'
16213
+ context[:gem_version] = '1.238.0'
16032
16214
  Seahorse::Client::Request.new(handlers, context)
16033
16215
  end
16034
16216
 
@@ -411,7 +411,13 @@ module Aws::ECS
411
411
  ManagedTerminationProtection = Shapes::StringShape.new(name: 'ManagedTerminationProtection')
412
412
  MemoryGiBPerVCpuRequest = Shapes::StructureShape.new(name: 'MemoryGiBPerVCpuRequest')
413
413
  MemoryMiBRequest = Shapes::StructureShape.new(name: 'MemoryMiBRequest')
414
+ MetricConfiguration = Shapes::StructureShape.new(name: 'MetricConfiguration')
415
+ MetricConfigurationList = Shapes::ListShape.new(name: 'MetricConfigurationList')
416
+ MetricName = Shapes::StringShape.new(name: 'MetricName')
417
+ MetricNamesList = Shapes::ListShape.new(name: 'MetricNamesList')
418
+ MetricResolutionSeconds = Shapes::IntegerShape.new(name: 'MetricResolutionSeconds')
414
419
  MissingVersionException = Shapes::StructureShape.new(name: 'MissingVersionException')
420
+ MonitoringConfiguration = Shapes::StructureShape.new(name: 'MonitoringConfiguration')
415
421
  MountPoint = Shapes::StructureShape.new(name: 'MountPoint')
416
422
  MountPointList = Shapes::ListShape.new(name: 'MountPointList')
417
423
  NamespaceNotFoundException = Shapes::StructureShape.new(name: 'NamespaceNotFoundException')
@@ -1002,18 +1008,19 @@ module Aws::ECS
1002
1008
  CreateDaemonResponse.add_member(:deployment_arn, Shapes::ShapeRef.new(shape: String, location_name: "deploymentArn"))
1003
1009
  CreateDaemonResponse.struct_class = Types::CreateDaemonResponse
1004
1010
 
1005
- CreateExpressGatewayServiceRequest.add_member(:execution_role_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "executionRoleArn"))
1011
+ CreateExpressGatewayServiceRequest.add_member(:execution_role_arn, Shapes::ShapeRef.new(shape: String, location_name: "executionRoleArn"))
1006
1012
  CreateExpressGatewayServiceRequest.add_member(:infrastructure_role_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "infrastructureRoleArn"))
1007
1013
  CreateExpressGatewayServiceRequest.add_member(:service_name, Shapes::ShapeRef.new(shape: String, location_name: "serviceName"))
1008
1014
  CreateExpressGatewayServiceRequest.add_member(:cluster, Shapes::ShapeRef.new(shape: String, location_name: "cluster"))
1009
1015
  CreateExpressGatewayServiceRequest.add_member(:health_check_path, Shapes::ShapeRef.new(shape: String, location_name: "healthCheckPath"))
1010
- CreateExpressGatewayServiceRequest.add_member(:primary_container, Shapes::ShapeRef.new(shape: ExpressGatewayContainer, required: true, location_name: "primaryContainer"))
1016
+ CreateExpressGatewayServiceRequest.add_member(:primary_container, Shapes::ShapeRef.new(shape: ExpressGatewayContainer, location_name: "primaryContainer"))
1011
1017
  CreateExpressGatewayServiceRequest.add_member(:task_role_arn, Shapes::ShapeRef.new(shape: String, location_name: "taskRoleArn"))
1012
1018
  CreateExpressGatewayServiceRequest.add_member(:network_configuration, Shapes::ShapeRef.new(shape: ExpressGatewayServiceNetworkConfiguration, location_name: "networkConfiguration"))
1013
1019
  CreateExpressGatewayServiceRequest.add_member(:cpu, Shapes::ShapeRef.new(shape: String, location_name: "cpu"))
1014
1020
  CreateExpressGatewayServiceRequest.add_member(:memory, Shapes::ShapeRef.new(shape: String, location_name: "memory"))
1015
1021
  CreateExpressGatewayServiceRequest.add_member(:scaling_target, Shapes::ShapeRef.new(shape: ExpressGatewayScalingTarget, location_name: "scalingTarget"))
1016
1022
  CreateExpressGatewayServiceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
1023
+ CreateExpressGatewayServiceRequest.add_member(:task_definition_arn, Shapes::ShapeRef.new(shape: String, location_name: "taskDefinitionArn"))
1017
1024
  CreateExpressGatewayServiceRequest.struct_class = Types::CreateExpressGatewayServiceRequest
1018
1025
 
1019
1026
  CreateExpressGatewayServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: ECSExpressGatewayService, location_name: "service"))
@@ -1052,6 +1059,7 @@ module Aws::ECS
1052
1059
  CreateServiceRequest.add_member(:service_connect_configuration, Shapes::ShapeRef.new(shape: ServiceConnectConfiguration, location_name: "serviceConnectConfiguration"))
1053
1060
  CreateServiceRequest.add_member(:volume_configurations, Shapes::ShapeRef.new(shape: ServiceVolumeConfigurations, location_name: "volumeConfigurations"))
1054
1061
  CreateServiceRequest.add_member(:vpc_lattice_configurations, Shapes::ShapeRef.new(shape: VpcLatticeConfigurations, location_name: "vpcLatticeConfigurations"))
1062
+ CreateServiceRequest.add_member(:monitoring, Shapes::ShapeRef.new(shape: MonitoringConfiguration, location_name: "monitoring"))
1055
1063
  CreateServiceRequest.struct_class = Types::CreateServiceRequest
1056
1064
 
1057
1065
  CreateServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "service"))
@@ -1686,6 +1694,7 @@ module Aws::ECS
1686
1694
  ExpressGatewayServiceConfiguration.add_member(:service_revision_arn, Shapes::ShapeRef.new(shape: String, location_name: "serviceRevisionArn"))
1687
1695
  ExpressGatewayServiceConfiguration.add_member(:execution_role_arn, Shapes::ShapeRef.new(shape: String, location_name: "executionRoleArn"))
1688
1696
  ExpressGatewayServiceConfiguration.add_member(:task_role_arn, Shapes::ShapeRef.new(shape: String, location_name: "taskRoleArn"))
1697
+ ExpressGatewayServiceConfiguration.add_member(:task_definition_arn, Shapes::ShapeRef.new(shape: String, location_name: "taskDefinitionArn"))
1689
1698
  ExpressGatewayServiceConfiguration.add_member(:cpu, Shapes::ShapeRef.new(shape: String, location_name: "cpu"))
1690
1699
  ExpressGatewayServiceConfiguration.add_member(:memory, Shapes::ShapeRef.new(shape: String, location_name: "memory"))
1691
1700
  ExpressGatewayServiceConfiguration.add_member(:network_configuration, Shapes::ShapeRef.new(shape: ExpressGatewayServiceNetworkConfiguration, location_name: "networkConfiguration"))
@@ -2189,9 +2198,20 @@ module Aws::ECS
2189
2198
  MemoryMiBRequest.add_member(:max, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "max"))
2190
2199
  MemoryMiBRequest.struct_class = Types::MemoryMiBRequest
2191
2200
 
2201
+ MetricConfiguration.add_member(:metric_names, Shapes::ShapeRef.new(shape: MetricNamesList, required: true, location_name: "metricNames"))
2202
+ MetricConfiguration.add_member(:resolution_seconds, Shapes::ShapeRef.new(shape: MetricResolutionSeconds, required: true, location_name: "resolutionSeconds"))
2203
+ MetricConfiguration.struct_class = Types::MetricConfiguration
2204
+
2205
+ MetricConfigurationList.member = Shapes::ShapeRef.new(shape: MetricConfiguration)
2206
+
2207
+ MetricNamesList.member = Shapes::ShapeRef.new(shape: MetricName)
2208
+
2192
2209
  MissingVersionException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
2193
2210
  MissingVersionException.struct_class = Types::MissingVersionException
2194
2211
 
2212
+ MonitoringConfiguration.add_member(:metric_configurations, Shapes::ShapeRef.new(shape: MetricConfigurationList, location_name: "metricConfigurations"))
2213
+ MonitoringConfiguration.struct_class = Types::MonitoringConfiguration
2214
+
2195
2215
  MountPoint.add_member(:source_volume, Shapes::ShapeRef.new(shape: String, location_name: "sourceVolume"))
2196
2216
  MountPoint.add_member(:container_path, Shapes::ShapeRef.new(shape: String, location_name: "containerPath"))
2197
2217
  MountPoint.add_member(:read_only, Shapes::ShapeRef.new(shape: BoxedBoolean, location_name: "readOnly"))
@@ -2654,6 +2674,7 @@ module Aws::ECS
2654
2674
  ServiceRevision.add_member(:vpc_lattice_configurations, Shapes::ShapeRef.new(shape: VpcLatticeConfigurations, location_name: "vpcLatticeConfigurations"))
2655
2675
  ServiceRevision.add_member(:resolved_configuration, Shapes::ShapeRef.new(shape: ResolvedConfiguration, location_name: "resolvedConfiguration"))
2656
2676
  ServiceRevision.add_member(:ecs_managed_resources, Shapes::ShapeRef.new(shape: ECSManagedResources, location_name: "ecsManagedResources"))
2677
+ ServiceRevision.add_member(:monitoring, Shapes::ShapeRef.new(shape: MonitoringConfiguration, location_name: "monitoring"))
2657
2678
  ServiceRevision.struct_class = Types::ServiceRevision
2658
2679
 
2659
2680
  ServiceRevisionLoadBalancer.add_member(:target_group_arn, Shapes::ShapeRef.new(shape: String, location_name: "targetGroupArn"))
@@ -3045,6 +3066,7 @@ module Aws::ECS
3045
3066
  UpdateExpressGatewayServiceRequest.add_member(:cpu, Shapes::ShapeRef.new(shape: String, location_name: "cpu"))
3046
3067
  UpdateExpressGatewayServiceRequest.add_member(:memory, Shapes::ShapeRef.new(shape: String, location_name: "memory"))
3047
3068
  UpdateExpressGatewayServiceRequest.add_member(:scaling_target, Shapes::ShapeRef.new(shape: ExpressGatewayScalingTarget, location_name: "scalingTarget"))
3069
+ UpdateExpressGatewayServiceRequest.add_member(:task_definition_arn, Shapes::ShapeRef.new(shape: String, location_name: "taskDefinitionArn"))
3048
3070
  UpdateExpressGatewayServiceRequest.struct_class = Types::UpdateExpressGatewayServiceRequest
3049
3071
 
3050
3072
  UpdateExpressGatewayServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: UpdatedExpressGatewayService, location_name: "service"))
@@ -3090,6 +3112,7 @@ module Aws::ECS
3090
3112
  UpdateServiceRequest.add_member(:service_connect_configuration, Shapes::ShapeRef.new(shape: ServiceConnectConfiguration, location_name: "serviceConnectConfiguration"))
3091
3113
  UpdateServiceRequest.add_member(:volume_configurations, Shapes::ShapeRef.new(shape: ServiceVolumeConfigurations, location_name: "volumeConfigurations"))
3092
3114
  UpdateServiceRequest.add_member(:vpc_lattice_configurations, Shapes::ShapeRef.new(shape: VpcLatticeConfigurations, location_name: "vpcLatticeConfigurations"))
3115
+ UpdateServiceRequest.add_member(:monitoring, Shapes::ShapeRef.new(shape: MonitoringConfiguration, location_name: "monitoring"))
3093
3116
  UpdateServiceRequest.struct_class = Types::UpdateServiceRequest
3094
3117
 
3095
3118
  UpdateServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "service"))
@@ -3285,6 +3285,21 @@ module Aws::ECS
3285
3285
  # optional value. You can apply up to 50 tags to a service.
3286
3286
  # @return [Array<Types::Tag>]
3287
3287
  #
3288
+ # @!attribute [rw] task_definition_arn
3289
+ # The Amazon Resource Name (ARN) of a task definition to use to create
3290
+ # the Express Gateway service. This allows you to manage your own task
3291
+ # definition, giving you more control over the service configuration
3292
+ # such as adding sidecar containers.
3293
+ #
3294
+ # The task definition must have a container named `Main` with a single
3295
+ # TCP port mapping that includes a container port and port name. The
3296
+ # task definition must also have `FARGATE` compatibility.
3297
+ #
3298
+ # If you provide a task definition ARN, you cannot also specify
3299
+ # `primaryContainer`, `executionRoleArn`, `taskRoleArn`, `cpu`, or
3300
+ # `memory`.
3301
+ # @return [String]
3302
+ #
3288
3303
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateExpressGatewayServiceRequest AWS API Documentation
3289
3304
  #
3290
3305
  class CreateExpressGatewayServiceRequest < Struct.new(
@@ -3299,7 +3314,8 @@ module Aws::ECS
3299
3314
  :cpu,
3300
3315
  :memory,
3301
3316
  :scaling_target,
3302
- :tags)
3317
+ :tags,
3318
+ :task_definition_arn)
3303
3319
  SENSITIVE = []
3304
3320
  include Aws::Structure
3305
3321
  end
@@ -3813,6 +3829,13 @@ module Aws::ECS
3813
3829
  # The VPC Lattice configuration for the service being created.
3814
3830
  # @return [Array<Types::VpcLatticeConfiguration>]
3815
3831
  #
3832
+ # @!attribute [rw] monitoring
3833
+ # The optional monitoring configuration for the service, which defines
3834
+ # the resolution for the service-level `CPUUtilization` and
3835
+ # `MemoryUtilization` Amazon CloudWatch metrics. When not specified,
3836
+ # Amazon ECS uses the default resolution of `60` seconds.
3837
+ # @return [Types::MonitoringConfiguration]
3838
+ #
3816
3839
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateServiceRequest AWS API Documentation
3817
3840
  #
3818
3841
  class CreateServiceRequest < Struct.new(
@@ -3841,7 +3864,8 @@ module Aws::ECS
3841
3864
  :enable_execute_command,
3842
3865
  :service_connect_configuration,
3843
3866
  :volume_configurations,
3844
- :vpc_lattice_configurations)
3867
+ :vpc_lattice_configurations,
3868
+ :monitoring)
3845
3869
  SENSITIVE = []
3846
3870
  include Aws::Structure
3847
3871
  end
@@ -4952,18 +4976,25 @@ module Aws::ECS
4952
4976
  # @return [String]
4953
4977
  #
4954
4978
  # @!attribute [rw] pid_mode
4955
- # The process namespace mode for the daemon. A value of `shared` means
4956
- # the daemon shares the PID namespace with co-located tasks, giving it
4957
- # visibility into application processes. A value of `none` means the
4958
- # daemon has its own isolated PID namespace.
4979
+ # The PID namespace mode for the daemon. The valid values are `none`
4980
+ # and `shared`. The default is `none`.
4981
+ #
4982
+ # If `none` is specified or no value is provided, the daemon runs with
4983
+ # its own PID namespace, isolated from other tasks. If `shared` is
4984
+ # specified, the daemon joins the host PID namespace, making it
4985
+ # accessible to non-daemon tasks that use `pidMode: "host"` or other
4986
+ # daemons that use `pidMode: "shared"`.
4959
4987
  # @return [String]
4960
4988
  #
4961
4989
  # @!attribute [rw] ipc_mode
4962
- # The IPC namespace mode for the daemon. A value of `shared` means the
4963
- # daemon shares the IPC namespace with co-located tasks, allowing
4964
- # communication through POSIX shared memory, semaphores, and message
4965
- # queues. A value of `none` means the daemon has its own isolated IPC
4966
- # namespace.
4990
+ # The IPC namespace mode for the daemon. The valid values are `none`
4991
+ # and `shared`. The default is `none`.
4992
+ #
4993
+ # If `none` is specified or no value is provided, the daemon runs with
4994
+ # its own IPC namespace, isolated from other tasks. If `shared` is
4995
+ # specified, the daemon joins the host IPC namespace, making it
4996
+ # accessible to non-daemon tasks that use `ipcMode: "host"` or other
4997
+ # daemons that use `ipcMode: "shared"`.
4967
4998
  # @return [String]
4968
4999
  #
4969
5000
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DaemonTaskDefinition AWS API Documentation
@@ -5918,8 +5949,8 @@ module Aws::ECS
5918
5949
  # @return [Integer]
5919
5950
  #
5920
5951
  # @!attribute [rw] lifecycle_hooks
5921
- # An array of deployment lifecycle hook objects to run custom logic at
5922
- # specific stages of the deployment lifecycle.
5952
+ # An array of deployment lifecycle hook objects to run custom logic or
5953
+ # pause the deployment at specific stages of the deployment lifecycle.
5923
5954
  # @return [Array<Types::DeploymentLifecycleHook>]
5924
5955
  #
5925
5956
  # @!attribute [rw] linear_configuration
@@ -6068,9 +6099,9 @@ module Aws::ECS
6068
6099
  include Aws::Structure
6069
6100
  end
6070
6101
 
6071
- # A deployment lifecycle hook runs custom logic at specific stages of
6072
- # the deployment process. Currently, you can use Lambda functions as
6073
- # hook targets.
6102
+ # A deployment lifecycle hook runs custom logic or pauses the deployment
6103
+ # at specific stages of the deployment process. You can use Lambda
6104
+ # functions or pause hooks as hook targets.
6074
6105
  #
6075
6106
  # For more information, see [Lifecycle hooks for Amazon ECS service
6076
6107
  # deployments][1] in the <i> Amazon Elastic Container Service Developer
@@ -6095,10 +6126,11 @@ module Aws::ECS
6095
6126
  # @return [String]
6096
6127
  #
6097
6128
  # @!attribute [rw] hook_target_arn
6098
- # The Amazon Resource Name (ARN) of the hook target. Currently, only
6099
- # Lambda function ARNs are supported.
6129
+ # The Amazon Resource Name (ARN) of the hook target. For `AWS_LAMBDA`
6130
+ # hooks, this is the Lambda function ARN. This field is not applicable
6131
+ # for `PAUSE` hooks.
6100
6132
  #
6101
- # You must provide this parameter when configuring a deployment
6133
+ # You must provide this parameter when configuring an `AWS_LAMBDA`
6102
6134
  # lifecycle hook.
6103
6135
  # @return [String]
6104
6136
  #
@@ -6158,11 +6190,20 @@ module Aws::ECS
6158
6190
  #
6159
6191
  # You can use a lifecycle hook for this stage.
6160
6192
  #
6193
+ # * PRE\_PRODUCTION\_TRAFFIC\_SHIFT
6194
+ #
6195
+ # Occurs before production traffic shift. For linear and canary
6196
+ # deployments, this stage is invoked before every traffic shift
6197
+ # step.
6198
+ #
6199
+ # You can use a lifecycle hook for this stage.
6200
+ #
6161
6201
  # * PRODUCTION\_TRAFFIC\_SHIFT
6162
6202
  #
6163
6203
  # Production traffic is shifting to the green service revision. The
6164
6204
  # green service revision is migrating from 0% to 100% of production
6165
- # traffic.
6205
+ # traffic. For linear and canary deployments, this stage is invoked
6206
+ # at every traffic shift step.
6166
6207
  #
6167
6208
  # You can use a lifecycle hook for this stage.
6168
6209
  #
@@ -6172,13 +6213,20 @@ module Aws::ECS
6172
6213
  #
6173
6214
  # You can use a lifecycle hook for this stage.
6174
6215
  #
6216
+ # <note markdown="1"> `PAUSE` hooks cannot be configured at `TEST_TRAFFIC_SHIFT` or
6217
+ # `PRODUCTION_TRAFFIC_SHIFT` stages. These stages are only valid for
6218
+ # `AWS_LAMBDA` hooks.
6219
+ #
6220
+ # </note>
6221
+ #
6175
6222
  # You must provide this parameter when configuring a deployment
6176
6223
  # lifecycle hook.
6177
6224
  # @return [Array<String>]
6178
6225
  #
6179
6226
  # @!attribute [rw] hook_details
6180
- # Use this field to specify custom parameters that Amazon ECS will
6181
- # pass to your hook target invocations (such as a Lambda function).
6227
+ # Use this field to specify custom parameters that Amazon ECS passes
6228
+ # to your Lambda function on each invocation. This field is not used
6229
+ # for `PAUSE` hooks.
6182
6230
  # @return [Hash,Array,String,Numeric,Boolean]
6183
6231
  #
6184
6232
  # @!attribute [rw] timeout_configuration
@@ -6228,14 +6276,9 @@ module Aws::ECS
6228
6276
  # @return [String]
6229
6277
  #
6230
6278
  # @!attribute [rw] status
6231
- # The status of the lifecycle hook. Valid values depend on the hook
6232
- # type:
6233
- #
6234
- # * For `AWS_LAMBDA` hooks: `IN_PROGRESS`, `SUCCEEDED`, `FAILED`, and
6235
- # `TIMED_OUT`.
6236
- #
6237
- # * For `PAUSE` hooks: `AWAITING_ACTION`, `SUCCEEDED`, `FAILED`, and
6238
- # `TIMED_OUT`.
6279
+ # The status of the lifecycle hook. Valid values include
6280
+ # `AWAITING_ACTION`, `IN_PROGRESS`, `SUCCEEDED`, `FAILED`, and
6281
+ # `TIMED_OUT`.
6239
6282
  # @return [String]
6240
6283
  #
6241
6284
  # @!attribute [rw] expires_at
@@ -6268,6 +6311,8 @@ module Aws::ECS
6268
6311
  # @!attribute [rw] timeout_in_minutes
6269
6312
  # The number of minutes Amazon ECS waits for the lifecycle hook to
6270
6313
  # complete before taking the timeout action.
6314
+ #
6315
+ # Default: 1440 (24 hours)
6271
6316
  # @return [Integer]
6272
6317
  #
6273
6318
  # @!attribute [rw] action
@@ -6278,6 +6323,8 @@ module Aws::ECS
6278
6323
  #
6279
6324
  # * `ROLLBACK` - Rolls back the deployment to the previous service
6280
6325
  # revision.
6326
+ #
6327
+ # Default: `ROLLBACK`
6281
6328
  # @return [String]
6282
6329
  #
6283
6330
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentLifecycleHookTimeoutConfiguration AWS API Documentation
@@ -7820,6 +7867,12 @@ module Aws::ECS
7820
7867
  # The ARN of the task role for the service revision.
7821
7868
  # @return [String]
7822
7869
  #
7870
+ # @!attribute [rw] task_definition_arn
7871
+ # The ARN of the task definition used by this service revision. This
7872
+ # is present for all Express services and reflects the task definition
7873
+ # in use, whether managed by Amazon ECS or provided by the customer.
7874
+ # @return [String]
7875
+ #
7823
7876
  # @!attribute [rw] cpu
7824
7877
  # The CPU allocation for tasks in this service revision.
7825
7878
  # @return [String]
@@ -7858,6 +7911,7 @@ module Aws::ECS
7858
7911
  :service_revision_arn,
7859
7912
  :execution_role_arn,
7860
7913
  :task_role_arn,
7914
+ :task_definition_arn,
7861
7915
  :cpu,
7862
7916
  :memory,
7863
7917
  :network_configuration,
@@ -9758,7 +9812,7 @@ module Aws::ECS
9758
9812
 
9759
9813
  # @!attribute [rw] cluster_arn
9760
9814
  # The Amazon Resource Name (ARN) of the cluster to filter daemons by.
9761
- # If not specified, daemons from all clusters are returned.
9815
+ # If you do not specify a cluster, the default cluster is assumed.
9762
9816
  # @return [String]
9763
9817
  #
9764
9818
  # @!attribute [rw] capacity_provider_arns
@@ -11629,6 +11683,28 @@ module Aws::ECS
11629
11683
  include Aws::Structure
11630
11684
  end
11631
11685
 
11686
+ # The configuration for a specific set of metrics to collect for a
11687
+ # service.
11688
+ #
11689
+ # @!attribute [rw] metric_names
11690
+ # The list of metric names to configure. The supported metric names
11691
+ # are `CPUUtilization` and `MemoryUtilization`.
11692
+ # @return [Array<String>]
11693
+ #
11694
+ # @!attribute [rw] resolution_seconds
11695
+ # The resolution, in seconds, at which to collect the metrics. The
11696
+ # valid values are `20` and `60`.
11697
+ # @return [Integer]
11698
+ #
11699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/MetricConfiguration AWS API Documentation
11700
+ #
11701
+ class MetricConfiguration < Struct.new(
11702
+ :metric_names,
11703
+ :resolution_seconds)
11704
+ SENSITIVE = []
11705
+ include Aws::Structure
11706
+ end
11707
+
11632
11708
  # Amazon ECS can't determine the current version of the Amazon ECS
11633
11709
  # container agent on the container instance and doesn't have enough
11634
11710
  # information to proceed with an update. This could be because the agent
@@ -11647,6 +11723,23 @@ module Aws::ECS
11647
11723
  include Aws::Structure
11648
11724
  end
11649
11725
 
11726
+ # The optional monitoring configuration for a service, which defines the
11727
+ # resolution for the service-level `CPUUtilization` and
11728
+ # `MemoryUtilization` Amazon CloudWatch metrics. When not specified,
11729
+ # Amazon ECS uses the default resolution of `60` seconds.
11730
+ #
11731
+ # @!attribute [rw] metric_configurations
11732
+ # The list of metric configurations for the service monitoring.
11733
+ # @return [Array<Types::MetricConfiguration>]
11734
+ #
11735
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/MonitoringConfiguration AWS API Documentation
11736
+ #
11737
+ class MonitoringConfiguration < Struct.new(
11738
+ :metric_configurations)
11739
+ SENSITIVE = []
11740
+ include Aws::Structure
11741
+ end
11742
+
11650
11743
  # The details for a volume mount point that's used in a container
11651
11744
  # definition.
11652
11745
  #
@@ -13020,19 +13113,25 @@ module Aws::ECS
13020
13113
  # @return [Array<Types::Tag>]
13021
13114
  #
13022
13115
  # @!attribute [rw] pid_mode
13023
- # The process namespace mode for the daemon. When set to `shared`, the
13024
- # daemon shares the PID namespace with co-located tasks on the same
13025
- # container instance, giving the daemon visibility into application
13026
- # processes. When set to `none`, the daemon gets its own isolated PID
13027
- # namespace. The default is `none`.
13116
+ # The PID namespace mode for the daemon. The valid values are `none`
13117
+ # and `shared`. The default is `none`.
13118
+ #
13119
+ # If `none` is specified or no value is provided, the daemon runs with
13120
+ # its own PID namespace, isolated from other tasks. If `shared` is
13121
+ # specified, the daemon joins the host PID namespace, making it
13122
+ # accessible to non-daemon tasks that use `pidMode: "host"` or other
13123
+ # daemons that use `pidMode: "shared"`.
13028
13124
  # @return [String]
13029
13125
  #
13030
13126
  # @!attribute [rw] ipc_mode
13031
- # The IPC namespace mode for the daemon. When set to `shared`, the
13032
- # daemon shares the IPC namespace with co-located tasks on the same
13033
- # container instance, allowing communication through POSIX shared
13034
- # memory, semaphores, and message queues. When set to `none`, the
13035
- # daemon gets its own isolated IPC namespace. The default is `none`.
13127
+ # The IPC namespace mode for the daemon. The valid values are `none`
13128
+ # and `shared`. The default is `none`.
13129
+ #
13130
+ # If `none` is specified or no value is provided, the daemon runs with
13131
+ # its own IPC namespace, isolated from other tasks. If `shared` is
13132
+ # specified, the daemon joins the host IPC namespace, making it
13133
+ # accessible to non-daemon tasks that use `ipcMode: "host"` or other
13134
+ # daemons that use `ipcMode: "shared"`.
13036
13135
  # @return [String]
13037
13136
  #
13038
13137
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/RegisterDaemonTaskDefinitionRequest AWS API Documentation
@@ -15099,11 +15198,18 @@ module Aws::ECS
15099
15198
  # The test traffic shift is complete. The green service revision
15100
15199
  # handles 100% of the test traffic.
15101
15200
  #
15201
+ # * PRE\_PRODUCTION\_TRAFFIC\_SHIFT
15202
+ #
15203
+ # Occurs before production traffic shift. For linear and canary
15204
+ # deployments, this stage is invoked before every traffic shift
15205
+ # step.
15206
+ #
15102
15207
  # * PRODUCTION\_TRAFFIC\_SHIFT
15103
15208
  #
15104
15209
  # Production traffic is shifting to the green service revision. The
15105
15210
  # green service revision is migrating from 0% to 100% of production
15106
- # traffic.
15211
+ # traffic. For linear and canary deployments, this stage is invoked
15212
+ # at every traffic shift step.
15107
15213
  #
15108
15214
  # * POST\_PRODUCTION\_TRAFFIC\_SHIFT
15109
15215
  #
@@ -15317,7 +15423,7 @@ module Aws::ECS
15317
15423
  end
15318
15424
 
15319
15425
  # The service deploy ARN that you specified in the
15320
- # `StopServiceDeployment` doesn't exist. You can use
15426
+ # `ContinueServiceDeployment` doesn't exist. You can use
15321
15427
  # `ListServiceDeployments` to retrieve the service deployment ARNs.
15322
15428
  #
15323
15429
  # @!attribute [rw] message
@@ -15794,6 +15900,13 @@ module Aws::ECS
15794
15900
  # Express service for Amazon ECS.
15795
15901
  # @return [Types::ECSManagedResources]
15796
15902
  #
15903
+ # @!attribute [rw] monitoring
15904
+ # The optional monitoring configuration for the service, which defines
15905
+ # the resolution for the service-level `CPUUtilization` and
15906
+ # `MemoryUtilization` Amazon CloudWatch metrics. When not specified,
15907
+ # Amazon ECS uses the default resolution of `60` seconds.
15908
+ # @return [Types::MonitoringConfiguration]
15909
+ #
15797
15910
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceRevision AWS API Documentation
15798
15911
  #
15799
15912
  class ServiceRevision < Struct.new(
@@ -15816,7 +15929,8 @@ module Aws::ECS
15816
15929
  :created_at,
15817
15930
  :vpc_lattice_configurations,
15818
15931
  :resolved_configuration,
15819
- :ecs_managed_resources)
15932
+ :ecs_managed_resources,
15933
+ :monitoring)
15820
15934
  SENSITIVE = []
15821
15935
  include Aws::Structure
15822
15936
  end
@@ -18602,6 +18716,20 @@ module Aws::ECS
18602
18716
  # The auto-scaling configuration for the Express service.
18603
18717
  # @return [Types::ExpressGatewayScalingTarget]
18604
18718
  #
18719
+ # @!attribute [rw] task_definition_arn
18720
+ # The Amazon Resource Name (ARN) of a task definition to use to update
18721
+ # the Express Gateway service. This allows you to manage your own task
18722
+ # definition, giving you more control over the service configuration
18723
+ # such as adding sidecar containers.
18724
+ #
18725
+ # The task definition must have a container named `Main` with a single
18726
+ # TCP port mapping that includes a container port and port name. The
18727
+ # task definition must also have `FARGATE` compatibility.
18728
+ #
18729
+ # If you provide a task definition ARN, you cannot also specify
18730
+ # `primaryContainer`, `taskRoleArn`, `cpu`, or `memory`.
18731
+ # @return [String]
18732
+ #
18605
18733
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateExpressGatewayServiceRequest AWS API Documentation
18606
18734
  #
18607
18735
  class UpdateExpressGatewayServiceRequest < Struct.new(
@@ -18613,7 +18741,8 @@ module Aws::ECS
18613
18741
  :network_configuration,
18614
18742
  :cpu,
18615
18743
  :memory,
18616
- :scaling_target)
18744
+ :scaling_target,
18745
+ :task_definition_arn)
18617
18746
  SENSITIVE = []
18618
18747
  include Aws::Structure
18619
18748
  end
@@ -19095,6 +19224,13 @@ module Aws::ECS
19095
19224
  # This parameter triggers a new service deployment.
19096
19225
  # @return [Array<Types::VpcLatticeConfiguration>]
19097
19226
  #
19227
+ # @!attribute [rw] monitoring
19228
+ # The optional monitoring configuration for the service, which defines
19229
+ # the resolution for the service-level `CPUUtilization` and
19230
+ # `MemoryUtilization` Amazon CloudWatch metrics. When not specified,
19231
+ # Amazon ECS uses the default resolution of `60` seconds.
19232
+ # @return [Types::MonitoringConfiguration]
19233
+ #
19098
19234
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateServiceRequest AWS API Documentation
19099
19235
  #
19100
19236
  class UpdateServiceRequest < Struct.new(
@@ -19119,7 +19255,8 @@ module Aws::ECS
19119
19255
  :service_registries,
19120
19256
  :service_connect_configuration,
19121
19257
  :volume_configurations,
19122
- :vpc_lattice_configurations)
19258
+ :vpc_lattice_configurations,
19259
+ :monitoring)
19123
19260
  SENSITIVE = []
19124
19261
  include Aws::Structure
19125
19262
  end
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.236.0'
58
+ GEM_VERSION = '1.238.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -219,12 +219,12 @@ module Aws
219
219
  end
220
220
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECS/Client.html#create_express_gateway_service-instance_method
221
221
  def create_express_gateway_service: (
222
- execution_role_arn: ::String,
222
+ ?execution_role_arn: ::String,
223
223
  infrastructure_role_arn: ::String,
224
224
  ?service_name: ::String,
225
225
  ?cluster: ::String,
226
226
  ?health_check_path: ::String,
227
- primary_container: Params::express_gateway_container,
227
+ ?primary_container: Params::express_gateway_container,
228
228
  ?task_role_arn: ::String,
229
229
  ?network_configuration: {
230
230
  security_groups: Array[::String]?,
@@ -243,7 +243,8 @@ module Aws
243
243
  key: ::String?,
244
244
  value: ::String?
245
245
  }
246
- ]
246
+ ],
247
+ ?task_definition_arn: ::String
247
248
  ) -> _CreateExpressGatewayServiceResponseSuccess
248
249
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateExpressGatewayServiceResponseSuccess
249
250
 
@@ -324,7 +325,15 @@ module Aws
324
325
  target_group_arn: ::String,
325
326
  port_name: ::String
326
327
  }
327
- ]
328
+ ],
329
+ ?monitoring: {
330
+ metric_configurations: Array[
331
+ {
332
+ metric_names: Array[::String],
333
+ resolution_seconds: ::Integer
334
+ }
335
+ ]?
336
+ }
328
337
  ) -> _CreateServiceResponseSuccess
329
338
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateServiceResponseSuccess
330
339
 
@@ -1804,7 +1813,8 @@ module Aws
1804
1813
  max_task_count: ::Integer?,
1805
1814
  auto_scaling_metric: ("AVERAGE_CPU" | "AVERAGE_MEMORY" | "REQUEST_COUNT_PER_TARGET")?,
1806
1815
  auto_scaling_target_value: ::Integer?
1807
- }
1816
+ },
1817
+ ?task_definition_arn: ::String
1808
1818
  ) -> _UpdateExpressGatewayServiceResponseSuccess
1809
1819
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateExpressGatewayServiceResponseSuccess
1810
1820
 
@@ -1876,7 +1886,15 @@ module Aws
1876
1886
  target_group_arn: ::String,
1877
1887
  port_name: ::String
1878
1888
  }
1879
- ]
1889
+ ],
1890
+ ?monitoring: {
1891
+ metric_configurations: Array[
1892
+ {
1893
+ metric_names: Array[::String],
1894
+ resolution_seconds: ::Integer
1895
+ }
1896
+ ]?
1897
+ }
1880
1898
  ) -> _UpdateServiceResponseSuccess
1881
1899
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateServiceResponseSuccess
1882
1900
 
data/sig/types.rbs CHANGED
@@ -425,6 +425,7 @@ module Aws::ECS
425
425
  attr_accessor memory: ::String
426
426
  attr_accessor scaling_target: Types::ExpressGatewayScalingTarget
427
427
  attr_accessor tags: ::Array[Types::Tag]
428
+ attr_accessor task_definition_arn: ::String
428
429
  SENSITIVE: []
429
430
  end
430
431
 
@@ -469,6 +470,7 @@ module Aws::ECS
469
470
  attr_accessor service_connect_configuration: Types::ServiceConnectConfiguration
470
471
  attr_accessor volume_configurations: ::Array[Types::ServiceVolumeConfiguration]
471
472
  attr_accessor vpc_lattice_configurations: ::Array[Types::VpcLatticeConfiguration]
473
+ attr_accessor monitoring: Types::MonitoringConfiguration
472
474
  SENSITIVE: []
473
475
  end
474
476
 
@@ -1268,6 +1270,7 @@ module Aws::ECS
1268
1270
  attr_accessor service_revision_arn: ::String
1269
1271
  attr_accessor execution_role_arn: ::String
1270
1272
  attr_accessor task_role_arn: ::String
1273
+ attr_accessor task_definition_arn: ::String
1271
1274
  attr_accessor cpu: ::String
1272
1275
  attr_accessor memory: ::String
1273
1276
  attr_accessor network_configuration: Types::ExpressGatewayServiceNetworkConfiguration
@@ -1878,11 +1881,22 @@ module Aws::ECS
1878
1881
  SENSITIVE: []
1879
1882
  end
1880
1883
 
1884
+ class MetricConfiguration
1885
+ attr_accessor metric_names: ::Array[::String]
1886
+ attr_accessor resolution_seconds: ::Integer
1887
+ SENSITIVE: []
1888
+ end
1889
+
1881
1890
  class MissingVersionException
1882
1891
  attr_accessor message: ::String
1883
1892
  SENSITIVE: []
1884
1893
  end
1885
1894
 
1895
+ class MonitoringConfiguration
1896
+ attr_accessor metric_configurations: ::Array[Types::MetricConfiguration]
1897
+ SENSITIVE: []
1898
+ end
1899
+
1886
1900
  class MountPoint
1887
1901
  attr_accessor source_volume: ::String
1888
1902
  attr_accessor container_path: ::String
@@ -2428,6 +2442,7 @@ module Aws::ECS
2428
2442
  attr_accessor vpc_lattice_configurations: ::Array[Types::VpcLatticeConfiguration]
2429
2443
  attr_accessor resolved_configuration: Types::ResolvedConfiguration
2430
2444
  attr_accessor ecs_managed_resources: Types::ECSManagedResources
2445
+ attr_accessor monitoring: Types::MonitoringConfiguration
2431
2446
  SENSITIVE: []
2432
2447
  end
2433
2448
 
@@ -2878,6 +2893,7 @@ module Aws::ECS
2878
2893
  attr_accessor cpu: ::String
2879
2894
  attr_accessor memory: ::String
2880
2895
  attr_accessor scaling_target: Types::ExpressGatewayScalingTarget
2896
+ attr_accessor task_definition_arn: ::String
2881
2897
  SENSITIVE: []
2882
2898
  end
2883
2899
 
@@ -2935,6 +2951,7 @@ module Aws::ECS
2935
2951
  attr_accessor service_connect_configuration: Types::ServiceConnectConfiguration
2936
2952
  attr_accessor volume_configurations: ::Array[Types::ServiceVolumeConfiguration]
2937
2953
  attr_accessor vpc_lattice_configurations: ::Array[Types::VpcLatticeConfiguration]
2954
+ attr_accessor monitoring: Types::MonitoringConfiguration
2938
2955
  SENSITIVE: []
2939
2956
  end
2940
2957
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ecs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.236.0
4
+ version: 1.238.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services