aws-sdk-ecs 1.28.0 → 1.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a9b9f37731079923048c30a03c74ac841bc4bf06
4
- data.tar.gz: 854646ecb0cfaa94bfd985f8c4307a2781a4cfab
3
+ metadata.gz: c721a7075fd0bfbbfe1bae626373f057a2703642
4
+ data.tar.gz: 8e62a4083dacb39aadc34621ac4f4fa280da62af
5
5
  SHA512:
6
- metadata.gz: e41db36a2c3a29ae4bead798e8de2daa29b55309b62ff094468008ed8c322ff6c20cafa7fedf377d9654ffc068cfa2e76c79fd04fb94ad7563d19e982749260e
7
- data.tar.gz: 79170495d2e804b005951a16d905659595e05c8f3f6f19ab5c5995f538770083afd312ef6ea4fa7053e348c8cd5f2b54933d3c5520f65052d17d0563e79a6284
6
+ metadata.gz: bca68b74dfa71c7359b9d94a6a547e3e38b75c1bfd2d26613c0e5d0b95a81dfe46cd391dbe8daf61ec3a0bc3a27b843b35feb94b7c39c29fb2cda76742d01f70
7
+ data.tar.gz: 7217472645413f781061eeaabe2205ca62aea4ce6e99b333d6ac3e2f325ccf30a49563e0140c099f64778d48e5b37bc033135f305098e50abc96dff8d86c2995
@@ -43,6 +43,6 @@ require_relative 'aws-sdk-ecs/customizations'
43
43
  # @service
44
44
  module Aws::ECS
45
45
 
46
- GEM_VERSION = '1.28.0'
46
+ GEM_VERSION = '1.29.0'
47
47
 
48
48
  end
@@ -624,10 +624,10 @@ module Aws::ECS
624
624
  #
625
625
  # @option params [String] :propagate_tags
626
626
  # Specifies whether to propagate the tags from the task definition or
627
- # the service to the tasks. If no value is specified, the tags are not
628
- # propagated. Tags can only be propagated to the tasks within the
629
- # service during service creation. To add tags to a task after service
630
- # creation, use the TagResource API action.
627
+ # the service to the tasks in the service. If no value is specified, the
628
+ # tags are not propagated. Tags can only be propagated to the tasks
629
+ # within the service during service creation. To add tags to a task
630
+ # after service creation, use the TagResource API action.
631
631
  #
632
632
  # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
633
633
  #
@@ -1499,6 +1499,9 @@ module Aws::ECS
1499
1499
  # resp.task_definition.container_definitions[0].system_controls #=> Array
1500
1500
  # resp.task_definition.container_definitions[0].system_controls[0].namespace #=> String
1501
1501
  # resp.task_definition.container_definitions[0].system_controls[0].value #=> String
1502
+ # resp.task_definition.container_definitions[0].resource_requirements #=> Array
1503
+ # resp.task_definition.container_definitions[0].resource_requirements[0].value #=> String
1504
+ # resp.task_definition.container_definitions[0].resource_requirements[0].type #=> String, one of "GPU"
1502
1505
  # resp.task_definition.family #=> String
1503
1506
  # resp.task_definition.task_role_arn #=> String
1504
1507
  # resp.task_definition.execution_role_arn #=> String
@@ -2184,6 +2187,9 @@ module Aws::ECS
2184
2187
  # resp.task_definition.container_definitions[0].system_controls #=> Array
2185
2188
  # resp.task_definition.container_definitions[0].system_controls[0].namespace #=> String
2186
2189
  # resp.task_definition.container_definitions[0].system_controls[0].value #=> String
2190
+ # resp.task_definition.container_definitions[0].resource_requirements #=> Array
2191
+ # resp.task_definition.container_definitions[0].resource_requirements[0].value #=> String
2192
+ # resp.task_definition.container_definitions[0].resource_requirements[0].type #=> String, one of "GPU"
2187
2193
  # resp.task_definition.family #=> String
2188
2194
  # resp.task_definition.task_role_arn #=> String
2189
2195
  # resp.task_definition.execution_role_arn #=> String
@@ -2324,6 +2330,9 @@ module Aws::ECS
2324
2330
  # resp.tasks[0].overrides.container_overrides[0].cpu #=> Integer
2325
2331
  # resp.tasks[0].overrides.container_overrides[0].memory #=> Integer
2326
2332
  # resp.tasks[0].overrides.container_overrides[0].memory_reservation #=> Integer
