aws-sdk-ecs 1.196.0 → 1.198.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.
@@ -933,69 +933,111 @@ module Aws::ECS
933
933
  # tasks. It also stops tasks that don't meet the placement
934
934
  # constraints. When using this strategy, you don't need to specify a
935
935
  # desired number of tasks, a task placement strategy, or use Service
936
- # Auto Scaling policies. For more information, see [Service scheduler
937
- # concepts][4] in the *Amazon Elastic Container Service Developer
936
+ # Auto Scaling policies. For more information, see [Amazon ECS
937
+ # services][4] in the *Amazon Elastic Container Service Developer
938
938
  # Guide*.
939
939
  #
940
- # You can optionally specify a deployment configuration for your
941
- # service. The deployment is initiated by changing properties. For
942
- # example, the deployment might be initiated by the task definition or
943
- # by your desired count of a service. You can use [UpdateService][1].
944
- # The default value for a replica service for `minimumHealthyPercent` is
945
- # 100%. The default value for a daemon service for
946
- # `minimumHealthyPercent` is 0%.
947
- #
948
- # If a service uses the `ECS` deployment controller, the minimum healthy
949
- # percent represents a lower limit on the number of tasks in a service
950
- # that must remain in the `RUNNING` state during a deployment.
951
- # Specifically, it represents it as a percentage of your desired number
952
- # of tasks (rounded up to the nearest integer). This happens when any of
953
- # your container instances are in the `DRAINING` state if the service
954
- # contains tasks using the EC2 launch type. Using this parameter, you
955
- # can deploy without using additional cluster capacity. For example, if
956
- # you set your service to have desired number of four tasks and a
957
- # minimum healthy percent of 50%, the scheduler might stop two existing
958
- # tasks to free up cluster capacity before starting two new tasks. If
959
- # they're in the `RUNNING` state, tasks for services that don't use a
960
- # load balancer are considered healthy . If they're in the `RUNNING`
961
- # state and reported as healthy by the load balancer, tasks for services
962
- # that *do* use a load balancer are considered healthy . The default
963
- # value for minimum healthy percent is 100%.
964
- #
965
- # If a service uses the `ECS` deployment controller, the **maximum
966
- # percent** parameter represents an upper limit on the number of tasks
967
- # in a service that are allowed in the `RUNNING` or `PENDING` state
968
- # during a deployment. Specifically, it represents it as a percentage of
969
- # the desired number of tasks (rounded down to the nearest integer).
970
- # This happens when any of your container instances are in the
971
- # `DRAINING` state if the service contains tasks using the EC2 launch
972
- # type. Using this parameter, you can define the deployment batch size.
973
- # For example, if your service has a desired number of four tasks and a
974
- # maximum percent value of 200%, the scheduler may start four new tasks
975
- # before stopping the four older tasks (provided that the cluster
976
- # resources required to do this are available). The default value for
977
- # maximum percent is 200%.
978
- #
979
- # If a service uses either the `CODE_DEPLOY` or `EXTERNAL` deployment
980
- # controller types and tasks that use the EC2 launch type, the **minimum
981
- # healthy percent** and **maximum percent** values are used only to
982
- # define the lower and upper limit on the number of the tasks in the
983
- # service that remain in the `RUNNING` state. This is while the
984
- # container instances are in the `DRAINING` state. If the tasks in the
985
- # service use the Fargate launch type, the minimum healthy percent and
986
- # maximum percent values aren't used. This is the case even if they're
987
- # currently visible when describing your service.
940
+ # The deployment controller is the mechanism that determines how tasks
941
+ # are deployed for your service. The valid options are:
942
+ #
943
+ # * ECS
944
+ #
945
+ # When you create a service which uses the `ECS` deployment
946
+ # controller, you can choose between the following deployment
947
+ # strategies (which you can set in the “`strategy`” field in
948
+ # “`deploymentConfiguration`”): :
949
+ #
950
+ # * `ROLLING`: When you create a service which uses the *rolling
951
+ # update* (`ROLLING`) deployment strategy, the Amazon ECS service
952
+ # scheduler replaces the currently running tasks with new tasks. The
953
+ # number of tasks that Amazon ECS adds or removes from the service
954
+ # during a rolling update is controlled by the service deployment
955
+ # configuration. For more information, see [Deploy Amazon ECS
956
+ # services by replacing tasks][5] in the *Amazon Elastic Container
957
+ # Service Developer Guide*.
958
+ #
959
+ # Rolling update deployments are best suited for the following
960
+ # scenarios:
961
+ #
962
+ # * Gradual service updates: You need to update your service
963
+ # incrementally without taking the entire service offline at once.
964
+ #
965
+ # * Limited resource requirements: You want to avoid the additional
966
+ # resource costs of running two complete environments
967
+ # simultaneously (as required by blue/green deployments).
968
+ #
969
+ # * Acceptable deployment time: Your application can tolerate a
970
+ # longer deployment process, as rolling updates replace tasks one
971
+ # by one.
972
+ #
973
+ # * No need for instant roll back: Your service can tolerate a
974
+ # rollback process that takes minutes rather than seconds.
975
+ #
976
+ # * Simple deployment process: You prefer a straightforward
977
+ # deployment approach without the complexity of managing multiple
978
+ # environments, target groups, and listeners.
979
+ #
980
+ # * No load balancer requirement: Your service doesn't use or
981
+ # require a load balancer, Application Load Balancer, Network Load
982
+ # Balancer, or Service Connect (which are required for blue/green
983
+ # deployments).
984
+ #
985
+ # * Stateful applications: Your application maintains state that
986
+ # makes it difficult to run two parallel environments.
987
+ #
988
+ # * Cost sensitivity: You want to minimize deployment costs by not
989
+ # running duplicate environments during deployment.
990
+ # Rolling updates are the default deployment strategy for services
991
+ # and provide a balance between deployment safety and resource
992
+ # efficiency for many common application scenarios.
993
+ #
994
+ # * `BLUE_GREEN`: A *blue/green* deployment strategy (`BLUE_GREEN`) is
995
+ # a release methodology that reduces downtime and risk by running
996
+ # two identical production environments called blue and green. With
997
+ # Amazon ECS blue/green deployments, you can validate new service
998
+ # revisions before directing production traffic to them. This
999
+ # approach provides a safer way to deploy changes with the ability
1000
+ # to quickly roll back if needed. For more information, see [Amazon
1001
+ # ECS blue/green deployments][6] in the *Amazon Elastic Container
1002
+ # Service Developer Guide*.
1003
+ #
1004
+ # Amazon ECS blue/green deployments are best suited for the
1005
+ # following scenarios:
1006
+ #
1007
+ # * Service validation: When you need to validate new service
1008
+ # revisions before directing production traffic to them
1009
+ #
1010
+ # * Zero downtime: When your service requires zero-downtime
1011
+ # deployments
1012
+ #
1013
+ # * Instant roll back: When you need the ability to quickly roll
1014
+ # back if issues are detected
1015
+ #
1016
+ # * Load balancer requirement: When your service uses Application
1017
+ # Load Balancer, Network Load Balancer, or Service Connect
1018
+ # * External
1019
+ #
1020
+ # Use a third-party deployment controller.
1021
+ #
1022
+ # * Blue/green deployment (powered by CodeDeploy)
1023
+ #
1024
+ # CodeDeploy installs an updated version of the application as a new
1025
+ # replacement task set and reroutes production traffic from the
1026
+ # original application task set to the replacement task set. The
1027
+ # original task set is terminated after a successful deployment. Use
1028
+ # this deployment controller to verify a new deployment of a service
1029
+ # before sending production traffic to it.
988
1030
  #
