aws-sdk-ecs 1.25.0 → 1.26.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -66,6 +66,8 @@ module Aws::ECS
66
66
  DeleteServiceResponse = Shapes::StructureShape.new(name: 'DeleteServiceResponse')
67
67
  Deployment = Shapes::StructureShape.new(name: 'Deployment')
68
68
  DeploymentConfiguration = Shapes::StructureShape.new(name: 'DeploymentConfiguration')
69
+ DeploymentController = Shapes::StructureShape.new(name: 'DeploymentController')
70
+ DeploymentControllerType = Shapes::StringShape.new(name: 'DeploymentControllerType')
69
71
  Deployments = Shapes::ListShape.new(name: 'Deployments')
70
72
  DeregisterContainerInstanceRequest = Shapes::StructureShape.new(name: 'DeregisterContainerInstanceRequest')
71
73
  DeregisterContainerInstanceResponse = Shapes::StructureShape.new(name: 'DeregisterContainerInstanceResponse')
@@ -167,6 +169,8 @@ module Aws::ECS
167
169
  Resources = Shapes::ListShape.new(name: 'Resources')
168
170
  RunTaskRequest = Shapes::StructureShape.new(name: 'RunTaskRequest')
169
171
  RunTaskResponse = Shapes::StructureShape.new(name: 'RunTaskResponse')
172
+ Scale = Shapes::StructureShape.new(name: 'Scale')
173
+ ScaleUnit = Shapes::StringShape.new(name: 'ScaleUnit')
170
174
  SchedulingStrategy = Shapes::StringShape.new(name: 'SchedulingStrategy')
171
175
  Scope = Shapes::StringShape.new(name: 'Scope')
172
176
  Secret = Shapes::StructureShape.new(name: 'Secret')
@@ -186,6 +190,7 @@ module Aws::ECS
186
190
  SettingName = Shapes::StringShape.new(name: 'SettingName')
187
191
  Settings = Shapes::ListShape.new(name: 'Settings')
188
192
  SortOrder = Shapes::StringShape.new(name: 'SortOrder')
193
+ StabilityStatus = Shapes::StringShape.new(name: 'StabilityStatus')
189
194
  StartTaskRequest = Shapes::StructureShape.new(name: 'StartTaskRequest')
190
195
  StartTaskResponse = Shapes::StructureShape.new(name: 'StartTaskResponse')
191
196
  Statistics = Shapes::ListShape.new(name: 'Statistics')
@@ -221,6 +226,8 @@ module Aws::ECS
221
226
  TaskField = Shapes::StringShape.new(name: 'TaskField')
222
227
  TaskFieldList = Shapes::ListShape.new(name: 'TaskFieldList')
223
228
  TaskOverride = Shapes::StructureShape.new(name: 'TaskOverride')
229
+ TaskSet = Shapes::StructureShape.new(name: 'TaskSet')
230
+ TaskSets = Shapes::ListShape.new(name: 'TaskSets')
224
231
  TaskStopCode = Shapes::StringShape.new(name: 'TaskStopCode')
225
232
  Tasks = Shapes::ListShape.new(name: 'Tasks')
226
233
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
@@ -405,6 +412,7 @@ module Aws::ECS
405
412
  CreateServiceRequest.add_member(:network_configuration, Shapes::ShapeRef.new(shape: NetworkConfiguration, location_name: "networkConfiguration"))
406
413
  CreateServiceRequest.add_member(:health_check_grace_period_seconds, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "healthCheckGracePeriodSeconds"))
407
414
  CreateServiceRequest.add_member(:scheduling_strategy, Shapes::ShapeRef.new(shape: SchedulingStrategy, location_name: "schedulingStrategy"))
415
+ CreateServiceRequest.add_member(:deployment_controller, Shapes::ShapeRef.new(shape: DeploymentController, location_name: "deploymentController"))
408
416
  CreateServiceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
409
417
  CreateServiceRequest.add_member(:enable_ecs_managed_tags, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableECSManagedTags"))
410
418
  CreateServiceRequest.add_member(:propagate_tags, Shapes::ShapeRef.new(shape: PropagateTags, location_name: "propagateTags"))
@@ -458,6 +466,9 @@ module Aws::ECS
458
466
  DeploymentConfiguration.add_member(:minimum_healthy_percent, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "minimumHealthyPercent"))
459
467
  DeploymentConfiguration.struct_class = Types::DeploymentConfiguration
460
468
 
469
+ DeploymentController.add_member(:type, Shapes::ShapeRef.new(shape: DeploymentControllerType, required: true, location_name: "type"))
470
+ DeploymentController.struct_class = Types::DeploymentController
471
+
461
472
  Deployments.member = Shapes::ShapeRef.new(shape: Deployment)
462
473
 
463
474
  DeregisterContainerInstanceRequest.add_member(:cluster, Shapes::ShapeRef.new(shape: String, location_name: "cluster"))
@@ -820,6 +831,10 @@ module Aws::ECS
820
831
  RunTaskResponse.add_member(:failures, Shapes::ShapeRef.new(shape: Failures, location_name: "failures"))
821
832
  RunTaskResponse.struct_class = Types::RunTaskResponse
822
833
 
834
+ Scale.add_member(:value, Shapes::ShapeRef.new(shape: Double, location_name: "value"))
835
+ Scale.add_member(:unit, Shapes::ShapeRef.new(shape: ScaleUnit, location_name: "unit"))
836
+ Scale.struct_class = Types::Scale
837
+
823
838
  Secret.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "name"))
824
839
  Secret.add_member(:value_from, Shapes::ShapeRef.new(shape: String, required: true, location_name: "valueFrom"))
825
840
  Secret.struct_class = Types::Secret
@@ -839,6 +854,7 @@ module Aws::ECS
839
854
  Service.add_member(:platform_version, Shapes::ShapeRef.new(shape: String, location_name: "platformVersion"))
840
855
  Service.add_member(:task_definition, Shapes::ShapeRef.new(shape: String, location_name: "taskDefinition"))
841
856
  Service.add_member(:deployment_configuration, Shapes::ShapeRef.new(shape: DeploymentConfiguration, location_name: "deploymentConfiguration"))
857
+ Service.add_member(:task_sets, Shapes::ShapeRef.new(shape: TaskSets, location_name: "taskSets"))
842
858
  Service.add_member(:deployments, Shapes::ShapeRef.new(shape: Deployments, location_name: "deployments"))
843
859
  Service.add_member(:role_arn, Shapes::ShapeRef.new(shape: String, location_name: "roleArn"))