2333
+ # resp.tasks[0].overrides.container_overrides[0].resource_requirements #=> Array
2334
+ # resp.tasks[0].overrides.container_overrides[0].resource_requirements[0].value #=> String
2335
+ # resp.tasks[0].overrides.container_overrides[0].resource_requirements[0].type #=> String, one of "GPU"
2327
2336
  # resp.tasks[0].overrides.task_role_arn #=> String
2328
2337
  # resp.tasks[0].overrides.execution_role_arn #=> String
2329
2338
  # resp.tasks[0].last_status #=> String
@@ -2347,6 +2356,11 @@ module Aws::ECS
2347
2356
  # resp.tasks[0].containers[0].network_interfaces[0].private_ipv_4_address #=> String
2348
2357
  # resp.tasks[0].containers[0].network_interfaces[0].ipv6_address #=> String
2349
2358
  # resp.tasks[0].containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
2359
+ # resp.tasks[0].containers[0].cpu #=> String
2360
+ # resp.tasks[0].containers[0].memory #=> String
2361
+ # resp.tasks[0].containers[0].memory_reservation #=> String
2362
+ # resp.tasks[0].containers[0].gpu_ids #=> Array
2363
+ # resp.tasks[0].containers[0].gpu_ids[0] #=> String
2350
2364
  # resp.tasks[0].started_by #=> String
2351
2365
  # resp.tasks[0].version #=> Integer
2352
2366
  # resp.tasks[0].stopped_reason #=> String
@@ -3415,6 +3429,10 @@ module Aws::ECS
3415
3429
  # The container instance attributes that this container instance
3416
3430
  # supports.
3417
3431
  #
3432
+ # @option params [Array<Types::PlatformDevice>] :platform_devices
3433
+ # The devices that are available on the container instance. The only
3434
+ # supported device type is a GPU.
3435
+ #
3418
3436
  # @option params [Array<Types::Tag>] :tags
3419
3437
  # The metadata that you apply to the container instance to help you
3420
3438
  # categorize and organize them. Each tag consists of a key and an
@@ -3456,6 +3474,12 @@ module Aws::ECS
3456
3474
  # target_id: "String",
3457
3475
  # },
3458
3476
  # ],
3477
+ # platform_devices: [
3478
+ # {
3479
+ # id: "String", # required
3480
+ # type: "GPU", # required, accepts GPU
3481
+ # },
3482
+ # ],
3459
3483
  # tags: [
3460
3484
  # {
3461
3485
  # key: "TagKey",
@@ -3961,6 +3985,12 @@ module Aws::ECS
3961
3985
  # value: "String",
3962
3986
  # },
3963
3987
  # ],
3988
+ # resource_requirements: [
3989
+ # {
3990
+ # value: "String", # required
3991
+ # type: "GPU", # required, accepts GPU
3992
+ # },
3993
+ # ],
3964
3994
  # },
3965
3995
  # ],
3966
3996
  # volumes: [
@@ -4086,6 +4116,9 @@ module Aws::ECS
4086
4116
  # resp.task_definition.container_definitions[0].system_controls #=> Array
4087
4117
  # resp.task_definition.container_definitions[0].system_controls[0].namespace #=> String
4088
4118
  # resp.task_definition.container_definitions[0].system_controls[0].value #=> String
4119
+ # resp.task_definition.container_definitions[0].resource_requirements #=> Array
4120
+ # resp.task_definition.container_definitions[0].resource_requirements[0].value #=> String
4121
+ # resp.task_definition.container_definitions[0].resource_requirements[0].type #=> String, one of "GPU"
4089
4122
  # resp.task_definition.family #=> String
4090
4123
  # resp.task_definition.task_role_arn #=> String
4091
4124
  # resp.task_definition.execution_role_arn #=> String
@@ -4270,9 +4303,15 @@ module Aws::ECS
4270
4303
  # [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html
4271
4304
  #
4272
4305
  # @option params [String] :propagate_tags
4273
- # Specifies whether to propagate the tags from the task definition or
4274
- # the service to the task. If no value is specified, the tags are not
4275
- # propagated.
4306
+ # Specifies whether to propagate the tags from the task definition to
4307
+ # the task. If no value is specified, the tags are not propagated. Tags
4308
+ # can only be propagated to the task during task creation. To add tags
4309
+ # to a task after task creation, use the TagResource API action.
4310
+ #
4311
+ # <note markdown="1"> An error will be received if you specify the `SERVICE` option when
4312
+ # running a task.
4313
+ #
4314
+ # </note>
4276
4315
  #
4277
4316
  # @return [Types::RunTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4278