989
1031
  # When creating a service that uses the `EXTERNAL` deployment
990
1032
  # controller, you can specify only parameters that aren't controlled at
991
1033
  # the task set level. The only required parameter is the service name.
992
- # You control your services using the [CreateTaskSet][5]. For more
993
- # information, see [Amazon ECS deployment types][6] in the *Amazon
1034
+ # You control your services using the [CreateTaskSet][7]. For more
1035
+ # information, see [Amazon ECS deployment types][8] in the *Amazon
994
1036
  # Elastic Container Service Developer Guide*.
995
1037
  #
996
1038
  # When the service scheduler launches new tasks, it determines task
997
1039
  # placement. For information about task placement and task placement
998
- # strategies, see [Amazon ECS task placement][7] in the *Amazon Elastic
1040
+ # strategies, see [Amazon ECS task placement][9] in the *Amazon Elastic
999
1041
  # Container Service Developer Guide*
1000
1042
  #
1001
1043
  #
@@ -1004,9 +1046,11 @@ module Aws::ECS
1004
1046
  # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html
1005
1047
  # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ebs-volumes.html#ebs-volume-types
1006
1048
  # [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html
1007
- # [5]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateTaskSet.html
1008
- # [6]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
1009
- # [7]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement.html
1049
+ # [5]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html
1050
+ # [6]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-blue-green.html
1051
+ # [7]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateTaskSet.html
1052
+ # [8]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
1053
+ # [9]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement.html
1010
1054
  #
1011
1055
  # @option params [String] :cluster
1012
1056
  # The short name or full Amazon Resource Name (ARN) of the cluster that
@@ -1324,8 +1368,8 @@ module Aws::ECS
1324
1368
  # resources][1] in the *Amazon Elastic Container Service Developer
1325
1369
  # Guide*.
1326
1370
  #
1327
- # When you use Amazon ECS managed tags, you need to set the
1328
- # `propagateTags` request parameter.
1371
+ # When you use Amazon ECS managed tags, you must set the `propagateTags`
1372
+ # request parameter.
1329
1373
  #
1330
1374
  #
1331
1375
  #
@@ -1513,6 +1557,12 @@ module Aws::ECS
1513
1557
  # load_balancer_name: "String",
1514
1558
  # container_name: "String",
1515
1559
  # container_port: 1,
1560
+ # advanced_configuration: {
1561
+ # alternate_target_group_arn: "String",
1562
+ # production_listener_rule: "String",
1563
+ # test_listener_rule: "String",
1564
+ # role_arn: "String",
1565
+ # },
1516
1566
  # },
1517
1567
  # ],
1518
1568
  # service_registries: [
@@ -1547,6 +1597,15 @@ module Aws::ECS
1547
1597
  # rollback: false, # required
1548
1598
  # enable: false, # required
1549
1599
  # },
