aws-sdk-ecs 1.3.0 → 1.4.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 +4 -4
- data/lib/aws-sdk-ecs.rb +1 -1
- data/lib/aws-sdk-ecs/client.rb +271 -27
- data/lib/aws-sdk-ecs/client_api.rb +61 -0
- data/lib/aws-sdk-ecs/types.rb +387 -33
- metadata +2 -2
@@ -12,9 +12,15 @@ module Aws::ECS
|
|
12
12
|
include Seahorse::Model
|
13
13
|
|
14
14
|
AgentUpdateStatus = Shapes::StringShape.new(name: 'AgentUpdateStatus')
|
15
|
+
Attachment = Shapes::StructureShape.new(name: 'Attachment')
|
16
|
+
AttachmentDetails = Shapes::ListShape.new(name: 'AttachmentDetails')
|
17
|
+
AttachmentStateChange = Shapes::StructureShape.new(name: 'AttachmentStateChange')
|
18
|
+
AttachmentStateChanges = Shapes::ListShape.new(name: 'AttachmentStateChanges')
|
19
|
+
Attachments = Shapes::ListShape.new(name: 'Attachments')
|
15
20
|
Attribute = Shapes::StructureShape.new(name: 'Attribute')
|
16
21
|
AttributeLimitExceededException = Shapes::StructureShape.new(name: 'AttributeLimitExceededException')
|
17
22
|
Attributes = Shapes::ListShape.new(name: 'Attributes')
|
23
|
+
AwsVpcConfiguration = Shapes::StructureShape.new(name: 'AwsVpcConfiguration')
|
18
24
|
Boolean = Shapes::BooleanShape.new(name: 'Boolean')
|
19
25
|
BoxedBoolean = Shapes::BooleanShape.new(name: 'BoxedBoolean')
|
20
26
|
BoxedInteger = Shapes::IntegerShape.new(name: 'BoxedInteger')
|
@@ -32,6 +38,8 @@ module Aws::ECS
|
|
32
38
|
ContainerInstances = Shapes::ListShape.new(name: 'ContainerInstances')
|
33
39
|
ContainerOverride = Shapes::StructureShape.new(name: 'ContainerOverride')
|
34
40
|
ContainerOverrides = Shapes::ListShape.new(name: 'ContainerOverrides')
|
41
|
+
ContainerStateChange = Shapes::StructureShape.new(name: 'ContainerStateChange')
|
42
|
+
ContainerStateChanges = Shapes::ListShape.new(name: 'ContainerStateChanges')
|
35
43
|
Containers = Shapes::ListShape.new(name: 'Containers')
|
36
44
|
CreateClusterRequest = Shapes::StructureShape.new(name: 'CreateClusterRequest')
|
37
45
|
CreateClusterResponse = Shapes::StructureShape.new(name: 'CreateClusterResponse')
|
@@ -105,6 +113,9 @@ module Aws::ECS
|
|
105
113
|
MountPointList = Shapes::ListShape.new(name: 'MountPointList')
|
106
114
|
NetworkBinding = Shapes::StructureShape.new(name: 'NetworkBinding')
|
107
115
|
NetworkBindings = Shapes::ListShape.new(name: 'NetworkBindings')
|
116
|
+
NetworkConfiguration = Shapes::StructureShape.new(name: 'NetworkConfiguration')
|
117
|
+
NetworkInterface = Shapes::StructureShape.new(name: 'NetworkInterface')
|
118
|
+
NetworkInterfaces = Shapes::ListShape.new(name: 'NetworkInterfaces')
|
108
119
|
NetworkMode = Shapes::StringShape.new(name: 'NetworkMode')
|
109
120
|
NoUpdateAvailableException = Shapes::StructureShape.new(name: 'NoUpdateAvailableException')
|
110
121
|
PlacementConstraint = Shapes::StructureShape.new(name: 'PlacementConstraint')
|
@@ -173,6 +184,22 @@ module Aws::ECS
|
|
173
184
|
VolumeFromList = Shapes::ListShape.new(name: 'VolumeFromList')
|
174
185
|
VolumeList = Shapes::ListShape.new(name: 'VolumeList')
|
175
186
|
|
187
|
+
Attachment.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
|
188
|
+
Attachment.add_member(:type, Shapes::ShapeRef.new(shape: String, location_name: "type"))
|
189
|
+
Attachment.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "status"))
|
190
|
+
Attachment.add_member(:details, Shapes::ShapeRef.new(shape: AttachmentDetails, location_name: "details"))
|
191
|
+
Attachment.struct_class = Types::Attachment
|
192
|
+
|
193
|
+
AttachmentDetails.member = Shapes::ShapeRef.new(shape: KeyValuePair)
|
194
|
+
|
195
|
+
AttachmentStateChange.add_member(:attachment_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "attachmentArn"))
|
196
|
+
AttachmentStateChange.add_member(:status, Shapes::ShapeRef.new(shape: String, required: true, location_name: "status"))
|
197
|
+
AttachmentStateChange.struct_class = Types::AttachmentStateChange
|
198
|
+
|
199
|
+
AttachmentStateChanges.member = Shapes::ShapeRef.new(shape: AttachmentStateChange)
|
200
|
+
|
201
|
+
Attachments.member = Shapes::ShapeRef.new(shape: Attachment)
|
202
|
+
|
176
203
|
Attribute.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "name"))
|
177
204
|
Attribute.add_member(:value, Shapes::ShapeRef.new(shape: String, location_name: "value"))
|
178
205
|
Attribute.add_member(:target_type, Shapes::ShapeRef.new(shape: TargetType, location_name: "targetType"))
|
@@ -181,6 +208,10 @@ module Aws::ECS
|
|
181
208
|
|
182
209
|
Attributes.member = Shapes::ShapeRef.new(shape: Attribute)
|
183
210
|
|
211
|
+
AwsVpcConfiguration.add_member(:subnets, Shapes::ShapeRef.new(shape: StringList, required: true, location_name: "subnets"))
|
212
|
+
AwsVpcConfiguration.add_member(:security_groups, Shapes::ShapeRef.new(shape: StringList, location_name: "securityGroups"))
|
213
|
+
AwsVpcConfiguration.struct_class = Types::AwsVpcConfiguration
|
214
|
+
|
184
215
|
Cluster.add_member(:cluster_arn, Shapes::ShapeRef.new(shape: String, location_name: "clusterArn"))
|
185
216
|
Cluster.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, location_name: "clusterName"))
|
186
217
|
Cluster.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "status"))
|
@@ -199,6 +230,7 @@ module Aws::ECS
|
|
199
230
|
Container.add_member(:exit_code, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "exitCode"))
|
200
231
|
Container.add_member(:reason, Shapes::ShapeRef.new(shape: String, location_name: "reason"))
|
201
232
|
Container.add_member(:network_bindings, Shapes::ShapeRef.new(shape: NetworkBindings, location_name: "networkBindings"))
|
233
|
+
Container.add_member(:network_interfaces, Shapes::ShapeRef.new(shape: NetworkInterfaces, location_name: "networkInterfaces"))
|
202
234
|
Container.struct_class = Types::Container
|
203
235
|
|
204
236
|
ContainerDefinition.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
|
@@ -245,6 +277,7 @@ module Aws::ECS
|
|
245
277
|
ContainerInstance.add_member(:agent_update_status, Shapes::ShapeRef.new(shape: AgentUpdateStatus, location_name: "agentUpdateStatus"))
|
246
278
|
ContainerInstance.add_member(:attributes, Shapes::ShapeRef.new(shape: Attributes, location_name: "attributes"))
|
247
279
|
ContainerInstance.add_member(:registered_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "registeredAt"))
|
280
|
+
ContainerInstance.add_member(:attachments, Shapes::ShapeRef.new(shape: Attachments, location_name: "attachments"))
|
248
281
|
ContainerInstance.struct_class = Types::ContainerInstance
|
249
282
|
|
250
283
|
ContainerInstances.member = Shapes::ShapeRef.new(shape: ContainerInstance)
|
@@ -259,6 +292,15 @@ module Aws::ECS
|
|
259
292
|
|
260
293
|
ContainerOverrides.member = Shapes::ShapeRef.new(shape: ContainerOverride)
|
261
294
|
|
295
|
+
ContainerStateChange.add_member(:container_name, Shapes::ShapeRef.new(shape: String, location_name: "containerName"))
|
296
|
+
ContainerStateChange.add_member(:exit_code, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "exitCode"))
|
297
|
+
ContainerStateChange.add_member(:network_bindings, Shapes::ShapeRef.new(shape: NetworkBindings, location_name: "networkBindings"))
|
298
|
+
ContainerStateChange.add_member(:reason, Shapes::ShapeRef.new(shape: String, location_name: "reason"))
|
299
|
+
ContainerStateChange.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "status"))
|
300
|
+
ContainerStateChange.struct_class = Types::ContainerStateChange
|
301
|
+
|
302
|
+
ContainerStateChanges.member = Shapes::ShapeRef.new(shape: ContainerStateChange)
|
303
|
+
|
262
304
|
Containers.member = Shapes::ShapeRef.new(shape: Container)
|
263
305
|
|
264
306
|
CreateClusterRequest.add_member(:cluster_name, Shapes::ShapeRef.new(shape: String, location_name: "clusterName"))
|
@@ -277,6 +319,7 @@ module Aws::ECS
|
|
277
319
|
CreateServiceRequest.add_member(:deployment_configuration, Shapes::ShapeRef.new(shape: DeploymentConfiguration, location_name: "deploymentConfiguration"))
|
278
320
|
CreateServiceRequest.add_member(:placement_constraints, Shapes::ShapeRef.new(shape: PlacementConstraints, location_name: "placementConstraints"))
|
279
321
|
CreateServiceRequest.add_member(:placement_strategy, Shapes::ShapeRef.new(shape: PlacementStrategies, location_name: "placementStrategy"))
|
322
|
+
CreateServiceRequest.add_member(:network_configuration, Shapes::ShapeRef.new(shape: NetworkConfiguration, location_name: "networkConfiguration"))
|
280
323
|
CreateServiceRequest.struct_class = Types::CreateServiceRequest
|
281
324
|
|
282
325
|
CreateServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "service"))
|
@@ -310,6 +353,7 @@ module Aws::ECS
|
|
310
353
|
Deployment.add_member(:running_count, Shapes::ShapeRef.new(shape: Integer, location_name: "runningCount"))
|
311
354
|
Deployment.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdAt"))
|
312
355
|
Deployment.add_member(:updated_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "updatedAt"))
|
356
|
+
Deployment.add_member(:network_configuration, Shapes::ShapeRef.new(shape: NetworkConfiguration, location_name: "networkConfiguration"))
|
313
357
|
Deployment.struct_class = Types::Deployment
|
314
358
|
|
315
359
|
DeploymentConfiguration.add_member(:maximum_percent, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "maximumPercent"))
|
@@ -524,6 +568,16 @@ module Aws::ECS
|
|
524
568
|
|
525
569
|
NetworkBindings.member = Shapes::ShapeRef.new(shape: NetworkBinding)
|
526
570
|
|
571
|
+
NetworkConfiguration.add_member(:awsvpc_configuration, Shapes::ShapeRef.new(shape: AwsVpcConfiguration, location_name: "awsvpcConfiguration"))
|
572
|
+
NetworkConfiguration.struct_class = Types::NetworkConfiguration
|
573
|
+
|
574
|
+
NetworkInterface.add_member(:attachment_id, Shapes::ShapeRef.new(shape: String, location_name: "attachmentId"))
|
575
|
+
NetworkInterface.add_member(:private_ipv_4_address, Shapes::ShapeRef.new(shape: String, location_name: "privateIpv4Address"))
|
576
|
+
NetworkInterface.add_member(:ipv6_address, Shapes::ShapeRef.new(shape: String, location_name: "ipv6Address"))
|
577
|
+
NetworkInterface.struct_class = Types::NetworkInterface
|
578
|
+
|
579
|
+
NetworkInterfaces.member = Shapes::ShapeRef.new(shape: NetworkInterface)
|
580
|
+
|
527
581
|
PlacementConstraint.add_member(:type, Shapes::ShapeRef.new(shape: PlacementConstraintType, location_name: "type"))
|
528
582
|
PlacementConstraint.add_member(:expression, Shapes::ShapeRef.new(shape: String, location_name: "expression"))
|
529
583
|
PlacementConstraint.struct_class = Types::PlacementConstraint
|
@@ -593,6 +647,7 @@ module Aws::ECS
|
|
593
647
|
RunTaskRequest.add_member(:group, Shapes::ShapeRef.new(shape: String, location_name: "group"))
|
594
648
|
RunTaskRequest.add_member(:placement_constraints, Shapes::ShapeRef.new(shape: PlacementConstraints, location_name: "placementConstraints"))
|
595
649
|
RunTaskRequest.add_member(:placement_strategy, Shapes::ShapeRef.new(shape: PlacementStrategies, location_name: "placementStrategy"))
|
650
|
+
RunTaskRequest.add_member(:network_configuration, Shapes::ShapeRef.new(shape: NetworkConfiguration, location_name: "networkConfiguration"))
|
596
651
|
RunTaskRequest.struct_class = Types::RunTaskRequest
|
597
652
|
|
598
653
|
RunTaskResponse.add_member(:tasks, Shapes::ShapeRef.new(shape: Tasks, location_name: "tasks"))
|
@@ -615,6 +670,7 @@ module Aws::ECS
|
|
615
670
|
Service.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createdAt"))
|
616
671
|
Service.add_member(:placement_constraints, Shapes::ShapeRef.new(shape: PlacementConstraints, location_name: "placementConstraints"))
|
617
672
|
Service.add_member(:placement_strategy, Shapes::ShapeRef.new(shape: PlacementStrategies, location_name: "placementStrategy"))
|
673
|
+
Service.add_member(:network_configuration, Shapes::ShapeRef.new(shape: NetworkConfiguration, location_name: "networkConfiguration"))
|
618
674
|
Service.struct_class = Types::Service
|
619
675
|
|
620
676
|
ServiceEvent.add_member(:id, Shapes::ShapeRef.new(shape: String, location_name: "id"))
|
@@ -632,6 +688,7 @@ module Aws::ECS
|
|
632
688
|
StartTaskRequest.add_member(:container_instances, Shapes::ShapeRef.new(shape: StringList, required: true, location_name: "containerInstances"))
|
633
689
|
StartTaskRequest.add_member(:started_by, Shapes::ShapeRef.new(shape: String, location_name: "startedBy"))
|
634
690
|
StartTaskRequest.add_member(:group, Shapes::ShapeRef.new(shape: String, location_name: "group"))
|
691
|
+
StartTaskRequest.add_member(:network_configuration, Shapes::ShapeRef.new(shape: NetworkConfiguration, location_name: "networkConfiguration"))
|
635
692
|
StartTaskRequest.struct_class = Types::StartTaskRequest
|
636
693
|
|
637
694
|
StartTaskResponse.add_member(:tasks, Shapes::ShapeRef.new(shape: Tasks, location_name: "tasks"))
|
@@ -664,6 +721,8 @@ module Aws::ECS
|
|
664
721
|
SubmitTaskStateChangeRequest.add_member(:task, Shapes::ShapeRef.new(shape: String, location_name: "task"))
|
665
722
|
SubmitTaskStateChangeRequest.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "status"))
|
666
723
|
SubmitTaskStateChangeRequest.add_member(:reason, Shapes::ShapeRef.new(shape: String, location_name: "reason"))
|
724
|
+
SubmitTaskStateChangeRequest.add_member(:containers, Shapes::ShapeRef.new(shape: ContainerStateChanges, location_name: "containers"))
|
725
|
+
SubmitTaskStateChangeRequest.add_member(:attachments, Shapes::ShapeRef.new(shape: AttachmentStateChanges, location_name: "attachments"))
|
667
726
|
SubmitTaskStateChangeRequest.struct_class = Types::SubmitTaskStateChangeRequest
|
668
727
|
|
669
728
|
SubmitTaskStateChangeResponse.add_member(:acknowledgment, Shapes::ShapeRef.new(shape: String, location_name: "acknowledgment"))
|
@@ -684,6 +743,7 @@ module Aws::ECS
|
|
684
743
|
Task.add_member(:started_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "startedAt"))
|
685
744
|
Task.add_member(:stopped_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "stoppedAt"))
|
686
745
|
Task.add_member(:group, Shapes::ShapeRef.new(shape: String, location_name: "group"))
|
746
|
+
Task.add_member(:attachments, Shapes::ShapeRef.new(shape: Attachments, location_name: "attachments"))
|
687
747
|
Task.struct_class = Types::Task
|
688
748
|
|
689
749
|
TaskDefinition.add_member(:task_definition_arn, Shapes::ShapeRef.new(shape: String, location_name: "taskDefinitionArn"))
|
@@ -738,6 +798,7 @@ module Aws::ECS
|
|
738
798
|
UpdateServiceRequest.add_member(:desired_count, Shapes::ShapeRef.new(shape: BoxedInteger, location_name: "desiredCount"))
|
739
799
|
UpdateServiceRequest.add_member(:task_definition, Shapes::ShapeRef.new(shape: String, location_name: "taskDefinition"))
|
740
800
|
UpdateServiceRequest.add_member(:deployment_configuration, Shapes::ShapeRef.new(shape: DeploymentConfiguration, location_name: "deploymentConfiguration"))
|
801
|
+
UpdateServiceRequest.add_member(:network_configuration, Shapes::ShapeRef.new(shape: NetworkConfiguration, location_name: "networkConfiguration"))
|
741
802
|
UpdateServiceRequest.struct_class = Types::UpdateServiceRequest
|
742
803
|
|
743
804
|
UpdateServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "service"))
|
data/lib/aws-sdk-ecs/types.rb
CHANGED
@@ -8,6 +8,64 @@
|
|
8
8
|
module Aws::ECS
|
9
9
|
module Types
|
10
10
|
|
11
|
+
# An object representing a container instance or task attachment.
|
12
|
+
#
|
13
|
+
# @!attribute [rw] id
|
14
|
+
# The unique identifier for the attachment.
|
15
|
+
# @return [String]
|
16
|
+
#
|
17
|
+
# @!attribute [rw] type
|
18
|
+
# The type of the attachment, such as an `ElasticNetworkInterface`.
|
19
|
+
# @return [String]
|
20
|
+
#
|
21
|
+
# @!attribute [rw] status
|
22
|
+
# The status of the attachment. Valid values are `PRECREATED`,
|
23
|
+
# `CREATED`, `ATTACHING`, `ATTACHED`, `DETACHING`, `DETACHED`, and
|
24
|
+
# `DELETED`.
|
25
|
+
# @return [String]
|
26
|
+
#
|
27
|
+
# @!attribute [rw] details
|
28
|
+
# Details of the attachment. For Elastic Network Interfaces, this
|
29
|
+
# includes the network interface ID, the MAC address, the subnet ID,
|
30
|
+
# and the private IPv4 address.
|
31
|
+
# @return [Array<Types::KeyValuePair>]
|
32
|
+
#
|
33
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Attachment AWS API Documentation
|
34
|
+
#
|
35
|
+
class Attachment < Struct.new(
|
36
|
+
:id,
|
37
|
+
:type,
|
38
|
+
:status,
|
39
|
+
:details)
|
40
|
+
include Aws::Structure
|
41
|
+
end
|
42
|
+
|
43
|
+
# An object representing a change in state for a task attachment.
|
44
|
+
#
|
45
|
+
# @note When making an API call, you may pass AttachmentStateChange
|
46
|
+
# data as a hash:
|
47
|
+
#
|
48
|
+
# {
|
49
|
+
# attachment_arn: "String", # required
|
50
|
+
# status: "String", # required
|
51
|
+
# }
|
52
|
+
#
|
53
|
+
# @!attribute [rw] attachment_arn
|
54
|
+
# The Amazon Resource Name (ARN) of the attachment.
|
55
|
+
# @return [String]
|
56
|
+
#
|
57
|
+
# @!attribute [rw] status
|
58
|
+
# The status of the attachment.
|
59
|
+
# @return [String]
|
60
|
+
#
|
61
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/AttachmentStateChange AWS API Documentation
|
62
|
+
#
|
63
|
+
class AttachmentStateChange < Struct.new(
|
64
|
+
:attachment_arn,
|
65
|
+
:status)
|
66
|
+
include Aws::Structure
|
67
|
+
end
|
68
|
+
|
11
69
|
# An attribute is a name-value pair associated with an Amazon ECS
|
12
70
|
# object. Attributes enable you to extend the Amazon ECS data model by
|
13
71
|
# adding custom metadata to your resources. For more information, see
|
@@ -59,6 +117,35 @@ module Aws::ECS
|
|
59
117
|
include Aws::Structure
|
60
118
|
end
|
61
119
|
|
120
|
+
# An object representing the subnets and security groups for a task or
|
121
|
+
# service.
|
122
|
+
#
|
123
|
+
# @note When making an API call, you may pass AwsVpcConfiguration
|
124
|
+
# data as a hash:
|
125
|
+
#
|
126
|
+
# {
|
127
|
+
# subnets: ["String"], # required
|
128
|
+
# security_groups: ["String"],
|
129
|
+
# }
|
130
|
+
#
|
131
|
+
# @!attribute [rw] subnets
|
132
|
+
# The subnets associated with the task or service.
|
133
|
+
# @return [Array<String>]
|
134
|
+
#
|
135
|
+
# @!attribute [rw] security_groups
|
136
|
+
# The security groups associated with the task or service. If you do
|
137
|
+
# not specify a security group, the default security group for the VPC
|
138
|
+
# is used.
|
139
|
+
# @return [Array<String>]
|
140
|
+
#
|
141
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/AwsVpcConfiguration AWS API Documentation
|
142
|
+
#
|
143
|
+
class AwsVpcConfiguration < Struct.new(
|
144
|
+
:subnets,
|
145
|
+
:security_groups)
|
146
|
+
include Aws::Structure
|
147
|
+
end
|
148
|
+
|
62
149
|
# A regional grouping of one or more container instances on which you
|
63
150
|
# can run task requests. Each account receives a default cluster the
|
64
151
|
# first time you use the Amazon ECS service, but you may also create
|
@@ -145,6 +232,10 @@ module Aws::ECS
|
|
145
232
|
# The network bindings associated with the container.
|
146
233
|
# @return [Array<Types::NetworkBinding>]
|
147
234
|
#
|
235
|
+
# @!attribute [rw] network_interfaces
|
236
|
+
# The network interfaces associated with the container.
|
237
|
+
# @return [Array<Types::NetworkInterface>]
|
238
|
+
#
|
148
239
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Container AWS API Documentation
|
149
240
|
#
|
150
241
|
class Container < Struct.new(
|
@@ -154,7 +245,8 @@ module Aws::ECS
|
|
154
245
|
:last_status,
|
155
246
|
:exit_code,
|
156
247
|
:reason,
|
157
|
-
:network_bindings
|
248
|
+
:network_bindings,
|
249
|
+
:network_interfaces)
|
158
250
|
include Aws::Structure
|
159
251
|
end
|
160
252
|
|
@@ -904,6 +996,11 @@ module Aws::ECS
|
|
904
996
|
# The Unix timestamp for when the container instance was registered.
|
905
997
|
# @return [Time]
|
906
998
|
#
|
999
|
+
# @!attribute [rw] attachments
|
1000
|
+
# The Elastic Network Interfaces associated with the container
|
1001
|
+
# instance.
|
1002
|
+
# @return [Array<Types::Attachment>]
|
1003
|
+
#
|
907
1004
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ContainerInstance AWS API Documentation
|
908
1005
|
#
|
909
1006
|
class ContainerInstance < Struct.new(
|
@@ -919,7 +1016,8 @@ module Aws::ECS
|
|
919
1016
|
:pending_tasks_count,
|
920
1017
|
:agent_update_status,
|
921
1018
|
:attributes,
|
922
|
-
:registered_at
|
1019
|
+
:registered_at,
|
1020
|
+
:attachments)
|
923
1021
|
include Aws::Structure
|
924
1022
|
end
|
925
1023
|
|
@@ -992,6 +1090,58 @@ module Aws::ECS
|
|
992
1090
|
include Aws::Structure
|
993
1091
|
end
|
994
1092
|
|
1093
|
+
# An object representing a change in state for a container.
|
1094
|
+
#
|
1095
|
+
# @note When making an API call, you may pass ContainerStateChange
|
1096
|
+
# data as a hash:
|
1097
|
+
#
|
1098
|
+
# {
|
1099
|
+
# container_name: "String",
|
1100
|
+
# exit_code: 1,
|
1101
|
+
# network_bindings: [
|
1102
|
+
# {
|
1103
|
+
# bind_ip: "String",
|
1104
|
+
# container_port: 1,
|
1105
|
+
# host_port: 1,
|
1106
|
+
# protocol: "tcp", # accepts tcp, udp
|
1107
|
+
# },
|
1108
|
+
# ],
|
1109
|
+
# reason: "String",
|
1110
|
+
# status: "String",
|
1111
|
+
# }
|
1112
|
+
#
|
1113
|
+
# @!attribute [rw] container_name
|
1114
|
+
# The name of the container.
|
1115
|
+
# @return [String]
|
1116
|
+
#
|
1117
|
+
# @!attribute [rw] exit_code
|
1118
|
+
# The exit code for the container, if the state change is a result of
|
1119
|
+
# the container exiting.
|
1120
|
+
# @return [Integer]
|
1121
|
+
#
|
1122
|
+
# @!attribute [rw] network_bindings
|
1123
|
+
# Any network bindings associated with the container.
|
1124
|
+
# @return [Array<Types::NetworkBinding>]
|
1125
|
+
#
|
1126
|
+
# @!attribute [rw] reason
|
1127
|
+
# The reason for the state change.
|
1128
|
+
# @return [String]
|
1129
|
+
#
|
1130
|
+
# @!attribute [rw] status
|
1131
|
+
# The status of the container.
|
1132
|
+
# @return [String]
|
1133
|
+
#
|
1134
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ContainerStateChange AWS API Documentation
|
1135
|
+
#
|
1136
|
+
class ContainerStateChange < Struct.new(
|
1137
|
+
:container_name,
|
1138
|
+
:exit_code,
|
1139
|
+
:network_bindings,
|
1140
|
+
:reason,
|
1141
|
+
:status)
|
1142
|
+
include Aws::Structure
|
1143
|
+
end
|
1144
|
+
|
995
1145
|
# @note When making an API call, you may pass CreateClusterRequest
|
996
1146
|
# data as a hash:
|
997
1147
|
#
|
@@ -1058,6 +1208,12 @@ module Aws::ECS
|
|
1058
1208
|
# field: "String",
|
1059
1209
|
# },
|
1060
1210
|
# ],
|
1211
|
+
# network_configuration: {
|
1212
|
+
# awsvpc_configuration: {
|
1213
|
+
# subnets: ["String"], # required
|
1214
|
+
# security_groups: ["String"],
|
1215
|
+
# },
|
1216
|
+
# },
|
1061
1217
|
# }
|
1062
1218
|
#
|
1063
1219
|
# @!attribute [rw] cluster
|
@@ -1117,21 +1273,31 @@ module Aws::ECS
|
|
1117
1273
|
# @!attribute [rw] role
|
1118
1274
|
# The name or full Amazon Resource Name (ARN) of the IAM role that
|
1119
1275
|
# allows Amazon ECS to make calls to your load balancer on your
|
1120
|
-
# behalf. This parameter is
|
1121
|
-
# with your service
|
1276
|
+
# behalf. This parameter is only permitted if you are using a load
|
1277
|
+
# balancer with your service and your task definition does not use the
|
1278
|
+
# `awsvpc` network mode. If you specify the `role` parameter, you must
|
1122
1279
|
# also specify a load balancer object with the `loadBalancers`
|
1123
1280
|
# parameter.
|
1124
1281
|
#
|
1282
|
+
# If your account has already created the Amazon ECS service-linked
|
1283
|
+
# role, that role is used by default for your service unless you
|
1284
|
+
# specify a role here. The service-linked role is required if your
|
1285
|
+
# task definition uses the `awsvpc` network mode, in which case you
|
1286
|
+
# should not specify a role here. For more information, see [Using
|
1287
|
+
# Service-Linked Roles for Amazon ECS][1] in the *Amazon EC2 Container
|
1288
|
+
# Service Developer Guide*.
|
1289
|
+
#
|
1125
1290
|
# If your specified role has a path other than `/`, then you must
|
1126
1291
|
# either specify the full role ARN (this is recommended) or prefix the
|
1127
1292
|
# role name with the path. For example, if a role with the name `bar`
|
1128
1293
|
# has a path of `/foo/` then you would specify `/foo/bar` as the role
|
1129
|
-
# name. For more information, see [Friendly Names and Paths][
|
1294
|
+
# name. For more information, see [Friendly Names and Paths][2] in the
|
1130
1295
|
# *IAM User Guide*.
|
1131
1296
|
#
|
1132
1297
|
#
|
1133
1298
|
#
|
1134
|
-
# [1]: http://docs.aws.amazon.com/
|
1299
|
+
# [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguideusing-service-linked-roles.html
|
1300
|
+
# [2]: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names
|
1135
1301
|
# @return [String]
|
1136
1302
|
#
|
1137
1303
|
# @!attribute [rw] deployment_configuration
|
@@ -1152,6 +1318,19 @@ module Aws::ECS
|
|
1152
1318
|
# can specify a maximum of 5 strategy rules per service.
|
1153
1319
|
# @return [Array<Types::PlacementStrategy>]
|
1154
1320
|
#
|
1321
|
+
# @!attribute [rw] network_configuration
|
1322
|
+
# The network configuration for the service. This parameter is
|
1323
|
+
# required for task definitions that use the `awsvpc` network mode to
|
1324
|
+
# receive their own Elastic Network Interface, and it is not supported
|
1325
|
+
# for other network modes. For more information, see [Task
|
1326
|
+
# Networking][1] in the *Amazon EC2 Container Service Developer
|
1327
|
+
# Guide*.
|
1328
|
+
#
|
1329
|
+
#
|
1330
|
+
#
|
1331
|
+
# [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguidetask-networking.html
|
1332
|
+
# @return [Types::NetworkConfiguration]
|
1333
|
+
#
|
1155
1334
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateServiceRequest AWS API Documentation
|
1156
1335
|
#
|
1157
1336
|
class CreateServiceRequest < Struct.new(
|
@@ -1164,7 +1343,8 @@ module Aws::ECS
|
|
1164
1343
|
:role,
|
1165
1344
|
:deployment_configuration,
|
1166
1345
|
:placement_constraints,
|
1167
|
-
:placement_strategy
|
1346
|
+
:placement_strategy,
|
1347
|
+
:network_configuration)
|
1168
1348
|
include Aws::Structure
|
1169
1349
|
end
|
1170
1350
|
|
@@ -1337,6 +1517,12 @@ module Aws::ECS
|
|
1337
1517
|
# The Unix timestamp for when the service was last updated.
|
1338
1518
|
# @return [Time]
|
1339
1519
|
#
|
1520
|
+
# @!attribute [rw] network_configuration
|
1521
|
+
# The VPC subnet and security group configuration for tasks that
|
1522
|
+
# receive their own Elastic Network Interface by using the `awsvpc`
|
1523
|
+
# networking mode.
|
1524
|
+
# @return [Types::NetworkConfiguration]
|
1525
|
+
#
|
1340
1526
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Deployment AWS API Documentation
|
1341
1527
|
#
|
1342
1528
|
class Deployment < Struct.new(
|
@@ -1347,7 +1533,8 @@ module Aws::ECS
|
|
1347
1533
|
:pending_count,
|
1348
1534
|
:running_count,
|
1349
1535
|
:created_at,
|
1350
|
-
:updated_at
|
1536
|
+
:updated_at,
|
1537
|
+
:network_configuration)
|
1351
1538
|
include Aws::Structure
|
1352
1539
|
end
|
1353
1540
|
|
@@ -2788,6 +2975,54 @@ module Aws::ECS
|
|
2788
2975
|
include Aws::Structure
|
2789
2976
|
end
|
2790
2977
|
|
2978
|
+
# An object representing the network configuration for a task or
|
2979
|
+
# service.
|
2980
|
+
#
|
2981
|
+
# @note When making an API call, you may pass NetworkConfiguration
|
2982
|
+
# data as a hash:
|
2983
|
+
#
|
2984
|
+
# {
|
2985
|
+
# awsvpc_configuration: {
|
2986
|
+
# subnets: ["String"], # required
|
2987
|
+
# security_groups: ["String"],
|
2988
|
+
# },
|
2989
|
+
# }
|
2990
|
+
#
|
2991
|
+
# @!attribute [rw] awsvpc_configuration
|
2992
|
+
# The VPC subnets and security groups associated with a task.
|
2993
|
+
# @return [Types::AwsVpcConfiguration]
|
2994
|
+
#
|
2995
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/NetworkConfiguration AWS API Documentation
|
2996
|
+
#
|
2997
|
+
class NetworkConfiguration < Struct.new(
|
2998
|
+
:awsvpc_configuration)
|
2999
|
+
include Aws::Structure
|
3000
|
+
end
|
3001
|
+
|
3002
|
+
# An object representing the Elastic Network Interface for tasks that
|
3003
|
+
# use the `awsvpc` network mode.
|
3004
|
+
#
|
3005
|
+
# @!attribute [rw] attachment_id
|
3006
|
+
# The attachment ID for the network interface.
|
3007
|
+
# @return [String]
|
3008
|
+
#
|
3009
|
+
# @!attribute [rw] private_ipv_4_address
|
3010
|
+
# The private IPv4 address for the network interface.
|
3011
|
+
# @return [String]
|
3012
|
+
#
|
3013
|
+
# @!attribute [rw] ipv6_address
|
3014
|
+
# The private IPv6 address for the network interface.
|
3015
|
+
# @return [String]
|
3016
|
+
#
|
3017
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/NetworkInterface AWS API Documentation
|
3018
|
+
#
|
3019
|
+
class NetworkInterface < Struct.new(
|
3020
|
+
:attachment_id,
|
3021
|
+
:private_ipv_4_address,
|
3022
|
+
:ipv6_address)
|
3023
|
+
include Aws::Structure
|
3024
|
+
end
|
3025
|
+
|
2791
3026
|
# An object representing a constraint on task placement. For more
|
2792
3027
|
# information, see [Task Placement Constraints][1] in the *Amazon EC2
|
2793
3028
|
# Container Service Developer Guide*.
|
@@ -3098,7 +3333,7 @@ module Aws::ECS
|
|
3098
3333
|
# {
|
3099
3334
|
# family: "String", # required
|
3100
3335
|
# task_role_arn: "String",
|
3101
|
-
# network_mode: "bridge", # accepts bridge, host, none
|
3336
|
+
# network_mode: "bridge", # accepts bridge, host, awsvpc, none
|
3102
3337
|
# container_definitions: [ # required
|
3103
3338
|
# {
|
3104
3339
|
# name: "String",
|
@@ -3221,25 +3456,37 @@ module Aws::ECS
|
|
3221
3456
|
#
|
3222
3457
|
# @!attribute [rw] network_mode
|
3223
3458
|
# The Docker networking mode to use for the containers in the task.
|
3224
|
-
# The valid values are `none`, `bridge`, and `host`.
|
3225
|
-
#
|
3226
|
-
#
|
3227
|
-
# set to `none`, you cannot specify port mappings in your container
|
3459
|
+
# The valid values are `none`, `bridge`, `awsvpc`, and `host`. The
|
3460
|
+
# default Docker network mode is `bridge`. If the network mode is set
|
3461
|
+
# to `none`, you cannot specify port mappings in your container
|
3228
3462
|
# definitions, and the task's containers do not have external
|
3229
|
-
# connectivity. The `host` network
|
3230
|
-
# performance for containers because they use the
|
3231
|
-
# instead of the virtualized network stack provided
|
3232
|
-
#
|
3233
|
-
#
|
3234
|
-
#
|
3235
|
-
#
|
3463
|
+
# connectivity. The `host` and `awsvpc` network modes offer the
|
3464
|
+
# highest networking performance for containers because they use the
|
3465
|
+
# EC2 network stack instead of the virtualized network stack provided
|
3466
|
+
# by the `bridge` mode.
|
3467
|
+
#
|
3468
|
+
# With the `host` and `awsvpc` network modes, exposed container ports
|
3469
|
+
# are mapped directly to the corresponding host port (for the `host`
|
3470
|
+
# network mode) or the attached ENI port (for the `awsvpc` network
|
3471
|
+
# mode), so you cannot take advantage of dynamic host port mappings.
|
3472
|
+
#
|
3473
|
+
# If the network mode is `awsvpc`, the task is allocated an Elastic
|
3474
|
+
# Network Interface, and you must specify a NetworkConfiguration when
|
3475
|
+
# you create a service or run a task with the task definition. For
|
3476
|
+
# more information, see [Task Networking][1] in the *Amazon EC2
|
3477
|
+
# Container Service Developer Guide*.
|
3236
3478
|
#
|
3237
|
-
#
|
3479
|
+
# If the network mode is `host`, you can not run multiple
|
3480
|
+
# instantiations of the same task on a single container instance when
|
3481
|
+
# port mappings are used.
|
3482
|
+
#
|
3483
|
+
# For more information, see [Network settings][2] in the *Docker run
|
3238
3484
|
# reference*.
|
3239
3485
|
#
|
3240
3486
|
#
|
3241
3487
|
#
|
3242
|
-
# [1]:
|
3488
|
+
# [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguidetask-networking.html
|
3489
|
+
# [2]: https://docs.docker.com/engine/reference/run/#network-settings
|
3243
3490
|
# @return [String]
|
3244
3491
|
#
|
3245
3492
|
# @!attribute [rw] container_definitions
|
@@ -3377,6 +3624,12 @@ module Aws::ECS
|
|
3377
3624
|
# field: "String",
|
3378
3625
|
# },
|
3379
3626
|
# ],
|
3627
|
+
# network_configuration: {
|
3628
|
+
# awsvpc_configuration: {
|
3629
|
+
# subnets: ["String"], # required
|
3630
|
+
# security_groups: ["String"],
|
3631
|
+
# },
|
3632
|
+
# },
|
3380
3633
|
# }
|
3381
3634
|
#
|
3382
3635
|
# @!attribute [rw] cluster
|
@@ -3442,6 +3695,18 @@ module Aws::ECS
|
|
3442
3695
|
# a maximum of 5 strategy rules per task.
|
3443
3696
|
# @return [Array<Types::PlacementStrategy>]
|
3444
3697
|
#
|
3698
|
+
# @!attribute [rw] network_configuration
|
3699
|
+
# The network configuration for the task. This parameter is required
|
3700
|
+
# for task definitions that use the `awsvpc` network mode to receive
|
3701
|
+
# their own Elastic Network Interface, and it is not supported for
|
3702
|
+
# other network modes. For more information, see [Task Networking][1]
|
3703
|
+
# in the *Amazon EC2 Container Service Developer Guide*.
|
3704
|
+
#
|
3705
|
+
#
|
3706
|
+
#
|
3707
|
+
# [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguidetask-networking.html
|
3708
|
+
# @return [Types::NetworkConfiguration]
|
3709
|
+
#
|
3445
3710
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/RunTaskRequest AWS API Documentation
|
3446
3711
|
#
|
3447
3712
|
class RunTaskRequest < Struct.new(
|
@@ -3452,7 +3717,8 @@ module Aws::ECS
|
|
3452
3717
|
:started_by,
|
3453
3718
|
:group,
|
3454
3719
|
:placement_constraints,
|
3455
|
-
:placement_strategy
|
3720
|
+
:placement_strategy,
|
3721
|
+
:network_configuration)
|
3456
3722
|
include Aws::Structure
|
3457
3723
|
end
|
3458
3724
|
|
@@ -3563,6 +3829,12 @@ module Aws::ECS
|
|
3563
3829
|
# placed.
|
3564
3830
|
# @return [Array<Types::PlacementStrategy>]
|
3565
3831
|
#
|
3832
|
+
# @!attribute [rw] network_configuration
|
3833
|
+
# The VPC subnet and security group configuration for tasks that
|
3834
|
+
# receive their own Elastic Network Interface by using the `awsvpc`
|
3835
|
+
# networking mode.
|
3836
|
+
# @return [Types::NetworkConfiguration]
|
3837
|
+
#
|
3566
3838
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Service AWS API Documentation
|
3567
3839
|
#
|
3568
3840
|
class Service < Struct.new(
|
@@ -3581,7 +3853,8 @@ module Aws::ECS
|
|
3581
3853
|
:events,
|
3582
3854
|
:created_at,
|
3583
3855
|
:placement_constraints,
|
3584
|
-
:placement_strategy
|
3856
|
+
:placement_strategy,
|
3857
|
+
:network_configuration)
|
3585
3858
|
include Aws::Structure
|
3586
3859
|
end
|
3587
3860
|
|
@@ -3635,6 +3908,12 @@ module Aws::ECS
|
|
3635
3908
|
# container_instances: ["String"], # required
|
3636
3909
|
# started_by: "String",
|
3637
3910
|
# group: "String",
|
3911
|
+
# network_configuration: {
|
3912
|
+
# awsvpc_configuration: {
|
3913
|
+
# subnets: ["String"], # required
|
3914
|
+
# security_groups: ["String"],
|
3915
|
+
# },
|
3916
|
+
# },
|
3638
3917
|
# }
|
3639
3918
|
#
|
3640
3919
|
# @!attribute [rw] cluster
|
@@ -3690,6 +3969,12 @@ module Aws::ECS
|
|
3690
3969
|
# family:my-family-name).
|
3691
3970
|
# @return [String]
|
3692
3971
|
#
|
3972
|
+
# @!attribute [rw] network_configuration
|
3973
|
+
# The VPC subnet and security group configuration for tasks that
|
3974
|
+
# receive their own Elastic Network Interface by using the `awsvpc`
|
3975
|
+
# networking mode.
|
3976
|
+
# @return [Types::NetworkConfiguration]
|
3977
|
+
#
|
3693
3978
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/StartTaskRequest AWS API Documentation
|
3694
3979
|
#
|
3695
3980
|
class StartTaskRequest < Struct.new(
|
@@ -3698,7 +3983,8 @@ module Aws::ECS
|
|
3698
3983
|
:overrides,
|
3699
3984
|
:container_instances,
|
3700
3985
|
:started_by,
|
3701
|
-
:group
|
3986
|
+
:group,
|
3987
|
+
:network_configuration)
|
3702
3988
|
include Aws::Structure
|
3703
3989
|
end
|
3704
3990
|
|
@@ -3850,6 +4136,28 @@ module Aws::ECS
|
|
3850
4136
|
# task: "String",
|
3851
4137
|
# status: "String",
|
3852
4138
|
# reason: "String",
|
4139
|
+
# containers: [
|
4140
|
+
# {
|
4141
|
+
# container_name: "String",
|
4142
|
+
# exit_code: 1,
|
4143
|
+
# network_bindings: [
|
4144
|
+
# {
|
4145
|
+
# bind_ip: "String",
|
4146
|
+
# container_port: 1,
|
4147
|
+
# host_port: 1,
|
4148
|
+
# protocol: "tcp", # accepts tcp, udp
|
4149
|
+
# },
|
4150
|
+
# ],
|
4151
|
+
# reason: "String",
|
4152
|
+
# status: "String",
|
4153
|
+
# },
|
4154
|
+
# ],
|
4155
|
+
# attachments: [
|
4156
|
+
# {
|
4157
|
+
# attachment_arn: "String", # required
|
4158
|
+
# status: "String", # required
|
4159
|
+
# },
|
4160
|
+
# ],
|
3853
4161
|
# }
|
3854
4162
|
#
|
3855
4163
|
# @!attribute [rw] cluster
|
@@ -3870,13 +4178,23 @@ module Aws::ECS
|
|
3870
4178
|
# The reason for the state change request.
|
3871
4179
|
# @return [String]
|
3872
4180
|
#
|
4181
|
+
# @!attribute [rw] containers
|
4182
|
+
# Any containers associated with the state change request.
|
4183
|
+
# @return [Array<Types::ContainerStateChange>]
|
4184
|
+
#
|
4185
|
+
# @!attribute [rw] attachments
|
4186
|
+
# Any attachments associated with the state change request.
|
4187
|
+
# @return [Array<Types::AttachmentStateChange>]
|
4188
|
+
#
|
3873
4189
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/SubmitTaskStateChangeRequest AWS API Documentation
|
3874
4190
|
#
|
3875
4191
|
class SubmitTaskStateChangeRequest < Struct.new(
|
3876
4192
|
:cluster,
|
3877
4193
|
:task,
|
3878
4194
|
:status,
|
3879
|
-
:reason
|
4195
|
+
:reason,
|
4196
|
+
:containers,
|
4197
|
+
:attachments)
|
3880
4198
|
include Aws::Structure
|
3881
4199
|
end
|
3882
4200
|
|
@@ -3966,6 +4284,11 @@ module Aws::ECS
|
|
3966
4284
|
# The name of the task group associated with the task.
|
3967
4285
|
# @return [String]
|
3968
4286
|
#
|
4287
|
+
# @!attribute [rw] attachments
|
4288
|
+
# The Elastic Network Adapter associated with the task if the task
|
4289
|
+
# uses the `awsvpc` network mode.
|
4290
|
+
# @return [Array<Types::Attachment>]
|
4291
|
+
#
|
3969
4292
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Task AWS API Documentation
|
3970
4293
|
#
|
3971
4294
|
class Task < Struct.new(
|
@@ -3983,7 +4306,8 @@ module Aws::ECS
|
|
3983
4306
|
:created_at,
|
3984
4307
|
:started_at,
|
3985
4308
|
:stopped_at,
|
3986
|
-
:group
|
4309
|
+
:group,
|
4310
|
+
:attachments)
|
3987
4311
|
include Aws::Structure
|
3988
4312
|
end
|
3989
4313
|
|
@@ -4017,13 +4341,15 @@ module Aws::ECS
|
|
4017
4341
|
#
|
4018
4342
|
# @!attribute [rw] network_mode
|
4019
4343
|
# The Docker networking mode to use for the containers in the task.
|
4020
|
-
# The valid values are `none`, `bridge`, and `host`.
|
4344
|
+
# The valid values are `none`, `bridge`, `awsvpc`, and `host`.
|
4021
4345
|
#
|
4022
4346
|
# If the network mode is `none`, the containers do not have external
|
4023
|
-
# connectivity. The default Docker network mode is `bridge`.
|
4024
|
-
#
|
4025
|
-
#
|
4026
|
-
#
|
4347
|
+
# connectivity. The default Docker network mode is `bridge`. If the
|
4348
|
+
# network mode is `awsvpc`, the task is allocated an Elastic Network
|
4349
|
+
# Interface. The `host` and `awsvpc` network modes offer the highest
|
4350
|
+
# networking performance for containers because they use the EC2
|
4351
|
+
# network stack instead of the virtualized network stack provided by
|
4352
|
+
# the `bridge` mode.
|
4027
4353
|
#
|
4028
4354
|
# For more information, see [Network settings][1] in the *Docker run
|
4029
4355
|
# reference*.
|
@@ -4297,6 +4623,12 @@ module Aws::ECS
|
|
4297
4623
|
# maximum_percent: 1,
|
4298
4624
|
# minimum_healthy_percent: 1,
|
4299
4625
|
# },
|
4626
|
+
# network_configuration: {
|
4627
|
+
# awsvpc_configuration: {
|
4628
|
+
# subnets: ["String"], # required
|
4629
|
+
# security_groups: ["String"],
|
4630
|
+
# },
|
4631
|
+
# },
|
4300
4632
|
# }
|
4301
4633
|
#
|
4302
4634
|
# @!attribute [rw] cluster
|
@@ -4329,6 +4661,27 @@ module Aws::ECS
|
|
4329
4661
|
# tasks.
|
4330
4662
|
# @return [Types::DeploymentConfiguration]
|
4331
4663
|
#
|
4664
|
+
# @!attribute [rw] network_configuration
|
4665
|
+
# The network configuration for the service. This parameter is
|
4666
|
+
# required for task definitions that use the `awsvpc` network mode to
|
4667
|
+
# receive their own Elastic Network Interface, and it is not supported
|
4668
|
+
# for other network modes. For more information, see [Task
|
4669
|
+
# Networking][1] in the *Amazon EC2 Container Service Developer
|
4670
|
+
# Guide*.
|
4671
|
+
#
|
4672
|
+
# <note markdown="1"> Updating a service to add a subnet to a list of existing subnets
|
4673
|
+
# does not trigger a service deployment. For example, if your network
|
4674
|
+
# configuration change is to keep the existing subnets and simply add
|
4675
|
+
# another subnet to the network configuration, this does not trigger a
|
4676
|
+
# new service deployment.
|
4677
|
+
#
|
4678
|
+
# </note>
|
4679
|
+
#
|
4680
|
+
#
|
4681
|
+
#
|
4682
|
+
# [1]: http://docs.aws.amazon.com/AmazonECS/latest/developerguidetask-networking.html
|
4683
|
+
# @return [Types::NetworkConfiguration]
|
4684
|
+
#
|
4332
4685
|
# @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateServiceRequest AWS API Documentation
|
4333
4686
|
#
|
4334
4687
|
class UpdateServiceRequest < Struct.new(
|
@@ -4336,7 +4689,8 @@ module Aws::ECS
|
|
4336
4689
|
:service,
|
4337
4690
|
:desired_count,
|
4338
4691
|
:task_definition,
|
4339
|
-
:deployment_configuration
|
4692
|
+
:deployment_configuration,
|
4693
|
+
:network_configuration)
|
4340
4694
|
include Aws::Structure
|
4341
4695
|
end
|
4342
4696
|
|