844
860
  Service.add_member(:events, Shapes::ShapeRef.new(shape: ServiceEvents, location_name: "events"))
@@ -848,6 +864,7 @@ module Aws::ECS
848
864
  Service.add_member(:network_configuration, Shapes::ShapeRef.new(shape: NetworkConfiguration, location_name: "networkConfiguration"))
849
865
  Service.add_member(:health_check_grace_period_seconds, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "healthCheckGracePeriodSeconds"))
850
866
  Service.add_member(:scheduling_strategy, Shapes::ShapeRef.new(shape: SchedulingStrategy, location_name: "schedulingStrategy"))
867
+ Service.add_member(:deployment_controller, Shapes::ShapeRef.new(shape: DeploymentController, location_name: "deploymentController"))
851
868
  Service.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
852
869
  Service.add_member(:created_by, Shapes::ShapeRef.new(shape: String, location_name: "createdBy"))
853
870
  Service.add_member(:enable_ecs_managed_tags, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableECSManagedTags"))
@@ -1022,6 +1039,28 @@ module Aws::ECS
1022
1039
  TaskOverride.add_member(:execution_role_arn, Shapes::ShapeRef.new(shape: String, location_name: "executionRoleArn"))
1023
1040
  TaskOverride.struct_class = Types::TaskOverride
1024
1041
 
1042
+ TaskSet.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
1043
+ TaskSet.add_member(:task_set_arn, Shapes::ShapeRef.new(shape: String, location_name: "taskSetArn"))
1044
+ TaskSet.add_member(:started_by, Shapes::ShapeRef.new(shape: String, location_name: "startedBy"))
1045
+ TaskSet.add_member(:external_id, Shapes::ShapeRef.new(shape: String, location_name: "externalId"))
1046
+ TaskSet.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "status"))
1047
+ TaskSet.add_member(:task_definition, Shapes::ShapeRef.new(shape: String, location_name: "taskDefinition"))
1048
+ TaskSet.add_member(:computed_desired_count, Shapes::ShapeRef.new(shape: Integer, location_name: "computedDesiredCount"))
1049
+ TaskSet.add_member(:pending_count, Shapes::ShapeRef.new(shape: Integer, location_name: "pendingCount"))
1050
+ TaskSet.add_member(:running_count, Shapes::ShapeRef.new(shape: Integer, location_name: "runningCount"))
1051
+ TaskSet.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdAt"))
1052
+ TaskSet.add_member(:updated_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "updatedAt"))
1053
+ TaskSet.add_member(:launch_type, Shapes::ShapeRef.new(shape: LaunchType, location_name: "launchType"))
1054
+ TaskSet.add_member(:platform_version, Shapes::ShapeRef.new(shape: String, location_name: "platformVersion"))
1055
+ TaskSet.add_member(:network_configuration, Shapes::ShapeRef.new(shape: NetworkConfiguration, location_name: "networkConfiguration"))
1056
+ TaskSet.add_member(:load_balancers, Shapes::ShapeRef.new(shape: LoadBalancers, location_name: "loadBalancers"))
1057
+ TaskSet.add_member(:scale, Shapes::ShapeRef.new(shape: Scale, location_name: "scale"))
1058
+ TaskSet.add_member(:stability_status, Shapes::ShapeRef.new(shape: StabilityStatus, location_name: "stabilityStatus"))
1059
+ TaskSet.add_member(:stability_status_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "stabilityStatusAt"))
1060
+ TaskSet.struct_class = Types::TaskSet
1061
+
1062
+ TaskSets.member = Shapes::ShapeRef.new(shape: TaskSet)
1063
+
1025
1064
  Tasks.member = Shapes::ShapeRef.new(shape: Task)
1026
1065
 
1027
1066
  Tmpfs.add_member(:container_path, Shapes::ShapeRef.new(shape: String, required: true, location_name: "containerPath"))
@@ -141,8 +141,8 @@ module Aws::ECS
141
141
  # @!attribute [rw] security_groups
142
142
  # The security groups associated with the task or service. If you do
143
143
  # not specify a security group, the default security group for the VPC
144
- # is used. There is a limit of 5 security groups able to be specified
145
- # per `AwsVpcConfiguration`.
144
+ # is used. There is a limit of five security groups able to be
145
+ # specified per `AwsVpcConfiguration`.
146
146
  #
147
147
  # <note markdown="1"> All specified security groups must be from the same VPC.
148
148
  #
@@ -540,7 +540,7 @@ module Aws::ECS
540
540
  # * **Agent versions less than or equal to 1.1.0:** Null and zero CPU
541
541
  # values are passed to Docker as 0, which Docker then converts to
542
542
  # 1,024 CPU shares. CPU values of 1 are passed to Docker as 1, which
543
- # the Linux kernel converts to 2 CPU shares.
543
+ # the Linux kernel converts to two CPU shares.
544
544
  #
545
545
  # * **Agent versions greater than or equal to 1.2.0:** Null, zero, and
546
546
  # CPU values of 1 are passed to Docker as 2.
@@ -1531,6 +1531,9 @@ module Aws::ECS
1531
1531
  # },
1532
1532
  # health_check_grace_period_seconds: 1,
1533
1533
  # scheduling_strategy: "REPLICA", # accepts REPLICA, DAEMON
1534
+ # deployment_controller: {
1535
+ # type: "ECS", # required, accepts ECS, CODE_DEPLOY
1536
+ # },
1534
1537
  # tags: [
1535
1538
  # {
1536
1539
  # key: "TagKey",
@@ -1563,10 +1566,28 @@ module Aws::ECS
1563
1566
  #
1564
1567
  # @!attribute [rw] load_balancers
1565
1568
  # A load balancer object representing the load balancer to use with
1566
- # your service. Currently, you are limited to one load balancer or
1567
- # target group per service. After you create a service, the load
1568
- # balancer name or target group ARN, container name, and container
1569
- # port specified in the service definition are immutable.
1569
+ # your service.
1570
+ #
1571
+ # If the service is using the `ECS` deployment controller, you are
1572
+ # limited to one load balancer or target group.
1573
+ #
1574
+ # If the service is using the `CODE_DEPLOY` deployment controller, the
1575
+ # service is required to use either an Application Load Balancer or
1576
+ # Network Load Balancer. When creating an AWS CodeDeploy deployment
1577
+ # group, you specify two target groups (referred to as a
1578
+ # `targetGroupPair`). During a deployment, AWS CodeDeploy determines
1579
+ # which task set in your service has the status `PRIMARY` and
1580
+ # associates one target group with it, and then associates the other
1581
+ # target group with the replacement task set. The load balancer can
1582
+ # also have up to two listeners: a required listener for production
1583
+ # traffic and an optional listener that allows you perform validation
1584
+ # tests with Lambda functions before routing production traffic to it.
1585
+ #
1586
+ # After you create a service using the `ECS` deployment controller,
1587
+ # the load balancer name or target group ARN, container name, and
1588
+ # container port specified in the service definition are immutable. If
1589
+ # you are using the `CODE_DEPLOY` deployment controller, these values
1590
+ # can be changed when updating the service.
1570
1591
  #