1600
+ # strategy: "ROLLING", # accepts ROLLING, BLUE_GREEN
1601
+ # bake_time_in_minutes: 1,
1602
+ # lifecycle_hooks: [
1603
+ # {
1604
+ # hook_target_arn: "String",
1605
+ # role_arn: "IAMRoleArn",
1606
+ # lifecycle_stages: ["RECONCILE_SERVICE"], # accepts RECONCILE_SERVICE, PRE_SCALE_UP, POST_SCALE_UP, TEST_TRAFFIC_SHIFT, POST_TEST_TRAFFIC_SHIFT, PRODUCTION_TRAFFIC_SHIFT, POST_PRODUCTION_TRAFFIC_SHIFT
1607
+ # },
1608
+ # ],
1550
1609
  # },
1551
1610
  # placement_constraints: [
1552
1611
  # {
@@ -1592,6 +1651,14 @@ module Aws::ECS
1592
1651
  # {
1593
1652
  # port: 1, # required
1594
1653
  # dns_name: "String",
1654
+ # test_traffic_rules: {
1655
+ # header: { # required
1656
+ # name: "String", # required
1657
+ # value: {
1658
+ # exact: "String", # required
1659
+ # },
1660
+ # },
1661
+ # },
1595
1662
  # },
1596
1663
  # ],
1597
1664
  # ingress_port_override: 1,
@@ -1669,6 +1736,10 @@ module Aws::ECS
1669
1736
  # resp.service.load_balancers[0].load_balancer_name #=> String
1670
1737
  # resp.service.load_balancers[0].container_name #=> String
1671
1738
  # resp.service.load_balancers[0].container_port #=> Integer
1739
+ # resp.service.load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
1740
+ # resp.service.load_balancers[0].advanced_configuration.production_listener_rule #=> String
1741
+ # resp.service.load_balancers[0].advanced_configuration.test_listener_rule #=> String
1742
+ # resp.service.load_balancers[0].advanced_configuration.role_arn #=> String
1672
1743
  # resp.service.service_registries #=> Array
1673
1744
  # resp.service.service_registries[0].registry_arn #=> String
1674
1745
  # resp.service.service_registries[0].port #=> Integer
@@ -1694,6 +1765,13 @@ module Aws::ECS
1694
1765
  # resp.service.deployment_configuration.alarms.alarm_names[0] #=> String
1695
1766
  # resp.service.deployment_configuration.alarms.rollback #=> Boolean
1696
1767
  # resp.service.deployment_configuration.alarms.enable #=> Boolean
1768
+ # resp.service.deployment_configuration.strategy #=> String, one of "ROLLING", "BLUE_GREEN"
1769
+ # resp.service.deployment_configuration.bake_time_in_minutes #=> Integer
1770
+ # resp.service.deployment_configuration.lifecycle_hooks #=> Array
1771
+ # resp.service.deployment_configuration.lifecycle_hooks[0].hook_target_arn #=> String
1772
+ # resp.service.deployment_configuration.lifecycle_hooks[0].role_arn #=> String
1773
+ # resp.service.deployment_configuration.lifecycle_hooks[0].lifecycle_stages #=> Array
1774
+ # resp.service.deployment_configuration.lifecycle_hooks[0].lifecycle_stages[0] #=> String, one of "RECONCILE_SERVICE", "PRE_SCALE_UP", "POST_SCALE_UP", "TEST_TRAFFIC_SHIFT", "POST_TEST_TRAFFIC_SHIFT", "PRODUCTION_TRAFFIC_SHIFT", "POST_PRODUCTION_TRAFFIC_SHIFT"
1697
1775
  # resp.service.task_sets #=> Array
1698
1776
  # resp.service.task_sets[0].id #=> String
1699
1777
  # resp.service.task_sets[0].task_set_arn #=> String
@@ -1725,6 +1803,10 @@ module Aws::ECS
1725
1803
  # resp.service.task_sets[0].load_balancers[0].load_balancer_name #=> String
1726
1804
  # resp.service.task_sets[0].load_balancers[0].container_name #=> String
1727
1805
  # resp.service.task_sets[0].load_balancers[0].container_port #=> Integer
1806
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
1807
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.production_listener_rule #=> String
1808
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.test_listener_rule #=> String
1809
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.role_arn #=> String
1728
1810
  # resp.service.task_sets[0].service_registries #=> Array
1729
1811
  # resp.service.task_sets[0].service_registries[0].registry_arn #=> String
1730
1812
  # resp.service.task_sets[0].service_registries[0].port #=> Integer
@@ -1770,6 +1852,8 @@ module Aws::ECS
1770
1852
  # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases #=> Array
1771
1853
  # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].port #=> Integer
1772
1854
  # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].dns_name #=> String
1855
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.name #=> String
1856
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.value.exact #=> String
1773
1857
  # resp.service.deployments[0].service_connect_configuration.services[0].ingress_port_override #=> Integer
1774
1858
  # resp.service.deployments[0].service_connect_configuration.services[0].timeout.idle_timeout_seconds #=> Integer
1775
1859
  # resp.service.deployments[0].service_connect_configuration.services[0].timeout.per_request_timeout_seconds #=> Integer
@@ -2073,6 +2157,12 @@ module Aws::ECS
2073
2157
  # load_balancer_name: "String",
2074
2158
  # container_name: "String",
2075
2159
  # container_port: 1,
2160
+ # advanced_configuration: {
2161
+ # alternate_target_group_arn: "String",
2162
+ # production_listener_rule: "String",
2163
+ # test_listener_rule: "String",
2164
+ # role_arn: "String",
2165
+ # },
2076
2166
  # },
2077
2167
  # ],
2078
2168
  # service_registries: [