4317
  #
@@ -4336,6 +4375,12 @@ module Aws::ECS
4336
4375
  # cpu: 1,
4337
4376
  # memory: 1,
4338
4377
  # memory_reservation: 1,
4378
+ # resource_requirements: [
4379
+ # {
4380
+ # value: "String", # required
4381
+ # type: "GPU", # required, accepts GPU
4382
+ # },
4383
+ # ],
4339
4384
  # },
4340
4385
  # ],
4341
4386
  # task_role_arn: "String",
@@ -4392,6 +4437,9 @@ module Aws::ECS
4392
4437
  # resp.tasks[0].overrides.container_overrides[0].cpu #=> Integer
4393
4438
  # resp.tasks[0].overrides.container_overrides[0].memory #=> Integer
4394
4439
  # resp.tasks[0].overrides.container_overrides[0].memory_reservation #=> Integer
4440
+ # resp.tasks[0].overrides.container_overrides[0].resource_requirements #=> Array
4441
+ # resp.tasks[0].overrides.container_overrides[0].resource_requirements[0].value #=> String
4442
+ # resp.tasks[0].overrides.container_overrides[0].resource_requirements[0].type #=> String, one of "GPU"
4395
4443
  # resp.tasks[0].overrides.task_role_arn #=> String
4396
4444
  # resp.tasks[0].overrides.execution_role_arn #=> String
4397
4445
  # resp.tasks[0].last_status #=> String
@@ -4415,6 +4463,11 @@ module Aws::ECS
4415
4463
  # resp.tasks[0].containers[0].network_interfaces[0].private_ipv_4_address #=> String
4416
4464
  # resp.tasks[0].containers[0].network_interfaces[0].ipv6_address #=> String
4417
4465
  # resp.tasks[0].containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
4466
+ # resp.tasks[0].containers[0].cpu #=> String
4467
+ # resp.tasks[0].containers[0].memory #=> String
4468
+ # resp.tasks[0].containers[0].memory_reservation #=> String
4469
+ # resp.tasks[0].containers[0].gpu_ids #=> Array
4470
+ # resp.tasks[0].containers[0].gpu_ids[0] #=> String
4418
4471
  # resp.tasks[0].started_by #=> String
4419
4472
  # resp.tasks[0].version #=> Integer
4420
4473
  # resp.tasks[0].stopped_reason #=> String
@@ -4563,6 +4616,12 @@ module Aws::ECS
4563
4616
  # cpu: 1,
4564
4617
  # memory: 1,
4565
4618
  # memory_reservation: 1,
4619
+ # resource_requirements: [
4620
+ # {
4621
+ # value: "String", # required
4622
+ # type: "GPU", # required, accepts GPU
4623
+ # },
4624
+ # ],
4566
4625
  # },
4567
4626
  # ],
4568
4627
  # task_role_arn: "String",
@@ -4605,6 +4664,9 @@ module Aws::ECS
4605
4664
  # resp.tasks[0].overrides.container_overrides[0].cpu #=> Integer
4606
4665
  # resp.tasks[0].overrides.container_overrides[0].memory #=> Integer
4607
4666
  # resp.tasks[0].overrides.container_overrides[0].memory_reservation #=> Integer
4667
+ # resp.tasks[0].overrides.container_overrides[0].resource_requirements #=> Array
4668
+ # resp.tasks[0].overrides.container_overrides[0].resource_requirements[0].value #=> String
4669
+ # resp.tasks[0].overrides.container_overrides[0].resource_requirements[0].type #=> String, one of "GPU"
4608
4670
  # resp.tasks[0].overrides.task_role_arn #=> String
4609
4671
  # resp.tasks[0].overrides.execution_role_arn #=> String
4610
4672
  # resp.tasks[0].last_status #=> String
@@ -4628,6 +4690,11 @@ module Aws::ECS
4628
4690
  # resp.tasks[0].containers[0].network_interfaces[0].private_ipv_4_address #=> String
4629
4691
  # resp.tasks[0].containers[0].network_interfaces[0].ipv6_address #=> String
4630
4692
  # resp.tasks[0].containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
4693
+ # resp.tasks[0].containers[0].cpu #=> String
4694
+ # resp.tasks[0].containers[0].memory #=> String
4695
+ # resp.tasks[0].containers[0].memory_reservation #=> String
4696
+ # resp.tasks[0].containers[0].gpu_ids #=> Array
4697
+ # resp.tasks[0].containers[0].gpu_ids[0] #=> String
4631
4698
  # resp.tasks[0].started_by #=> String