1571
1592
  # For Classic Load Balancers, this object must contain the load
1572
1593
  # balancer name, the container name (as it appears in a container
@@ -1619,12 +1640,26 @@ module Aws::ECS
1619
1640
  # @return [String]
1620
1641
  #
1621
1642
  # @!attribute [rw] launch_type
1622
- # The launch type on which to run your service.
1643
+ # The launch type on which to run your service. For more information,
1644
+ # see [Amazon ECS Launch Types][1] in the *Amazon Elastic Container
1645
+ # Service Developer Guide*.
1646
+ #
1647
+ #
1648
+ #
1649
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html
1623
1650
  # @return [String]
1624
1651
  #
1625
1652
  # @!attribute [rw] platform_version
1626
- # The platform version on which to run your service. If one is not
1627
- # specified, the latest version is used by default.
1653
+ # The platform version on which your tasks in the service are running.
1654
+ # A platform version is only specified for tasks using the Fargate
1655
+ # launch type. If one is not specified, the `LATEST` platform version
1656
+ # is used by default. For more information, see [AWS Fargate Platform
1657
+ # Versions][1] in the *Amazon Elastic Container Service Developer
1658
+ # Guide*.
1659
+ #
1660
+ #
1661
+ #
1662
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
1628
1663
  # @return [String]
1629
1664
  #
1630
1665
  # @!attribute [rw] role
@@ -1695,7 +1730,7 @@ module Aws::ECS
1695
1730
  # your service is configured to use a load balancer. If your
1696
1731
  # service's tasks take a while to start and respond to Elastic Load
1697
1732
  # Balancing health checks, you can specify a health check grace period
1698
- # of up to 7,200 seconds during which the ECS service scheduler
1733
+ # of up to 7,200 seconds. During that time, the ECS service scheduler
1699
1734
  # ignores health check status. This grace period can prevent the ECS
1700
1735
  # service scheduler from marking tasks as unhealthy and stopping them
1701
1736
  # before they have time to come up.
@@ -1711,7 +1746,8 @@ module Aws::ECS
1711
1746
  # desired number of tasks across your cluster. By default, the
1712
1747
  # service scheduler spreads tasks across Availability Zones. You can
1713
1748
  # use task placement strategies and constraints to customize task
1714
- # placement decisions.
1749
+ # placement decisions. This scheduler strategy is required if using
1750
+ # the `CODE_DEPLOY` deployment controller.
1715
1751
  #
1716
1752
  # * `DAEMON`-The daemon scheduling strategy deploys exactly one task
1717
1753
  # on each active container instance that meets all of the task
@@ -1720,15 +1756,21 @@ module Aws::ECS
1720
1756
  # number of tasks, a task placement strategy, or use Service Auto
1721
1757
  # Scaling policies.
1722
1758
  #
1723
- # <note markdown="1"> Fargate tasks do not support the `DAEMON` scheduling strategy.
1759
+ # <note markdown="1"> Tasks using the Fargate launch type or the `CODE_DEPLOY`
1760
+ # deploymenet controller do not support the `DAEMON` scheduling
1761
+ # strategy.
1724
1762
  #
1725
1763
  # </note>
1726
1764
  #
1727
1765
  #
1728
1766
  #
1729
- # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguideecs_services.html
1767
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html
1730
1768
  # @return [String]
1731
1769
  #
1770
+ # @!attribute [rw] deployment_controller
1771
+ # The deployment controller to use for the service.
1772
+ # @return [Types::DeploymentController]
1773
+ #
1732
1774
  # @!attribute [rw] tags
1733
1775
  # The metadata that you apply to the service to help you categorize
1734
1776
  # and organize them. Each tag consists of a key and an optional value,
@@ -1776,6 +1818,7 @@ module Aws::ECS
1776
1818
  :network_configuration,
1777
1819
  :health_check_grace_period_seconds,
1778
1820
  :scheduling_strategy,
1821
+ :deployment_controller,
1779
1822
  :tags,
1780
1823
  :enable_ecs_managed_tags,
1781
1824
  :propagate_tags)
@@ -1784,6 +1827,15 @@ module Aws::ECS
1784
1827
 
1785
1828
  # @!attribute [rw] service
1786
1829
  # The full description of your service following the create call.
1830
+ #
1831
+ # If a service is using the `ECS` deployment controller, the
1832
+ # `deploymentController` and `taskSets` parameters will not be
1833
+ # returned.
1834
+ #
1835
+ # If the service is using the `CODE_DEPLOY` deployment controller, the
1836
+ # `deploymentController`, `taskSets` and `deployments` parameters will
1837
+ # be returned, however the `deployments` parameter will be an empty
1838
+ # list.
1787
1839
  # @return [Types::Service]
1788
1840
  #
1789
1841
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateServiceResponse AWS API Documentation
@@ -1962,23 +2014,33 @@ module Aws::ECS
1962
2014
  include Aws::Structure
1963
2015
  end
1964
2016
 
1965
- # The details of an Amazon ECS service deployment.
2017
+ # The details of an Amazon ECS service deployment. This is used when a
2018
+ # service uses the `CODE_DEPLOY` deployment controller type.
1966
2019
  #
1967
2020
  # @!attribute [rw] id
1968
2021
  # The ID of the deployment.
1969
2022
  # @return [String]
1970
2023
  #
1971
2024
  # @!attribute [rw] status
1972
- # The status of the deployment. Valid values are `PRIMARY` for the
1973
- # most recent deployment, `ACTIVE` for previous deployments that still
1974
- # have tasks running, but are being replaced with the `PRIMARY`
1975
- # deployment, and `INACTIVE` for deployments that have been completely
1976
- # replaced.
2025
+ # The status of the deployment. The following describes each state:
2026
+ #
2027
+ # PRIMARY
2028
+ #
2029
+ # : The most recent deployment of a service.
2030
+ #
2031
+ # ACTIVE
2032
+ #
2033
+ # : A service deployment that still has running tasks, but are in the
2034
+ # process of being replaced with a new `PRIMARY` deployment.
2035
+ #
2036
+ # INACTIVE
2037
+ #
2038
+ # : A deployment that has been completely replaced.
1977
2039
  # @return [String]
