aws-sdk-ecs 1.3.0 → 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
|