@@ -2137,6 +2227,10 @@ module Aws::ECS
2137
2227
  # resp.task_set.load_balancers[0].load_balancer_name #=> String
2138
2228
  # resp.task_set.load_balancers[0].container_name #=> String
2139
2229
  # resp.task_set.load_balancers[0].container_port #=> Integer
2230
+ # resp.task_set.load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
2231
+ # resp.task_set.load_balancers[0].advanced_configuration.production_listener_rule #=> String
2232
+ # resp.task_set.load_balancers[0].advanced_configuration.test_listener_rule #=> String
2233
+ # resp.task_set.load_balancers[0].advanced_configuration.role_arn #=> String
2140
2234
  # resp.task_set.service_registries #=> Array
2141
2235
  # resp.task_set.service_registries[0].registry_arn #=> String
2142
2236
  # resp.task_set.service_registries[0].port #=> Integer
@@ -2603,6 +2697,10 @@ module Aws::ECS
2603
2697
  # resp.service.load_balancers[0].load_balancer_name #=> String
2604
2698
  # resp.service.load_balancers[0].container_name #=> String
2605
2699
  # resp.service.load_balancers[0].container_port #=> Integer
2700
+ # resp.service.load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
2701
+ # resp.service.load_balancers[0].advanced_configuration.production_listener_rule #=> String
2702
+ # resp.service.load_balancers[0].advanced_configuration.test_listener_rule #=> String
2703
+ # resp.service.load_balancers[0].advanced_configuration.role_arn #=> String
2606
2704
  # resp.service.service_registries #=> Array
2607
2705
  # resp.service.service_registries[0].registry_arn #=> String
2608
2706
  # resp.service.service_registries[0].port #=> Integer
@@ -2628,6 +2726,13 @@ module Aws::ECS
2628
2726
  # resp.service.deployment_configuration.alarms.alarm_names[0] #=> String
2629
2727
  # resp.service.deployment_configuration.alarms.rollback #=> Boolean
2630
2728
  # resp.service.deployment_configuration.alarms.enable #=> Boolean
2729
+ # resp.service.deployment_configuration.strategy #=> String, one of "ROLLING", "BLUE_GREEN"
2730
+ # resp.service.deployment_configuration.bake_time_in_minutes #=> Integer
2731
+ # resp.service.deployment_configuration.lifecycle_hooks #=> Array
2732
+ # resp.service.deployment_configuration.lifecycle_hooks[0].hook_target_arn #=> String
2733
+ # resp.service.deployment_configuration.lifecycle_hooks[0].role_arn #=> String
2734
+ # resp.service.deployment_configuration.lifecycle_hooks[0].lifecycle_stages #=> Array
2735
+ # resp.service.deployment_configuration.lifecycle_hooks[0].lifecycle_stages[0] #=> String, one of "RECONCILE_SERVICE", "PRE_SCALE_UP", "POST_SCALE_UP", "TEST_TRAFFIC_SHIFT", "POST_TEST_TRAFFIC_SHIFT", "PRODUCTION_TRAFFIC_SHIFT", "POST_PRODUCTION_TRAFFIC_SHIFT"
2631
2736
  # resp.service.task_sets #=> Array
2632
2737
  # resp.service.task_sets[0].id #=> String
2633
2738
  # resp.service.task_sets[0].task_set_arn #=> String
@@ -2659,6 +2764,10 @@ module Aws::ECS
2659
2764
  # resp.service.task_sets[0].load_balancers[0].load_balancer_name #=> String
2660
2765
  # resp.service.task_sets[0].load_balancers[0].container_name #=> String
2661
2766
  # resp.service.task_sets[0].load_balancers[0].container_port #=> Integer
2767
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
2768
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.production_listener_rule #=> String
2769
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.test_listener_rule #=> String
2770
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.role_arn #=> String
2662
2771
  # resp.service.task_sets[0].service_registries #=> Array
2663
2772
  # resp.service.task_sets[0].service_registries[0].registry_arn #=> String
2664
2773
  # resp.service.task_sets[0].service_registries[0].port #=> Integer
@@ -2704,6 +2813,8 @@ module Aws::ECS
2704
2813
  # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases #=> Array
2705
2814
  # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].port #=> Integer
2706
2815
  # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].dns_name #=> String
2816
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.name #=> String
2817
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.value.exact #=> String
2707
2818
  # resp.service.deployments[0].service_connect_configuration.services[0].ingress_port_override #=> Integer
2708
2819
  # resp.service.deployments[0].service_connect_configuration.services[0].timeout.idle_timeout_seconds #=> Integer
2709
2820
  # resp.service.deployments[0].service_connect_configuration.services[0].timeout.per_request_timeout_seconds #=> Integer
@@ -3187,6 +3298,10 @@ module Aws::ECS
3187
3298
  # resp.task_set.load_balancers[0].load_balancer_name #=> String
3188
3299
  # resp.task_set.load_balancers[0].container_name #=> String
3189
3300
  # resp.task_set.load_balancers[0].container_port #=> Integer
3301
+ # resp.task_set.load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
3302
+ # resp.task_set.load_balancers[0].advanced_configuration.production_listener_rule #=> String
3303
+ # resp.task_set.load_balancers[0].advanced_configuration.test_listener_rule #=> String
3304
+ # resp.task_set.load_balancers[0].advanced_configuration.role_arn #=> String
3190
3305
  # resp.task_set.service_registries #=> Array
3191
3306
  # resp.task_set.service_registries[0].registry_arn #=> String