4632
4699
  # resp.tasks[0].version #=> Integer
4633
4700
  # resp.tasks[0].stopped_reason #=> String
@@ -4732,6 +4799,9 @@ module Aws::ECS
4732
4799
  # resp.task.overrides.container_overrides[0].cpu #=> Integer
4733
4800
  # resp.task.overrides.container_overrides[0].memory #=> Integer
4734
4801
  # resp.task.overrides.container_overrides[0].memory_reservation #=> Integer
4802
+ # resp.task.overrides.container_overrides[0].resource_requirements #=> Array
4803
+ # resp.task.overrides.container_overrides[0].resource_requirements[0].value #=> String
4804
+ # resp.task.overrides.container_overrides[0].resource_requirements[0].type #=> String, one of "GPU"
4735
4805
  # resp.task.overrides.task_role_arn #=> String
4736
4806
  # resp.task.overrides.execution_role_arn #=> String
4737
4807
  # resp.task.last_status #=> String
@@ -4755,6 +4825,11 @@ module Aws::ECS
4755
4825
  # resp.task.containers[0].network_interfaces[0].private_ipv_4_address #=> String
4756
4826
  # resp.task.containers[0].network_interfaces[0].ipv6_address #=> String
4757
4827
  # resp.task.containers[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
4828
+ # resp.task.containers[0].cpu #=> String
4829
+ # resp.task.containers[0].memory #=> String
4830
+ # resp.task.containers[0].memory_reservation #=> String
4831
+ # resp.task.containers[0].gpu_ids #=> Array
4832
+ # resp.task.containers[0].gpu_ids[0] #=> String
4758
4833
  # resp.task.started_by #=> String
4759
4834
  # resp.task.version #=> Integer
4760
4835
  # resp.task.stopped_reason #=> String
@@ -5621,7 +5696,7 @@ module Aws::ECS
5621
5696
  params: params,
5622
5697
  config: config)
5623
5698
  context[:gem_name] = 'aws-sdk-ecs'
5624
- context[:gem_version] = '1.28.0'
5699
+ context[:gem_version] = '1.29.0'
5625
5700
  Seahorse::Client::Request.new(handlers, context)
5626
5701
  end
5627
5702
 
@@ -96,6 +96,7 @@ module Aws::ECS
96
96
  EnvironmentVariables = Shapes::ListShape.new(name: 'EnvironmentVariables')
97
97
  Failure = Shapes::StructureShape.new(name: 'Failure')
98
98
  Failures = Shapes::ListShape.new(name: 'Failures')
99
+ GpuIds = Shapes::ListShape.new(name: 'GpuIds')
99
100
  HealthCheck = Shapes::StructureShape.new(name: 'HealthCheck')
100
101
  HealthStatus = Shapes::StringShape.new(name: 'HealthStatus')
101
102
  HostEntry = Shapes::StructureShape.new(name: 'HostEntry')
@@ -149,6 +150,9 @@ module Aws::ECS
149
150
  PlacementStrategies = Shapes::ListShape.new(name: 'PlacementStrategies')
150
151
  PlacementStrategy = Shapes::StructureShape.new(name: 'PlacementStrategy')
151
152
  PlacementStrategyType = Shapes::StringShape.new(name: 'PlacementStrategyType')
153
+ PlatformDevice = Shapes::StructureShape.new(name: 'PlatformDevice')
154
+ PlatformDeviceType = Shapes::StringShape.new(name: 'PlatformDeviceType')
155
+ PlatformDevices = Shapes::ListShape.new(name: 'PlatformDevices')
152
156
  PlatformTaskDefinitionIncompatibilityException = Shapes::StructureShape.new(name: 'PlatformTaskDefinitionIncompatibilityException')
153
157
  PlatformUnknownException = Shapes::StructureShape.new(name: 'PlatformUnknownException')
154
158
  PortMapping = Shapes::StructureShape.new(name: 'PortMapping')
@@ -166,6 +170,9 @@ module Aws::ECS
166
170
  RequiresAttributes = Shapes::ListShape.new(name: 'RequiresAttributes')
167
171
  Resource = Shapes::StructureShape.new(name: 'Resource')
168
172
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
173
+ ResourceRequirement = Shapes::StructureShape.new(name: 'ResourceRequirement')
174
+ ResourceRequirements = Shapes::ListShape.new(name: 'ResourceRequirements')
175
+ ResourceType = Shapes::StringShape.new(name: 'ResourceType')
169
176
  Resources = Shapes::ListShape.new(name: 'Resources')