1978
2040
  #
1979
2041
  # @!attribute [rw] task_definition
1980
- # The most recent task definition that was specified for the service
1981
- # to use.
2042
+ # The most recent task definition that was specified for the tasks in
2043
+ # the service to use.
1982
2044
  # @return [String]
1983
2045
  #
1984
2046
  # @!attribute [rw] desired_count
@@ -1997,19 +2059,34 @@ module Aws::ECS
1997
2059
  # @return [Integer]
1998
2060
  #
1999
2061
  # @!attribute [rw] created_at
2000
- # The Unix timestamp for when the service was created.
2062
+ # The Unix timestamp for when the service deployment was created.
2001
2063
  # @return [Time]
2002
2064
  #
2003
2065
  # @!attribute [rw] updated_at
2004
- # The Unix timestamp for when the service was last updated.
2066
+ # The Unix timestamp for when the service deployment was last updated.
2005
2067
  # @return [Time]
2006
2068
  #
2007
2069
  # @!attribute [rw] launch_type
2008
- # The launch type on which your service is running.
2070
+ # The launch type the tasks in the service are using. For more
2071
+ # information, see [Amazon ECS Launch Types][1] in the *Amazon Elastic
2072
+ # Container Service Developer Guide*.
2073
+ #
2074
+ #
2075
+ #
2076
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html
2009
2077
  # @return [String]
2010
2078
  #
2011
2079
  # @!attribute [rw] platform_version
2012
- # The platform version on which your service is running.
2080
+ # The platform version on which your tasks in the service are running.
2081
+ # A platform version is only specified for tasks using the Fargate
2082
+ # launch type. If one is not specified, the `LATEST` platform version
2083
+ # is used by default. For more information, see [AWS Fargate Platform
2084
+ # Versions][1] in the *Amazon Elastic Container Service Developer
2085
+ # Guide*.
2086
+ #
2087
+ #
2088
+ #
2089
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
2013
2090
  # @return [String]
2014
2091
  #
2015
2092
  # @!attribute [rw] network_configuration
@@ -2047,20 +2124,55 @@ module Aws::ECS
2047
2124
  # }
2048
2125
  #
2049
2126
  # @!attribute [rw] maximum_percent
2050
- # The upper limit (as a percentage of the service's `desiredCount`)
2051
- # of the number of tasks that are allowed in the `RUNNING` or
2052
- # `PENDING` state in a service during a deployment. The maximum number
2053
- # of tasks during a deployment is the `desiredCount` multiplied by
2054
- # `maximumPercent`/100, rounded down to the nearest integer value.
2127
+ # If a service is using the rolling update (`ECS`) deployment type,
2128
+ # the **maximum percent** parameter represents an upper limit on the
2129
+ # number of tasks in a service that are allowed in the `RUNNING` or
2130
+ # `PENDING` state during a deployment, as a percentage of the desired
2131
+ # number of tasks (rounded down to the nearest integer), and while any
2132
+ # container instances are in the `DRAINING` state if the service
2133
+ # contains tasks using the EC2 launch type. This parameter enables you
2134
+ # to define the deployment batch size. For example, if your service
2135
+ # has a desired number of four tasks and a maximum percent value of
2136
+ # 200%, the scheduler may start four new tasks before stopping the
2137
+ # four older tasks (provided that the cluster resources required to do
2138
+ # this are available). The default value for maximum percent is 200%.
2139
+ #
2140
+ # If a service is using the blue/green (`CODE_DEPLOY`) deployment type
2141
+ # and tasks that use the EC2 launch type, the **maximum percent**
2142
+ # value is set to the default value and is used to define the upper
2143
+ # limit on the number of the tasks in the service that remain in the
2144
+ # `RUNNING` state while the container instances are in the `DRAINING`
2145
+ # state. If the tasks in the service use the Fargate launch type, the
2146
+ # maximum percent value is not used, although it is returned when
2147
+ # describing your service.
2055
2148
  # @return [Integer]
2056
2149
  #
2057
2150
  # @!attribute [rw] minimum_healthy_percent
2058
- # The lower limit (as a percentage of the service's `desiredCount`)
2059
- # of the number of running tasks that must remain in the `RUNNING`
2060
- # state in a service during a deployment. The minimum number of
2061
- # healthy tasks during a deployment is the `desiredCount` multiplied
2062
- # by `minimumHealthyPercent`/100, rounded up to the nearest integer
2063
- # value.
2151
+ # If a service is using the rolling update (`ECS`) deployment type,
2152
+ # the **minimum healthy percent** represents a lower limit on the
2153
+ # number of tasks in a service that must remain in the `RUNNING` state
2154
+ # during a deployment, as a percentage of the desired number of tasks
2155
+ # (rounded up to the nearest integer), and while any container
2156
+ # instances are in the `DRAINING` state if the service contains tasks
2157
+ # using the EC2 launch type. This parameter enables you to deploy
2158
+ # without using additional cluster capacity. For example, if your
2159
+ # service has a desired number of four tasks and a minimum healthy
2160
+ # percent of 50%, the scheduler may stop two existing tasks to free up
2161
+ # cluster capacity before starting two new tasks. Tasks for services
2162
+ # that *do not* use a load balancer are considered healthy if they are
2163
+ # in the `RUNNING` state; tasks for services that *do* use a load
2164
+ # balancer are considered healthy if they are in the `RUNNING` state
2165
+ # and they are reported as healthy by the load balancer. The default
2166
+ # value for minimum healthy percent is 100%.
2167
+ #
2168
+ # If a service is using the blue/green (`CODE_DEPLOY`) deployment type
2169
+ # and tasks that use the EC2 launch type, the **minimum healthy
2170
+ # percent** value is set to the default value and is used to define
2171
+ # the lower limit on the number of the tasks in the service that
2172
+ # remain in the `RUNNING` state while the container instances are in
2173
+ # the `DRAINING` state. If the tasks in the service use the Fargate
2174
+ # launch type, the minimum healthy percent value is not used, although
2175
+ # it is returned when describing your service.
2064
2176
  # @return [Integer]
2065
2177
  #
2066
2178
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentConfiguration AWS API Documentation
@@ -2071,6 +2183,56 @@ module Aws::ECS
2071
2183
  include Aws::Structure