3192
3307
  # resp.task_set.service_registries[0].port #=> Integer
@@ -4188,6 +4303,7 @@ module Aws::ECS
4188
4303
  # resp.service_deployments[0].target_service_revision.pending_task_count #=> Integer
4189
4304
  # resp.service_deployments[0].status #=> String, one of "PENDING", "SUCCESSFUL", "STOPPED", "STOP_REQUESTED", "IN_PROGRESS", "ROLLBACK_REQUESTED", "ROLLBACK_IN_PROGRESS", "ROLLBACK_SUCCESSFUL", "ROLLBACK_FAILED"
4190
4305
  # resp.service_deployments[0].status_reason #=> String
4306
+ # resp.service_deployments[0].lifecycle_stage #=> String, one of "RECONCILE_SERVICE", "PRE_SCALE_UP", "SCALE_UP", "POST_SCALE_UP", "TEST_TRAFFIC_SHIFT", "POST_TEST_TRAFFIC_SHIFT", "PRODUCTION_TRAFFIC_SHIFT", "POST_PRODUCTION_TRAFFIC_SHIFT", "BAKE_TIME", "CLEAN_UP"
4191
4307
  # resp.service_deployments[0].deployment_configuration.deployment_circuit_breaker.enable #=> Boolean
4192
4308
  # resp.service_deployments[0].deployment_configuration.deployment_circuit_breaker.rollback #=> Boolean
4193
4309
  # resp.service_deployments[0].deployment_configuration.maximum_percent #=> Integer
@@ -4196,6 +4312,13 @@ module Aws::ECS
4196
4312
  # resp.service_deployments[0].deployment_configuration.alarms.alarm_names[0] #=> String
4197
4313
  # resp.service_deployments[0].deployment_configuration.alarms.rollback #=> Boolean
4198
4314
  # resp.service_deployments[0].deployment_configuration.alarms.enable #=> Boolean
4315
+ # resp.service_deployments[0].deployment_configuration.strategy #=> String, one of "ROLLING", "BLUE_GREEN"
4316
+ # resp.service_deployments[0].deployment_configuration.bake_time_in_minutes #=> Integer
4317
+ # resp.service_deployments[0].deployment_configuration.lifecycle_hooks #=> Array
4318
+ # resp.service_deployments[0].deployment_configuration.lifecycle_hooks[0].hook_target_arn #=> String
4319
+ # resp.service_deployments[0].deployment_configuration.lifecycle_hooks[0].role_arn #=> String
4320
+ # resp.service_deployments[0].deployment_configuration.lifecycle_hooks[0].lifecycle_stages #=> Array
4321
+ # resp.service_deployments[0].deployment_configuration.lifecycle_hooks[0].lifecycle_stages[0] #=> String, one of "RECONCILE_SERVICE", "PRE_SCALE_UP", "POST_SCALE_UP", "TEST_TRAFFIC_SHIFT", "POST_TEST_TRAFFIC_SHIFT", "PRODUCTION_TRAFFIC_SHIFT", "POST_PRODUCTION_TRAFFIC_SHIFT"
4199
4322
  # resp.service_deployments[0].rollback.reason #=> String
4200
4323
  # resp.service_deployments[0].rollback.started_at #=> Time
4201
4324
  # resp.service_deployments[0].rollback.service_revision_arn #=> String
@@ -4317,6 +4440,10 @@ module Aws::ECS
4317
4440
  # resp.service_revisions[0].load_balancers[0].load_balancer_name #=> String
4318
4441
  # resp.service_revisions[0].load_balancers[0].container_name #=> String
4319
4442
  # resp.service_revisions[0].load_balancers[0].container_port #=> Integer
4443
+ # resp.service_revisions[0].load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
4444
+ # resp.service_revisions[0].load_balancers[0].advanced_configuration.production_listener_rule #=> String
4445
+ # resp.service_revisions[0].load_balancers[0].advanced_configuration.test_listener_rule #=> String
4446
+ # resp.service_revisions[0].load_balancers[0].advanced_configuration.role_arn #=> String
4320
4447
  # resp.service_revisions[0].service_registries #=> Array
4321
4448
  # resp.service_revisions[0].service_registries[0].registry_arn #=> String
4322
4449
  # resp.service_revisions[0].service_registries[0].port #=> Integer
@@ -4340,6 +4467,8 @@ module Aws::ECS
4340
4467
  # resp.service_revisions[0].service_connect_configuration.services[0].client_aliases #=> Array
4341
4468
  # resp.service_revisions[0].service_connect_configuration.services[0].client_aliases[0].port #=> Integer
4342
4469
  # resp.service_revisions[0].service_connect_configuration.services[0].client_aliases[0].dns_name #=> String
4470
+ # resp.service_revisions[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.name #=> String
4471
+ # resp.service_revisions[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.value.exact #=> String
4343
4472
  # resp.service_revisions[0].service_connect_configuration.services[0].ingress_port_override #=> Integer
4344
4473
  # resp.service_revisions[0].service_connect_configuration.services[0].timeout.idle_timeout_seconds #=> Integer
4345
4474
  # resp.service_revisions[0].service_connect_configuration.services[0].timeout.per_request_timeout_seconds #=> Integer
@@ -4376,6 +4505,9 @@ module Aws::ECS
4376
4505
  # resp.service_revisions[0].vpc_lattice_configurations[0].role_arn #=> String