170
177
  RunTaskRequest = Shapes::StructureShape.new(name: 'RunTaskRequest')
171
178
  RunTaskResponse = Shapes::StructureShape.new(name: 'RunTaskResponse')
@@ -308,6 +315,10 @@ module Aws::ECS
308
315
  Container.add_member(:network_bindings, Shapes::ShapeRef.new(shape: NetworkBindings, location_name: "networkBindings"))
309
316
  Container.add_member(:network_interfaces, Shapes::ShapeRef.new(shape: NetworkInterfaces, location_name: "networkInterfaces"))
310
317
  Container.add_member(:health_status, Shapes::ShapeRef.new(shape: HealthStatus, location_name: "healthStatus"))
318
+ Container.add_member(:cpu, Shapes::ShapeRef.new(shape: String, location_name: "cpu"))
319
+ Container.add_member(:memory, Shapes::ShapeRef.new(shape: String, location_name: "memory"))
320
+ Container.add_member(:memory_reservation, Shapes::ShapeRef.new(shape: String, location_name: "memoryReservation"))
321
+ Container.add_member(:gpu_ids, Shapes::ShapeRef.new(shape: GpuIds, location_name: "gpuIds"))
311
322
  Container.struct_class = Types::Container
312
323
 
313
324
  ContainerDefinition.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
@@ -343,6 +354,7 @@ module Aws::ECS
343
354
  ContainerDefinition.add_member(:log_configuration, Shapes::ShapeRef.new(shape: LogConfiguration, location_name: "logConfiguration"))
344
355
  ContainerDefinition.add_member(:health_check, Shapes::ShapeRef.new(shape: HealthCheck, location_name: "healthCheck"))
345
356
  ContainerDefinition.add_member(:system_controls, Shapes::ShapeRef.new(shape: SystemControls, location_name: "systemControls"))
357
+ ContainerDefinition.add_member(:resource_requirements, Shapes::ShapeRef.new(shape: ResourceRequirements, location_name: "resourceRequirements"))
346
358
  ContainerDefinition.struct_class = Types::ContainerDefinition
347
359
 
348
360
  ContainerDefinitions.member = Shapes::ShapeRef.new(shape: ContainerDefinition)
@@ -374,6 +386,7 @@ module Aws::ECS
374
386
  ContainerOverride.add_member(:cpu, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "cpu"))
375
387
  ContainerOverride.add_member(:memory, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "memory"))
376
388
  ContainerOverride.add_member(:memory_reservation, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "memoryReservation"))
389
+ ContainerOverride.add_member(:resource_requirements, Shapes::ShapeRef.new(shape: ResourceRequirements, location_name: "resourceRequirements"))
377
390
  ContainerOverride.struct_class = Types::ContainerOverride
378
391
 
379
392
  ContainerOverrides.member = Shapes::ShapeRef.new(shape: ContainerOverride)
@@ -563,6 +576,8 @@ module Aws::ECS
563
576
 
564
577
  Failures.member = Shapes::ShapeRef.new(shape: Failure)
565
578
 
579
+ GpuIds.member = Shapes::ShapeRef.new(shape: String)
580
+
566
581
  HealthCheck.add_member(:command, Shapes::ShapeRef.new(shape: StringList, required: true, location_name: "command"))
567
582
  HealthCheck.add_member(:interval, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "interval"))
568
583
  HealthCheck.add_member(:timeout, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "timeout"))
@@ -742,6 +757,12 @@ module Aws::ECS
742
757
  PlacementStrategy.add_member(:field, Shapes::ShapeRef.new(shape: String, location_name: "field"))
743
758
  PlacementStrategy.struct_class = Types::PlacementStrategy
744
759
 
760
+ PlatformDevice.add_member(:id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "id"))
761
+ PlatformDevice.add_member(:type, Shapes::ShapeRef.new(shape: PlatformDeviceType, required: true, location_name: "type"))
762
+ PlatformDevice.struct_class = Types::PlatformDevice
763
+
764
+ PlatformDevices.member = Shapes::ShapeRef.new(shape: PlatformDevice)
765
+
745
766
  PortMapping.add_member(:container_port, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "containerPort"))
746
767
  PortMapping.add_member(:host_port, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "hostPort"))
747
768
  PortMapping.add_member(:protocol, Shapes::ShapeRef.new(shape: TransportProtocol, location_name: "protocol"))
@@ -771,6 +792,7 @@ module Aws::ECS
771
792
  RegisterContainerInstanceRequest.add_member(:version_info, Shapes::ShapeRef.new(shape: VersionInfo, location_name: "versionInfo"))