2072
2184
  end
2073
2185
 
2186
+ # The deployment controller to use for the service. For more
2187
+ # information, see [Amazon ECS Deployment Types][1] in the *Amazon
2188
+ # Elastic Container Service Developer Guide*.
2189
+ #
2190
+ #
2191
+ #
2192
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
2193
+ #
2194
+ # @note When making an API call, you may pass DeploymentController
2195
+ # data as a hash:
2196
+ #
2197
+ # {
2198
+ # type: "ECS", # required, accepts ECS, CODE_DEPLOY
2199
+ # }
2200
+ #
2201
+ # @!attribute [rw] type
2202
+ # The deployment controller type to use.
2203
+ #
2204
+ # There are two deployment controller types available:
2205
+ #
2206
+ # ECS
2207
+ #
2208
+ # : The rolling update (`ECS`) deployment type involves replacing the
2209
+ # current running version of the container with the latest version.
2210
+ # The number of containers Amazon ECS adds or removes from the
2211
+ # service during a rolling update is controlled by adjusting the
2212
+ # minimum and maximum number of healthy tasks allowed during a
2213
+ # service deployment, as specified in the DeploymentConfiguration.
2214
+ #
2215
+ # CODE\_DEPLOY
2216
+ #
2217
+ # : The blue/green (`CODE_DEPLOY`) deployment type uses the blue/green
2218
+ # deployment model powered by AWS CodeDeploy, which allows you to
2219
+ # verify a new deployment of a service before sending production
2220
+ # traffic to it. For more information, see [Amazon ECS Deployment
2221
+ # Types][1] in the *Amazon Elastic Container Service Developer
2222
+ # Guide*.
2223
+ #
2224
+ #
2225
+ #
2226
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
2227
+ # @return [String]
2228
+ #
2229
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentController AWS API Documentation
2230
+ #
2231
+ class DeploymentController < Struct.new(
2232
+ :type)
2233
+ include Aws::Structure
2234
+ end
2235
+
2074
2236
  # @note When making an API call, you may pass DeregisterContainerInstanceRequest
2075
2237
  # data as a hash:
2076
2238
  #
@@ -3742,6 +3904,19 @@ module Aws::ECS
3742
3904
 
3743
3905
  # Details on a load balancer that is used with a service.
3744
3906
  #
3907
+ # If the service is using the `ECS` deployment controller, you are
3908
+ # limited to one load balancer or target group.
3909
+ #
3910
+ # If the service is using the `CODE_DEPLOY` deployment controller, the
3911
+ # service is required to use either an Application Load Balancer or
3912
+ # Network Load Balancer. When you are creating an AWS CodeDeploy
3913
+ # deployment group, you specify two target groups (referred to as a
3914
+ # `targetGroupPair`). Each target group binds to a separate task set in
3915
+ # the deployment. The load balancer can also have up to two listeners, a
3916
+ # required listener for production traffic and an optional listener that
3917
+ # allows you to test new revisions of the service before routing
3918
+ # production traffic to it.
3919
+ #
3745
3920
  # Services with tasks that use the `awsvpc` network mode (for example,
3746
3921
  # those with the Fargate launch type) only support Application Load
3747
3922
  # Balancers and Network Load Balancers. Classic Load Balancers are not
@@ -3762,7 +3937,10 @@ module Aws::ECS
3762
3937
  #
3763
3938
  # @!attribute [rw] target_group_arn
3764
3939
  # The full Amazon Resource Name (ARN) of the Elastic Load Balancing
3765
- # target group associated with a service.
3940
+ # target group or groups associated with a service. For services using
3941
+ # the `ECS` deployment controller, you are limited to one target
3942
+ # group. For services using the `CODE_DEPLOY` deployment controller,
3943
+ # you are required to define two target groups for the load balancer.
3766
3944
  #
3767
3945
  # If your service's task definition uses the `awsvpc` network mode
3768
3946
  # (which is required for the Fargate launch type), you must choose
@@ -4152,10 +4330,10 @@ module Aws::ECS
4152
4330
  # host port that was previously specified in a running task is also
4153
4331
  # reserved while the task is running (after a task stops, the host
4154
4332
  # port is released). The current reserved ports are displayed in the
4155
- # `remainingResources` of DescribeContainerInstances output, and a
4333
+ # `remainingResources` of DescribeContainerInstances output. A
4156
4334
  # container instance may have up to 100 reserved ports at a time,
4157
- # including the default reserved ports (automatically assigned ports
4158
- # do not count toward the 100 reserved ports limit).
4335
+ # including the default reserved ports. Aautomatically assigned ports
4336
+ # do not count toward the 100 reserved ports limit.
4159
4337
  # @return [Integer]
4160
4338
  #
4161
4339
  # @!attribute [rw] protocol
@@ -4784,7 +4962,7 @@ module Aws::ECS
4784
4962
  #
4785
4963
  # [1]: https://docs.docker.com/engine/reference/run/#ipc-settings---ipc
4786
4964
  # [2]: https://docs.docker.com/engine/security/security/
4787
- # [3]: http://docs.aws.amazon.com/AmazonECS/latest/developerguidetask_definition_parameters.html
4965
+ # [3]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
4788
4966
  # @return [String]
4789
4967
  #
4790
4968
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/RegisterTaskDefinitionRequest AWS API Documentation
@@ -5030,12 +5208,25 @@ module Aws::ECS
5030
5208
  # @return [Array<Types::PlacementStrategy>]
5031
5209
  #
5032
5210
  # @!attribute [rw] launch_type
5033
- # The launch type on which to run your task.
5211
+ # The launch type on which to run your task. For more information, see
5212
+ # [Amazon ECS Launch Types][1] in the *Amazon Elastic Container
5213
+ # Service Developer Guide*.
5214
+ #
5215
+ #
5216
+ #
5217
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html
5034
5218
  # @return [String]
5035
5219
  #
5036
5220
  # @!attribute [rw] platform_version
5037
- # The platform version on which to run your task. If one is not
5038
- # specified, the latest version is used by default.
5221
+ # The platform version the task should run. A platform version is only
5222
+ # specified for tasks using the Fargate launch type. If one is not
5223
+ # specified, the `LATEST` platform version is used by default. For
5224
+ # more information, see [AWS Fargate Platform Versions][1] in the
5225
+ # *Amazon Elastic Container Service Developer Guide*.
5226
+ #
5227
+ #
5228
+ #
5229
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
5039
5230
  # @return [String]
5040
5231
  #
5041
5232
  # @!attribute [rw] network_configuration