4377
4506
  # resp.service_revisions[0].vpc_lattice_configurations[0].target_group_arn #=> String
4378
4507
  # resp.service_revisions[0].vpc_lattice_configurations[0].port_name #=> String
4508
+ # resp.service_revisions[0].resolved_configuration.load_balancers #=> Array
4509
+ # resp.service_revisions[0].resolved_configuration.load_balancers[0].target_group_arn #=> String
4510
+ # resp.service_revisions[0].resolved_configuration.load_balancers[0].production_listener_rule #=> String
4379
4511
  # resp.failures #=> Array
4380
4512
  # resp.failures[0].arn #=> String
4381
4513
  # resp.failures[0].reason #=> String
@@ -4487,6 +4619,10 @@ module Aws::ECS
4487
4619
  # resp.services[0].load_balancers[0].load_balancer_name #=> String
4488
4620
  # resp.services[0].load_balancers[0].container_name #=> String
4489
4621
  # resp.services[0].load_balancers[0].container_port #=> Integer
4622
+ # resp.services[0].load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
4623
+ # resp.services[0].load_balancers[0].advanced_configuration.production_listener_rule #=> String
4624
+ # resp.services[0].load_balancers[0].advanced_configuration.test_listener_rule #=> String
4625
+ # resp.services[0].load_balancers[0].advanced_configuration.role_arn #=> String
4490
4626
  # resp.services[0].service_registries #=> Array
4491
4627
  # resp.services[0].service_registries[0].registry_arn #=> String
4492
4628
  # resp.services[0].service_registries[0].port #=> Integer
@@ -4512,6 +4648,13 @@ module Aws::ECS
4512
4648
  # resp.services[0].deployment_configuration.alarms.alarm_names[0] #=> String
4513
4649
  # resp.services[0].deployment_configuration.alarms.rollback #=> Boolean
4514
4650
  # resp.services[0].deployment_configuration.alarms.enable #=> Boolean
4651
+ # resp.services[0].deployment_configuration.strategy #=> String, one of "ROLLING", "BLUE_GREEN"
4652
+ # resp.services[0].deployment_configuration.bake_time_in_minutes #=> Integer
4653
+ # resp.services[0].deployment_configuration.lifecycle_hooks #=> Array
4654
+ # resp.services[0].deployment_configuration.lifecycle_hooks[0].hook_target_arn #=> String
4655
+ # resp.services[0].deployment_configuration.lifecycle_hooks[0].role_arn #=> String
4656
+ # resp.services[0].deployment_configuration.lifecycle_hooks[0].lifecycle_stages #=> Array
4657
+ # resp.services[0].deployment_configuration.lifecycle_hooks[0].lifecycle_stages[0] #=> String, one of "RECONCILE_SERVICE", "PRE_SCALE_UP", "POST_SCALE_UP", "TEST_TRAFFIC_SHIFT", "POST_TEST_TRAFFIC_SHIFT", "PRODUCTION_TRAFFIC_SHIFT", "POST_PRODUCTION_TRAFFIC_SHIFT"
4515
4658
  # resp.services[0].task_sets #=> Array
4516
4659
  # resp.services[0].task_sets[0].id #=> String
4517
4660
  # resp.services[0].task_sets[0].task_set_arn #=> String
@@ -4543,6 +4686,10 @@ module Aws::ECS
4543
4686
  # resp.services[0].task_sets[0].load_balancers[0].load_balancer_name #=> String
4544
4687
  # resp.services[0].task_sets[0].load_balancers[0].container_name #=> String
4545
4688
  # resp.services[0].task_sets[0].load_balancers[0].container_port #=> Integer
4689
+ # resp.services[0].task_sets[0].load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
4690
+ # resp.services[0].task_sets[0].load_balancers[0].advanced_configuration.production_listener_rule #=> String
4691
+ # resp.services[0].task_sets[0].load_balancers[0].advanced_configuration.test_listener_rule #=> String
4692
+ # resp.services[0].task_sets[0].load_balancers[0].advanced_configuration.role_arn #=> String
4546
4693
  # resp.services[0].task_sets[0].service_registries #=> Array
4547
4694
  # resp.services[0].task_sets[0].service_registries[0].registry_arn #=> String
4548
4695
  # resp.services[0].task_sets[0].service_registries[0].port #=> Integer
@@ -4588,6 +4735,8 @@ module Aws::ECS
4588
4735
  # resp.services[0].deployments[0].service_connect_configuration.services[0].client_aliases #=> Array
4589
4736
  # resp.services[0].deployments[0].service_connect_configuration.services[0].client_aliases[0].port #=> Integer
4590
4737
  # resp.services[0].deployments[0].service_connect_configuration.services[0].client_aliases[0].dns_name #=> String
4738
+ # resp.services[0].deployments[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.name #=> String
4739
+ # resp.services[0].deployments[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.value.exact #=> String
4591
4740
  # resp.services[0].deployments[0].service_connect_configuration.services[0].ingress_port_override #=> Integer
4592
4741
  # resp.services[0].deployments[0].service_connect_configuration.services[0].timeout.idle_timeout_seconds #=> Integer
4593
4742
  # resp.services[0].deployments[0].service_connect_configuration.services[0].timeout.per_request_timeout_seconds #=> Integer
@@ -5080,6 +5229,10 @@ module Aws::ECS
5080
5229
  # resp.task_sets[0].load_balancers[0].load_balancer_name #=> String
5081
5230
  # resp.task_sets[0].load_balancers[0].container_name #=> String