772
793
  RegisterContainerInstanceRequest.add_member(:container_instance_arn, Shapes::ShapeRef.new(shape: String, location_name: "containerInstanceArn"))
773
794
  RegisterContainerInstanceRequest.add_member(:attributes, Shapes::ShapeRef.new(shape: Attributes, location_name: "attributes"))
795
+ RegisterContainerInstanceRequest.add_member(:platform_devices, Shapes::ShapeRef.new(shape: PlatformDevices, location_name: "platformDevices"))
774
796
  RegisterContainerInstanceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
775
797
  RegisterContainerInstanceRequest.struct_class = Types::RegisterContainerInstanceRequest
776
798
 
@@ -809,6 +831,12 @@ module Aws::ECS
809
831
  Resource.add_member(:string_set_value, Shapes::ShapeRef.new(shape: StringList, location_name: "stringSetValue"))
810
832
  Resource.struct_class = Types::Resource
811
833
 
834
+ ResourceRequirement.add_member(:value, Shapes::ShapeRef.new(shape: String, required: true, location_name: "value"))
835
+ ResourceRequirement.add_member(:type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "type"))
836
+ ResourceRequirement.struct_class = Types::ResourceRequirement
837
+
838
+ ResourceRequirements.member = Shapes::ShapeRef.new(shape: ResourceRequirement)
839
+
812
840
  Resources.member = Shapes::ShapeRef.new(shape: Resource)
813
841
 
814
842
  RunTaskRequest.add_member(:cluster, Shapes::ShapeRef.new(shape: String, location_name: "cluster"))
@@ -291,6 +291,24 @@ module Aws::ECS
291
291
  # reports the health status as `UNKNOWN`.
292
292
  # @return [String]
293
293
  #
294
+ # @!attribute [rw] cpu
295
+ # The number of CPU units set for the container. The value will be `0`
296
+ # if no value was specified in the container definition when the task
297
+ # definition was registered.
298
+ # @return [String]
299
+ #
300
+ # @!attribute [rw] memory
301
+ # The hard limit (in MiB) of memory set for the container.
302
+ # @return [String]
303
+ #
304
+ # @!attribute [rw] memory_reservation
305
+ # The soft limit (in MiB) of memory set for the container.
306
+ # @return [String]
307
+ #
308
+ # @!attribute [rw] gpu_ids
309
+ # The IDs of each GPU assigned to the container.
310
+ # @return [Array<String>]
311
+ #
294
312
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Container AWS API Documentation
295
313
  #
296
314
  class Container < Struct.new(
@@ -302,7 +320,11 @@ module Aws::ECS
302
320
  :reason,
303
321
  :network_bindings,
304
322
  :network_interfaces,
305
- :health_status)
323
+ :health_status,
324
+ :cpu,
325
+ :memory,
326
+ :memory_reservation,
327
+ :gpu_ids)
306
328
  include Aws::Structure
307
329
  end
308
330
 
@@ -425,6 +447,12 @@ module Aws::ECS
425
447
  # value: "String",
426
448
  # },
427
449
  # ],
450
+ # resource_requirements: [
451
+ # {
452
+ # value: "String", # required
453
+ # type: "GPU", # required, accepts GPU
454
+ # },
455
+ # ],
428
456
  # }
429
457
  #
430
458
  # @!attribute [rw] name
@@ -1136,6 +1164,11 @@ module Aws::ECS
1136
1164
  # [3]: https://docs.docker.com/engine/reference/run/
1137
1165
  # @return [Array<Types::SystemControl>]
1138
1166
  #
1167
+ # @!attribute [rw] resource_requirements
1168
+ # The type and amount of a resource to assign to a container. The only
1169
+ # supported resource is a GPU.
1170
+ # @return [Array<Types::ResourceRequirement>]
1171
+ #
1139
1172
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ContainerDefinition AWS API Documentation
1140
1173
  #
1141
1174
  class ContainerDefinition < Struct.new(
@@ -1171,7 +1204,8 @@ module Aws::ECS
1171
1204
  :ulimits,
1172
1205
  :log_configuration,
1173
1206
  :health_check,
1174
- :system_controls)
1207
+ :system_controls,
1208
+ :resource_requirements)
1175
1209
  include Aws::Structure
1176
1210
  end
1177
1211
 
@@ -1327,6 +1361,12 @@ module Aws::ECS
1327
1361
  # cpu: 1,
1328
1362
  # memory: 1,