@@ -5111,6 +5302,27 @@ module Aws::ECS
5111
5302
  include Aws::Structure
5112
5303
  end
5113
5304
 
5305
+ # A floating-point percentage of the desired number of tasks to place
5306
+ # and keep running in the service. This is used when a service uses the
5307
+ # `CODE_DEPLOY` deployment controller type.
5308
+ #
5309
+ # @!attribute [rw] value
5310
+ # The value, specified as a percent total of a service's
5311
+ # `desiredCount`, to scale the task set.
5312
+ # @return [Float]
5313
+ #
5314
+ # @!attribute [rw] unit
5315
+ # The unit of measure for the scale value.
5316
+ # @return [String]
5317
+ #
5318
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Scale AWS API Documentation
5319
+ #
5320
+ class Scale < Struct.new(
5321
+ :value,
5322
+ :unit)
5323
+ include Aws::Structure
5324
+ end
5325
+
5114
5326
  # An object representing the secret to expose to your container.
5115
5327
  #
5116
5328
  # @note When making an API call, you may pass Secret
@@ -5172,9 +5384,9 @@ module Aws::ECS
5172
5384
  # those with the Fargate launch type) only support Application Load
5173
5385
  # Balancers and Network Load Balancers. Classic Load Balancers are not
5174
5386
  # supported. Also, when you create any target groups for these
5175
- # services, you must choose `ip` as the target type, not `instance`,
5176
- # because tasks that use the `awsvpc` network mode are associated with
5177
- # an elastic network interface, not an Amazon EC2 instance.
5387
+ # services, you must choose `ip` as the target type, not `instance`.
5388
+ # Tasks that use the `awsvpc` network mode are associated with an
5389
+ # elastic network interface, not an Amazon EC2 instance.
5178
5390
  # @return [Array<Types::LoadBalancer>]
5179
5391
  #
5180
5392
  # @!attribute [rw] service_registries
@@ -5201,13 +5413,22 @@ module Aws::ECS
5201
5413
  # @return [Integer]
5202
5414
  #
5203
5415
  # @!attribute [rw] launch_type
5204
- # The launch type on which your service is running.
5416
+ # The launch type on which your service is running. For more
5417
+ # information, see [Amazon ECS Launch Types][1] in the *Amazon Elastic
5418
+ # Container Service Developer Guide*.
5419
+ #
5420
+ #
5421
+ #
5422
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html
5205
5423
  # @return [String]
5206
5424
  #
5207
5425
  # @!attribute [rw] platform_version
5208
- # The platform version on which your task is running. For more
5209
- # information, see [AWS Fargate Platform Versions][1] in the *Amazon
5210
- # Elastic Container Service Developer Guide*.
5426
+ # The platform version on which your tasks in the service are running.
5427
+ # A platform version is only specified for tasks using the Fargate
5428
+ # launch type. If one is not specified, the `LATEST` platform version
5429
+ # is used by default. For more information, see [AWS Fargate Platform
5430
+ # Versions][1] in the *Amazon Elastic Container Service Developer
5431
+ # Guide*.
5211
5432
  #
5212
5433
  #
5213
5434
  #
@@ -5226,6 +5447,13 @@ module Aws::ECS
5226
5447
  # tasks.
5227
5448
  # @return [Types::DeploymentConfiguration]
5228
5449
  #
5450
+ # @!attribute [rw] task_sets
5451
+ # Information about a set of Amazon ECS tasks in an AWS CodeDeploy
5452
+ # deployment. An Amazon ECS task set includes details such as the
5453
+ # desired number of tasks, how many tasks are running, and whether the
5454
+ # task set serves production traffic.
5455
+ # @return [Array<Types::TaskSet>]
5456
+ #
5229
5457
  # @!attribute [rw] deployments
5230
5458
  # The current state of deployments for the service.
5231
5459
  # @return [Array<Types::Deployment>]
@@ -5289,9 +5517,13 @@ module Aws::ECS
5289
5517
  #
5290
5518
  #
5291
5519
  #
5292
- # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguideecs_services.html
5520
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html
5293
5521
  # @return [String]
5294
5522
  #
5523
+ # @!attribute [rw] deployment_controller
5524
+ # The deployment controller type the service is using.
5525
+ # @return [Types::DeploymentController]
5526
+ #
5295
5527
  # @!attribute [rw] tags
5296
5528
  # The metadata that you apply to the service to help you categorize
5297
5529
  # and organize them. Each tag consists of a key and an optional value,
@@ -5337,6 +5569,7 @@ module Aws::ECS
5337
5569
  :platform_version,
5338
5570
  :task_definition,
5339
5571
  :deployment_configuration,
5572
+ :task_sets,
5340
5573
  :deployments,
5341
5574
  :role_arn,
5342
5575
  :events,
@@ -5346,6 +5579,7 @@ module Aws::ECS
5346
5579
  :network_configuration,
5347
5580
  :health_check_grace_period_seconds,
5348
5581
  :scheduling_strategy,
5582
+ :deployment_controller,
5349
5583
  :tags,
5350
5584
  :created_by,
5351
5585
  :enable_ecs_managed_tags,
@@ -5881,7 +6115,7 @@ module Aws::ECS
5881
6115
  # }
5882
6116
  #
5883
6117
  # @!attribute [rw] namespace
5884
- # The namespaced kernel parameter to set a `value` for.
6118
+ # The namespaced kernel parameter for which to set a `value`.
5885
6119
  # @return [String]
5886
6120
  #
5887
6121
  # @!attribute [rw] value
@@ -6085,13 +6319,13 @@ module Aws::ECS
6085
6319
  # change that triggers a CloudWatch event, the version counter is
6086
6320
  # incremented. If you are replicating your Amazon ECS task state with
6087
6321
  # CloudWatch Events, you can compare the version of a task reported by
6088
- # the Amazon ECS APIs with the version reported in CloudWatch Events
6089
- # for the task (inside the `detail` object) to verify that the version
6090
- # in your event stream is current.
6322
+ # the Amazon ECS API actionss with the version reported in CloudWatch
6323
+ # Events for the task (inside the `detail` object) to verify that the
6324
+ # version in your event stream is current.
6091
6325
  # @return [Integer]
6092
6326
  #
6093
6327
  # @!attribute [rw] stopped_reason
6094
- # The reason the task was stopped.
6328
+ # The reason that the task was stopped.
6095
6329
  # @return [String]
6096
6330
  #
6097
6331
  # @!attribute [rw] stop_code
@@ -6145,13 +6379,22 @@ module Aws::ECS
6145
6379
  # @return [String]