5082
5231
  # resp.task_sets[0].load_balancers[0].container_port #=> Integer
5232
+ # resp.task_sets[0].load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
5233
+ # resp.task_sets[0].load_balancers[0].advanced_configuration.production_listener_rule #=> String
5234
+ # resp.task_sets[0].load_balancers[0].advanced_configuration.test_listener_rule #=> String
5235
+ # resp.task_sets[0].load_balancers[0].advanced_configuration.role_arn #=> String
5083
5236
  # resp.task_sets[0].service_registries #=> Array
5084
5237
  # resp.task_sets[0].service_registries[0].registry_arn #=> String
5085
5238
  # resp.task_sets[0].service_registries[0].port #=> Integer
@@ -5120,8 +5273,8 @@ module Aws::ECS
5120
5273
  # @option params [String] :cluster
5121
5274
  # The short name or full Amazon Resource Name (ARN) of the cluster that
5122
5275
  # hosts the task or tasks to describe. If you do not specify a cluster,
5123
- # the default cluster is assumed. This parameter is required. If you do
5124
- # not specify a value, the `default` cluster is used.
5276
+ # the default cluster is assumed. If you do not specify a value, the
5277
+ # `default` cluster is used.
5125
5278
  #
5126
5279
  # @option params [required, Array<String>] :tasks
5127
5280
  # A list of up to 100 task IDs or full ARN entries.
@@ -11597,6 +11750,9 @@ module Aws::ECS
11597
11750
  # can prevent the service scheduler from marking tasks as unhealthy and
11598
11751
  # stopping them before they have time to come up.
11599
11752
  #
11753
+ # @option params [Types::DeploymentController] :deployment_controller
11754
+ # The deployment controller to use for the service.
11755
+ #
11600
11756
  # @option params [Boolean] :enable_execute_command
11601
11757
  # If `true`, this enables execute command functionality on all task
11602
11758
  # containers.
@@ -11781,6 +11937,15 @@ module Aws::ECS
11781
11937
  # rollback: false, # required
11782
11938
  # enable: false, # required
11783
11939
  # },
11940
+ # strategy: "ROLLING", # accepts ROLLING, BLUE_GREEN
11941
+ # bake_time_in_minutes: 1,
11942
+ # lifecycle_hooks: [
11943
+ # {
11944
+ # hook_target_arn: "String",
11945
+ # role_arn: "IAMRoleArn",
11946
+ # lifecycle_stages: ["RECONCILE_SERVICE"], # accepts RECONCILE_SERVICE, PRE_SCALE_UP, POST_SCALE_UP, TEST_TRAFFIC_SHIFT, POST_TEST_TRAFFIC_SHIFT, PRODUCTION_TRAFFIC_SHIFT, POST_PRODUCTION_TRAFFIC_SHIFT
11947
+ # },
11948
+ # ],
11784
11949
  # },
11785
11950
  # availability_zone_rebalancing: "ENABLED", # accepts ENABLED, DISABLED
11786
11951
  # network_configuration: {
@@ -11805,6 +11970,9 @@ module Aws::ECS
11805
11970
  # platform_version: "String",
11806
11971
  # force_new_deployment: false,
11807
11972
  # health_check_grace_period_seconds: 1,
11973
+ # deployment_controller: {
11974
+ # type: "ECS", # required, accepts ECS, CODE_DEPLOY, EXTERNAL
11975
+ # },
11808
11976
  # enable_execute_command: false,
11809
11977
  # enable_ecs_managed_tags: false,
11810
11978
  # load_balancers: [
@@ -11813,6 +11981,12 @@ module Aws::ECS
11813
11981
  # load_balancer_name: "String",
11814
11982
  # container_name: "String",
11815
11983
  # container_port: 1,
11984
+ # advanced_configuration: {
11985
+ # alternate_target_group_arn: "String",
11986
+ # production_listener_rule: "String",
11987
+ # test_listener_rule: "String",
11988
+ # role_arn: "String",
11989
+ # },
11816
11990
  # },
11817
11991
  # ],
11818
11992
  # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION, SERVICE, NONE
@@ -11835,6 +12009,14 @@ module Aws::ECS
11835
12009
  # {
11836
12010
  # port: 1, # required
11837
12011
  # dns_name: "String",
12012
+ # test_traffic_rules: {
12013
+ # header: { # required
12014
+ # name: "String", # required
12015
+ # value: {
12016
+ # exact: "String", # required
12017
+ # },
12018
+ # },
12019
+ # },
11838
12020
  # },
11839
12021
  # ],
11840
12022
  # ingress_port_override: 1,
@@ -11912,6 +12094,10 @@ module Aws::ECS
11912
12094
  # resp.service.load_balancers[0].load_balancer_name #=> String
11913
12095
  # resp.service.load_balancers[0].container_name #=> String
11914
12096
  # resp.service.load_balancers[0].container_port #=> Integer
12097
+ # resp.service.load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
12098
+ # resp.service.load_balancers[0].advanced_configuration.production_listener_rule #=> String
12099
+ # resp.service.load_balancers[0].advanced_configuration.test_listener_rule #=> String
12100
+ # resp.service.load_balancers[0].advanced_configuration.role_arn #=> String
11915
12101
  # resp.service.service_registries #=> Array
11916
12102
  # resp.service.service_registries[0].registry_arn #=> String
11917
12103
  # resp.service.service_registries[0].port #=> Integer