1329
1363
  # memory_reservation: 1,
1364
+ # resource_requirements: [
1365
+ # {
1366
+ # value: "String", # required
1367
+ # type: "GPU", # required, accepts GPU
1368
+ # },
1369
+ # ],
1330
1370
  # }
1331
1371
  #
1332
1372
  # @!attribute [rw] name
@@ -1367,6 +1407,12 @@ module Aws::ECS
1367
1407
  # specify a container name.
1368
1408
  # @return [Integer]
1369
1409
  #
1410
+ # @!attribute [rw] resource_requirements
1411
+ # The type and amount of a resource to assign to a container, instead
1412
+ # of the default value from the task definition. The only supported
1413
+ # resource is a GPU.
1414
+ # @return [Array<Types::ResourceRequirement>]
1415
+ #
1370
1416
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ContainerOverride AWS API Documentation
1371
1417
  #
1372
1418
  class ContainerOverride < Struct.new(
@@ -1375,7 +1421,8 @@ module Aws::ECS
1375
1421
  :environment,
1376
1422
  :cpu,
1377
1423
  :memory,
1378
- :memory_reservation)
1424
+ :memory_reservation,
1425
+ :resource_requirements)
1379
1426
  include Aws::Structure
1380
1427
  end
1381
1428
 
@@ -1793,10 +1840,10 @@ module Aws::ECS
1793
1840
  #
1794
1841
  # @!attribute [rw] propagate_tags
1795
1842
  # Specifies whether to propagate the tags from the task definition or
1796
- # the service to the tasks. If no value is specified, the tags are not
1797
- # propagated. Tags can only be propagated to the tasks within the
1798
- # service during service creation. To add tags to a task after service
1799
- # creation, use the TagResource API action.
1843
+ # the service to the tasks in the service. If no value is specified,
1844
+ # the tags are not propagated. Tags can only be propagated to the
1845
+ # tasks within the service during service creation. To add tags to a
1846
+ # task after service creation, use the TagResource API action.
1800
1847
  # @return [String]
1801
1848
  #
1802
1849
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateServiceRequest AWS API Documentation
@@ -4258,6 +4305,36 @@ module Aws::ECS
4258
4305
  include Aws::Structure
4259
4306
  end
4260
4307
 
4308
+ # The devices that are available on the container instance. The only
4309
+ # supported device type is a GPU.
4310
+ #
4311
+ # @note When making an API call, you may pass PlatformDevice
4312
+ # data as a hash:
4313
+ #
4314
+ # {
4315
+ # id: "String", # required
4316
+ # type: "GPU", # required, accepts GPU
4317
+ # }
4318
+ #
4319
+ # @!attribute [rw] id
4320
+ # The ID for the GPU(s) on the container instance. The available GPU
4321
+ # IDs can also be obtained on the container instance in the
4322
+ # `/var/lib/ecs/gpu/nvidia_gpu_info.json` file.
4323
+ # @return [String]
4324
+ #
4325
+ # @!attribute [rw] type
4326
+ # The type of device that is available on the container instance. The
4327
+ # only supported value is `GPU`.
4328
+ # @return [String]
4329
+ #
4330
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/PlatformDevice AWS API Documentation
4331
+ #
4332
+ class PlatformDevice < Struct.new(
4333
+ :id,
4334
+ :type)
4335
+ include Aws::Structure
4336
+ end
4337
+
4261
4338
  # Port mappings allow containers to access ports on the host container
4262
4339
  # instance to send or receive traffic. Port mappings are specified as
4263
4340
  # part of the container definition.
@@ -4479,6 +4556,12 @@ module Aws::ECS
4479
4556
  # target_id: "String",
4480
4557
  # },
4481
4558
  # ],
4559
+ # platform_devices: [
4560
+ # {
4561
+ # id: "String", # required
4562
+ # type: "GPU", # required, accepts GPU
4563
+ # },
4564
+ # ],
4482
4565
  # tags: [
4483
4566
  # {
4484
4567
  # key: "TagKey",
@@ -4525,6 +4608,11 @@ module Aws::ECS
4525
4608
  # supports.
4526
4609
  # @return [Array<Types::Attribute>]
4527
4610
  #
4611
+ # @!attribute [rw] platform_devices
4612
+ # The devices that are available on the container instance. The only
4613
+ # supported device type is a GPU.
4614
+ # @return [Array<Types::PlatformDevice>]
4615
+ #
4528
4616
  # @!attribute [rw] tags
4529
4617
  # The metadata that you apply to the container instance to help you