6146
6380
  #
6147
6381
  # @!attribute [rw] launch_type
6148
- # The launch type on which your task is running.
6382
+ # The launch type on which your task is running. For more information,
6383
+ # see [Amazon ECS Launch Types][1] in the *Amazon Elastic Container
6384
+ # Service Developer Guide*.
6385
+ #
6386
+ #
6387
+ #
6388
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html
6149
6389
  # @return [String]
6150
6390
  #
6151
6391
  # @!attribute [rw] platform_version
6152
- # The platform version on which your task is running. For more
6153
- # information, see [AWS Fargate Platform Versions][1] in the *Amazon
6154
- # Elastic Container Service Developer Guide*.
6392
+ # The platform version on which your task is running. A platform
6393
+ # version is only specified for tasks using the Fargate launch type.
6394
+ # If one is not specified, the `LATEST` platform version is used by
6395
+ # default. For more information, see [AWS Fargate Platform
6396
+ # Versions][1] in the *Amazon Elastic Container Service Developer
6397
+ # Guide*.
6155
6398
  #
6156
6399
  #
6157
6400
  #
@@ -6322,9 +6565,9 @@ module Aws::ECS
6322
6565
  # The revision of the task in a particular family. The revision is a
6323
6566
  # version number of a task definition in a family. When you register a
6324
6567
  # task definition for the first time, the revision is `1`. Each time
6325
- # you register a new revision of a task definition in the same family,
6326
- # the revision value always increases by one (even if you have
6327
- # deregistered previous revisions in this family).
6568
+ # that you register a new revision of a task definition in the same
6569
+ # family, the revision value always increases by one, even if you have
6570
+ # deregistered previous revisions in this family.
6328
6571
  # @return [Integer]
6329
6572
  #
6330
6573
  # @!attribute [rw] volumes
@@ -6348,12 +6591,13 @@ module Aws::ECS
6348
6591
  #
6349
6592
  # @!attribute [rw] requires_attributes
6350
6593
  # The container instance attributes required by your task. This field
6351
- # is not valid if using the Fargate launch type for your task.
6594
+ # is not valid if you are using the Fargate launch type for your task.
6352
6595
  # @return [Array<Types::Attribute>]
6353
6596
  #
6354
6597
  # @!attribute [rw] placement_constraints
6355
6598
  # An array of placement constraint objects to use for tasks. This
6356
- # field is not valid if using the Fargate launch type for your task.
6599
+ # field is not valid if you are using the Fargate launch type for your
6600
+ # task.
6357
6601
  # @return [Array<Types::TaskDefinitionPlacementConstraint>]
6358
6602
  #
6359
6603
  # @!attribute [rw] compatibilities
@@ -6367,7 +6611,7 @@ module Aws::ECS
6367
6611
  # @return [Array<String>]
6368
6612
  #
6369
6613
  # @!attribute [rw] requires_compatibilities
6370
- # The launch type the task is using.
6614
+ # The launch type that the task is using.
6371
6615
  # @return [Array<String>]
6372
6616
  #
6373
6617
  # @!attribute [rw] cpu
@@ -6481,7 +6725,7 @@ module Aws::ECS
6481
6725
  #
6482
6726
  # [1]: https://docs.docker.com/engine/reference/run/#ipc-settings---ipc
6483
6727
  # [2]: https://docs.docker.com/engine/security/security/
6484
- # [3]: http://docs.aws.amazon.com/AmazonECS/latest/developerguidetask_definition_parameters.html
6728
+ # [3]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html
6485
6729
  # @return [String]
6486
6730
  #
6487
6731
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/TaskDefinition AWS API Documentation
@@ -6602,6 +6846,163 @@ module Aws::ECS
6602
6846
  include Aws::Structure
6603
6847
  end
6604
6848
 