@@ -11937,6 +12123,13 @@ module Aws::ECS
11937
12123
  # resp.service.deployment_configuration.alarms.alarm_names[0] #=> String
11938
12124
  # resp.service.deployment_configuration.alarms.rollback #=> Boolean
11939
12125
  # resp.service.deployment_configuration.alarms.enable #=> Boolean
12126
+ # resp.service.deployment_configuration.strategy #=> String, one of "ROLLING", "BLUE_GREEN"
12127
+ # resp.service.deployment_configuration.bake_time_in_minutes #=> Integer
12128
+ # resp.service.deployment_configuration.lifecycle_hooks #=> Array
12129
+ # resp.service.deployment_configuration.lifecycle_hooks[0].hook_target_arn #=> String
12130
+ # resp.service.deployment_configuration.lifecycle_hooks[0].role_arn #=> String
12131
+ # resp.service.deployment_configuration.lifecycle_hooks[0].lifecycle_stages #=> Array
12132
+ # resp.service.deployment_configuration.lifecycle_hooks[0].lifecycle_stages[0] #=> String, one of "RECONCILE_SERVICE", "PRE_SCALE_UP", "POST_SCALE_UP", "TEST_TRAFFIC_SHIFT", "POST_TEST_TRAFFIC_SHIFT", "PRODUCTION_TRAFFIC_SHIFT", "POST_PRODUCTION_TRAFFIC_SHIFT"
11940
12133
  # resp.service.task_sets #=> Array
11941
12134
  # resp.service.task_sets[0].id #=> String
11942
12135
  # resp.service.task_sets[0].task_set_arn #=> String
@@ -11968,6 +12161,10 @@ module Aws::ECS
11968
12161
  # resp.service.task_sets[0].load_balancers[0].load_balancer_name #=> String
11969
12162
  # resp.service.task_sets[0].load_balancers[0].container_name #=> String
11970
12163
  # resp.service.task_sets[0].load_balancers[0].container_port #=> Integer
12164
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
12165
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.production_listener_rule #=> String
12166
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.test_listener_rule #=> String
12167
+ # resp.service.task_sets[0].load_balancers[0].advanced_configuration.role_arn #=> String
11971
12168
  # resp.service.task_sets[0].service_registries #=> Array
11972
12169
  # resp.service.task_sets[0].service_registries[0].registry_arn #=> String
11973
12170
  # resp.service.task_sets[0].service_registries[0].port #=> Integer
@@ -12013,6 +12210,8 @@ module Aws::ECS
12013
12210
  # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases #=> Array
12014
12211
  # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].port #=> Integer
12015
12212
  # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].dns_name #=> String
12213
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.name #=> String
12214
+ # resp.service.deployments[0].service_connect_configuration.services[0].client_aliases[0].test_traffic_rules.header.value.exact #=> String
12016
12215
  # resp.service.deployments[0].service_connect_configuration.services[0].ingress_port_override #=> Integer
12017
12216
  # resp.service.deployments[0].service_connect_configuration.services[0].timeout.idle_timeout_seconds #=> Integer
12018
12217
  # resp.service.deployments[0].service_connect_configuration.services[0].timeout.per_request_timeout_seconds #=> Integer
@@ -12204,6 +12403,10 @@ module Aws::ECS
12204
12403
  # resp.task_set.load_balancers[0].load_balancer_name #=> String
12205
12404
  # resp.task_set.load_balancers[0].container_name #=> String
12206
12405
  # resp.task_set.load_balancers[0].container_port #=> Integer
12406
+ # resp.task_set.load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
12407
+ # resp.task_set.load_balancers[0].advanced_configuration.production_listener_rule #=> String
12408
+ # resp.task_set.load_balancers[0].advanced_configuration.test_listener_rule #=> String
12409
+ # resp.task_set.load_balancers[0].advanced_configuration.role_arn #=> String
12207
12410
  # resp.task_set.service_registries #=> Array
12208
12411
  # resp.task_set.service_registries[0].registry_arn #=> String
12209
12412
  # resp.task_set.service_registries[0].port #=> Integer
@@ -12524,6 +12727,10 @@ module Aws::ECS
12524
12727
  # resp.task_set.load_balancers[0].load_balancer_name #=> String
12525
12728
  # resp.task_set.load_balancers[0].container_name #=> String
12526
12729
  # resp.task_set.load_balancers[0].container_port #=> Integer
12730
+ # resp.task_set.load_balancers[0].advanced_configuration.alternate_target_group_arn #=> String
12731
+ # resp.task_set.load_balancers[0].advanced_configuration.production_listener_rule #=> String
12732
+ # resp.task_set.load_balancers[0].advanced_configuration.test_listener_rule #=> String
12733
+ # resp.task_set.load_balancers[0].advanced_configuration.role_arn #=> String
12527
12734
  # resp.task_set.service_registries #=> Array
12528
12735
  # resp.task_set.service_registries[0].registry_arn #=> String
12529
12736
  # resp.task_set.service_registries[0].port #=> Integer
@@ -12565,7 +12772,7 @@ module Aws::ECS
12565
12772
  tracer: tracer
12566
12773
  )
12567
12774
  context[:gem_name] = 'aws-sdk-ecs'
12568
- context[:gem_version] = '1.196.0'
12775
+ context[:gem_version] = '1.198.0'
12569
12776
  Seahorse::Client::Request.new(handlers, context)
12570
12777
  end
12571
12778