4530
4618
  # categorize and organize them. Each tag consists of a key and an
@@ -4543,6 +4631,7 @@ module Aws::ECS
4543
4631
  :version_info,
4544
4632
  :container_instance_arn,
4545
4633
  :attributes,
4634
+ :platform_devices,
4546
4635
  :tags)
4547
4636
  include Aws::Structure
4548
4637
  end
@@ -4680,6 +4769,12 @@ module Aws::ECS
4680
4769
  # value: "String",
4681
4770
  # },
4682
4771
  # ],
4772
+ # resource_requirements: [
4773
+ # {
4774
+ # value: "String", # required
4775
+ # type: "GPU", # required, accepts GPU
4776
+ # },
4777
+ # ],
4683
4778
  # },
4684
4779
  # ],
4685
4780
  # volumes: [
@@ -5085,6 +5180,34 @@ module Aws::ECS
5085
5180
  include Aws::Structure
5086
5181
  end
5087
5182
 
5183
+ # The type and amount of a resource to assign to a container. The only
5184
+ # supported resource is a GPU.
5185
+ #
5186
+ # @note When making an API call, you may pass ResourceRequirement
5187
+ # data as a hash:
5188
+ #
5189
+ # {
5190
+ # value: "String", # required
5191
+ # type: "GPU", # required, accepts GPU
5192
+ # }
5193
+ #
5194
+ # @!attribute [rw] value
5195
+ # The number of GPUs to assign to a container.
5196
+ # @return [String]
5197
+ #
5198
+ # @!attribute [rw] type
5199
+ # The type of resource a container desires. The only supported value
5200
+ # is `GPU`.
5201
+ # @return [String]
5202
+ #
5203
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ResourceRequirement AWS API Documentation
5204
+ #
5205
+ class ResourceRequirement < Struct.new(
5206
+ :value,
5207
+ :type)
5208
+ include Aws::Structure
5209
+ end
5210
+
5088
5211
  # @note When making an API call, you may pass RunTaskRequest
5089
5212
  # data as a hash:
5090
5213
  #
@@ -5105,6 +5228,12 @@ module Aws::ECS
5105
5228
  # cpu: 1,
5106
5229
  # memory: 1,
5107
5230
  # memory_reservation: 1,
5231
+ # resource_requirements: [
5232
+ # {
5233
+ # value: "String", # required
5234
+ # type: "GPU", # required, accepts GPU
5235
+ # },
5236
+ # ],
5108
5237
  # },
5109
5238
  # ],
5110
5239
  # task_role_arn: "String",
@@ -5260,9 +5389,15 @@ module Aws::ECS
5260
5389
  # @return [Boolean]
5261
5390
  #
5262
5391
  # @!attribute [rw] propagate_tags
5263
- # Specifies whether to propagate the tags from the task definition or
5264
- # the service to the task. If no value is specified, the tags are not
5265
- # propagated.
5392
+ # Specifies whether to propagate the tags from the task definition to
5393
+ # the task. If no value is specified, the tags are not propagated.
5394
+ # Tags can only be propagated to the task during task creation. To add
5395
+ # tags to a task after task creation, use the TagResource API action.
5396
+ #
5397
+ # <note markdown="1"> An error will be received if you specify the `SERVICE` option when
5398
+ # running a task.
5399
+ #
5400
+ # </note>
5266
5401
  # @return [String]
5267
5402
  #
5268
5403
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/RunTaskRequest AWS API Documentation
@@ -5720,6 +5855,12 @@ module Aws::ECS
5720
5855
  # cpu: 1,
5721
5856
  # memory: 1,
5722
5857
  # memory_reservation: 1,
5858
+ # resource_requirements: [
5859
+ # {
5860
+ # value: "String", # required
5861
+ # type: "GPU", # required, accepts GPU
5862
+ # },
5863
+ # ],
5723
5864
  # },
5724
5865
  # ],
5725
5866
  # task_role_arn: "String",
@@ -6816,6 +6957,12 @@ module Aws::ECS
6816
6957
  # cpu: 1,
6817
6958
  # memory: 1,
6818
6959
  # memory_reservation: 1,
6960
+ # resource_requirements: [
6961
+ # {
6962
+ # value: "String", # required
6963
+ # type: "GPU", # required, accepts GPU
6964
+ # },
6965
+ # ],
6819
6966
  # },
6820
6967
  # ],
6821
6968
  # task_role_arn: "String",
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ecs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.28.0
4
+ version: 1.29.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-04 00:00:00.000000000 Z
11
+ date: 2019-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core