6849
+ # Information about a set of Amazon ECS tasks in an AWS CodeDeploy
6850
+ # deployment. An Amazon ECS task set includes details such as the
6851
+ # desired number of tasks, how many tasks are running, and whether the
6852
+ # task set serves production traffic.
6853
+ #
6854
+ # @!attribute [rw] id
6855
+ # The ID of the task set.
6856
+ # @return [String]
6857
+ #
6858
+ # @!attribute [rw] task_set_arn
6859
+ # The Amazon Resource Name (ARN) of the task set.
6860
+ # @return [String]
6861
+ #
6862
+ # @!attribute [rw] started_by
6863
+ # The tag specified when a task set is started. If the task is started
6864
+ # by an AWS CodeDeploy deployment, then the `startedBy` parameter is
6865
+ # `CODE_DEPLOY`.
6866
+ # @return [String]
6867
+ #
6868
+ # @!attribute [rw] external_id
6869
+ # The deployment ID of the AWS CodeDeploy deployment.
6870
+ # @return [String]
6871
+ #
6872
+ # @!attribute [rw] status
6873
+ # The status of the task set. The following describes each state:
6874
+ #
6875
+ # PRIMARY
6876
+ #
6877
+ # : The task set is serving production traffic.
6878
+ #
6879
+ # ACTIVE
6880
+ #
6881
+ # : The task set is not serving production traffic.
6882
+ #
6883
+ # DRAINING
6884
+ #
6885
+ # : The tasks in the task set are being stopped and their
6886
+ # corresponding targets are being deregistered from their target
6887
+ # group.
6888
+ # @return [String]
6889
+ #
6890
+ # @!attribute [rw] task_definition
6891
+ # The task definition the task set is using.
6892
+ # @return [String]
6893
+ #
6894
+ # @!attribute [rw] computed_desired_count
6895
+ # The computed desired count for the task set. This is calculated by
6896
+ # multiplying the service's `desiredCount` by the task set's `scale`
6897
+ # percentage.
6898
+ # @return [Integer]
6899
+ #
6900
+ # @!attribute [rw] pending_count
6901
+ # The number of tasks in the task set that are in the `PENDING` status
6902
+ # during a deployment. A task in the `PENDING` state is preparing to
6903
+ # enter the `RUNNING` state. A task set enters the `PENDING` status
6904
+ # when it launches for the first time, or when it is restarted after
6905
+ # being in the `STOPPED` state.
6906
+ # @return [Integer]
6907
+ #
6908
+ # @!attribute [rw] running_count
6909
+ # The number of tasks in the task set that are in the `RUNNING` status
6910
+ # during a deployment. A task in the `RUNNING` state is running and
6911
+ # ready for use.
6912
+ # @return [Integer]
6913
+ #
6914
+ # @!attribute [rw] created_at
6915
+ # The Unix timestamp for when the task set was created.
6916
+ # @return [Time]
6917
+ #
6918
+ # @!attribute [rw] updated_at
6919
+ # The Unix timestamp for when the task set was last updated.
6920
+ # @return [Time]
6921
+ #
6922
+ # @!attribute [rw] launch_type
6923
+ # The launch type the tasks in the task set are using. For more
6924
+ # information, see [Amazon ECS Launch Types][1] in the *Amazon Elastic
6925
+ # Container Service Developer Guide*.
6926
+ #
6927
+ #
6928
+ #
6929
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html
6930
+ # @return [String]
6931
+ #
6932
+ # @!attribute [rw] platform_version
6933
+ # The platform version on which the tasks in the task set are running.
6934
+ # A platform version is only specified for tasks using the Fargate
6935
+ # launch type. If one is not specified, the `LATEST` platform version
6936
+ # is used by default. For more information, see [AWS Fargate Platform
6937
+ # Versions][1] in the *Amazon Elastic Container Service Developer
6938
+ # Guide*.
6939
+ #
6940
+ #
6941
+ #
6942
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
6943
+ # @return [String]
6944
+ #
6945
+ # @!attribute [rw] network_configuration
6946
+ # The network configuration for the task set.
6947
+ # @return [Types::NetworkConfiguration]
6948
+ #
6949
+ # @!attribute [rw] load_balancers
6950
+ # Details on a load balancer that is used with a task set.
6951
+ # @return [Array<Types::LoadBalancer>]
6952
+ #
6953
+ # @!attribute [rw] scale
6954
+ # A floating-point percentage of the desired number of tasks to place
6955
+ # and keep running in the service.
6956
+ # @return [Types::Scale]
6957
+ #
6958
+ # @!attribute [rw] stability_status
6959
+ # The stability status, which indicates whether the task set has
6960
+ # reached a steady state. If the following conditions are met, the
6961
+ # task set will be in `STEADY_STATE`\:
6962
+ #
6963
+ # * The task `runningCount` is equal to the `computedDesiredCount`.
6964
+ #
6965
+ # * The `pendingCount` is `0`.
6966
+ #
6967
+ # * There are no tasks running on container instances in the
6968
+ # `DRAINING` status.
6969
+ #
6970
+ # * All tasks are reporting a healthy status from the load balancers,
6971
+ # service discovery, and container health checks.
6972
+ #
6973
+ # If any of those conditions are not met, the stability status returns
6974
+ # `STABILIZING`.
6975
+ # @return [String]
6976
+ #
6977
+ # @!attribute [rw] stability_status_at
6978
+ # The Unix timestamp for when the task set stability status was
6979
+ # retrieved.
6980
+ # @return [Time]
6981
+ #
6982
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/TaskSet AWS API Documentation
6983
+ #
6984
+ class TaskSet < Struct.new(
6985
+ :id,
6986
+ :task_set_arn,
6987
+ :started_by,
6988
+ :external_id,
6989
+ :status,
6990
+ :task_definition,
6991
+ :computed_desired_count,
6992
+ :pending_count,
6993
+ :running_count,
6994
+ :created_at,
6995
+ :updated_at,
6996
+ :launch_type,
6997
+ :platform_version,
6998
+ :network_configuration,
6999
+ :load_balancers,
7000
+ :scale,
7001
+ :stability_status,
7002
+ :stability_status_at)
7003
+ include Aws::Structure
7004
+ end
7005
+
6605
7006
  # The container path, mount options, and size of the tmpfs mount.
6606
7007
  #
6607
7008
  # @note When making an API call, you may pass Tmpfs
@@ -6868,7 +7269,16 @@ module Aws::ECS
6868
7269
  # @return [Types::NetworkConfiguration]
6869
7270
  #
6870
7271
  # @!attribute [rw] platform_version
6871
- # The platform version that your service should run.
7272
+ # The platform version on which your tasks in the service are running.
7273
+ # A platform version is only specified for tasks using the Fargate
7274
+ # launch type. If one is not specified, the `LATEST` platform version
7275
+ # is used by default. For more information, see [AWS Fargate Platform
7276
+ # Versions][1] in the *Amazon Elastic Container Service Developer
7277
+ # Guide*.
7278
+ #
7279
+ #
7280
+ #
7281
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
6872
7282
  # @return [String]
6873
7283
  #
6874
7284
  # @!attribute [rw] force_new_deployment
@@ -6887,7 +7297,7 @@ module Aws::ECS
6887
7297
  # your service is configured to use a load balancer. If your
6888
7298
  # service's tasks take a while to start and respond to Elastic Load
6889
7299
  # Balancing health checks, you can specify a health check grace period
6890
- # of up to 1,800 seconds during which the ECS service scheduler
7300
+ # of up to 1,800 seconds. During that time, the ECS service scheduler
6891
7301
  # ignores the Elastic Load Balancing health check status. This grace
6892
7302
  # period can prevent the ECS service scheduler from marking tasks as
6893
7303
  # unhealthy and stopping them before they have time to come up.
@@ -6964,7 +7374,7 @@ module Aws::ECS
6964
7374
  #
6965
7375
  #
6966
7376
  #
6967
- # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguideusing_data_volumes.html
7377
+ # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_data_volumes.html
6968
7378
  #
6969
7379
  # @note When making an API call, you may pass Volume
6970
7380
  # data as a hash:
@@ -7001,8 +7411,8 @@ module Aws::ECS
7001
7411
  # parameter determine whether your bind mount host volume persists on
7002
7412
  # the host container instance and where it is stored. If the `host`
7003
7413
  # parameter is empty, then the Docker daemon assigns a host path for
7004
- # your data volume, but the data is not guaranteed to persist after
7005
- # the containers associated with it stop running.
7414
+ # your data volume. However, the data is not guaranteed to persist
7415
+ # after the containers associated with it stop running.
7006
7416
  #
7007
7417
  # Windows containers can mount whole directories on the same drive as
7008
7418
  # `$env:ProgramData`. Windows containers cannot mount directories on a
@@ -7039,8 +7449,8 @@ module Aws::ECS
7039
7449
  # }
7040
7450
  #
7041
7451
  # @!attribute [rw] source_container
7042
- # The name of another container within the same task definition to
7043
- # mount volumes from.
7452
+ # The name of another container within the same task definition from
7453
+ # which to mount volumes.
7044
7454
  # @return [String]
7045
7455
  #
7046
7456
  # @!attribute [rw] read_only