aws-sdk-appmesh 1.1.0 → 1.2.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.
@@ -8,427 +8,976 @@
8
8
  module Aws::AppMesh
9
9
  module Types
10
10
 
11
+ # An object representing a virtual router listener.
12
+ #
13
+ # @note When making an API call, you may pass VirtualRouterListener
14
+ # data as a hash:
15
+ #
16
+ # {
17
+ # port_mapping: { # required
18
+ # port: 1, # required
19
+ # protocol: "http", # required, accepts http, tcp
20
+ # },
21
+ # }
22
+ #
23
+ # @!attribute [rw] port_mapping
24
+ # An object representing a virtual node or virtual router listener
25
+ # port mapping.
26
+ # @return [Types::PortMapping]
27
+ #
28
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterListener AWS API Documentation
29
+ #
30
+ class VirtualRouterListener < Struct.new(
31
+ :port_mapping)
32
+ include Aws::Structure
33
+ end
34
+
35
+ # @note When making an API call, you may pass UpdateVirtualNodeInput
36
+ # data as a hash:
37
+ #
38
+ # {
39
+ # client_token: "String",
40
+ # mesh_name: "ResourceName", # required
41
+ # spec: { # required
42
+ # backends: [
43
+ # {
44
+ # virtual_service: {
45
+ # virtual_service_name: "ServiceName", # required
46
+ # },
47
+ # },
48
+ # ],
49
+ # listeners: [
50
+ # {
51
+ # health_check: {
52
+ # healthy_threshold: 1, # required
53
+ # interval_millis: 1, # required
54
+ # path: "String",
55
+ # port: 1,
56
+ # protocol: "http", # required, accepts http, tcp
57
+ # timeout_millis: 1, # required
58
+ # unhealthy_threshold: 1, # required
59
+ # },
60
+ # port_mapping: { # required
61
+ # port: 1, # required
62
+ # protocol: "http", # required, accepts http, tcp
63
+ # },
64
+ # },
65
+ # ],
66
+ # service_discovery: {
67
+ # dns: {
68
+ # hostname: "Hostname", # required
69
+ # },
70
+ # },
71
+ # },
72
+ # virtual_node_name: "ResourceName", # required
73
+ # }
74
+ #
75
+ # @!attribute [rw] client_token
76
+ # Unique, case-sensitive identifier that you provide to ensure the
77
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
78
+ # underscores are allowed.
79
+ #
80
+ # **A suitable default value is auto-generated.** You should normally
81
+ # not need to pass this option.
82
+ # @return [String]
83
+ #
84
+ # @!attribute [rw] mesh_name
85
+ # The name of the service mesh that the virtual node resides in.
86
+ # @return [String]
87
+ #
88
+ # @!attribute [rw] spec
89
+ # The new virtual node specification to apply. This overwrites the
90
+ # existing data.
91
+ # @return [Types::VirtualNodeSpec]
92
+ #
93
+ # @!attribute [rw] virtual_node_name
94
+ # The name of the virtual node to update.
95
+ # @return [String]
96
+ #
97
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNodeInput AWS API Documentation
98
+ #
99
+ class UpdateVirtualNodeInput < Struct.new(
100
+ :client_token,
101
+ :mesh_name,
102
+ :spec,
103
+ :virtual_node_name)
104
+ include Aws::Structure
105
+ end
106
+
107
+ # @note When making an API call, you may pass DeleteMeshInput
108
+ # data as a hash:
109
+ #
110
+ # {
111
+ # mesh_name: "ResourceName", # required
112
+ # }
113
+ #
114
+ # @!attribute [rw] mesh_name
115
+ # The name of the service mesh to delete.
116
+ # @return [String]
117
+ #
118
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMeshInput AWS API Documentation
119
+ #
120
+ class DeleteMeshInput < Struct.new(
121
+ :mesh_name)
122
+ include Aws::Structure
123
+ end
124
+
125
+ # @note When making an API call, you may pass CreateVirtualServiceInput
126
+ # data as a hash:
127
+ #
128
+ # {
129
+ # client_token: "String",
130
+ # mesh_name: "ResourceName", # required
131
+ # spec: { # required
132
+ # provider: {
133
+ # virtual_node: {
134
+ # virtual_node_name: "ResourceName", # required
135
+ # },
136
+ # virtual_router: {
137
+ # virtual_router_name: "ResourceName", # required
138
+ # },
139
+ # },
140
+ # },
141
+ # virtual_service_name: "ServiceName", # required
142
+ # }
143
+ #
144
+ # @!attribute [rw] client_token
145
+ # Unique, case-sensitive identifier that you provide to ensure the
146
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
147
+ # underscores are allowed.
148
+ #
149
+ # **A suitable default value is auto-generated.** You should normally
150
+ # not need to pass this option.
151
+ # @return [String]
152
+ #
153
+ # @!attribute [rw] mesh_name
154
+ # The name of the service mesh in which to create the virtual service.
155
+ # @return [String]
156
+ #
157
+ # @!attribute [rw] spec
158
+ # The virtual service specification to apply.
159
+ # @return [Types::VirtualServiceSpec]
160
+ #
161
+ # @!attribute [rw] virtual_service_name
162
+ # The name to use for the virtual service.
163
+ # @return [String]
164
+ #
165
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualServiceInput AWS API Documentation
166
+ #
167
+ class CreateVirtualServiceInput < Struct.new(
168
+ :client_token,
169
+ :mesh_name,
170
+ :spec,
171
+ :virtual_service_name)
172
+ include Aws::Structure
173
+ end
174
+
175
+ # @note When making an API call, you may pass UpdateVirtualRouterInput
176
+ # data as a hash:
177
+ #
178
+ # {
179
+ # client_token: "String",
180
+ # mesh_name: "ResourceName", # required
181
+ # spec: { # required
182
+ # listeners: [ # required
183
+ # {
184
+ # port_mapping: { # required
185
+ # port: 1, # required
186
+ # protocol: "http", # required, accepts http, tcp
187
+ # },
188
+ # },
189
+ # ],
190
+ # },
191
+ # virtual_router_name: "ResourceName", # required
192
+ # }
193
+ #
194
+ # @!attribute [rw] client_token
195
+ # Unique, case-sensitive identifier that you provide to ensure the
196
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
197
+ # underscores are allowed.
198
+ #
199
+ # **A suitable default value is auto-generated.** You should normally
200
+ # not need to pass this option.
201
+ # @return [String]
202
+ #
203
+ # @!attribute [rw] mesh_name
204
+ # The name of the service mesh that the virtual router resides in.
205
+ # @return [String]
206
+ #
207
+ # @!attribute [rw] spec
208
+ # The new virtual router specification to apply. This overwrites the
209
+ # existing data.
210
+ # @return [Types::VirtualRouterSpec]
211
+ #
212
+ # @!attribute [rw] virtual_router_name
213
+ # The name of the virtual router to update.
214
+ # @return [String]
215
+ #
216
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualRouterInput AWS API Documentation
217
+ #
218
+ class UpdateVirtualRouterInput < Struct.new(
219
+ :client_token,
220
+ :mesh_name,
221
+ :spec,
222
+ :virtual_router_name)
223
+ include Aws::Structure
224
+ end
225
+
226
+ # @!attribute [rw] virtual_node
227
+ # The full description of your virtual node following the create call.
228
+ # @return [Types::VirtualNodeData]
229
+ #
230
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualNodeOutput AWS API Documentation
231
+ #
232
+ class CreateVirtualNodeOutput < Struct.new(
233
+ :virtual_node)
234
+ include Aws::Structure
235
+ end
236
+
237
+ # @!attribute [rw] virtual_router
238
+ # A full description of the virtual router that was updated.
239
+ # @return [Types::VirtualRouterData]
240
+ #
241
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualRouterOutput AWS API Documentation
242
+ #
243
+ class UpdateVirtualRouterOutput < Struct.new(
244
+ :virtual_router)
245
+ include Aws::Structure
246
+ end
247
+
11
248
  # @!attribute [rw] mesh
12
- # The service mesh that was deleted.
249
+ # The full description of your service mesh.
13
250
  # @return [Types::MeshData]
14
251
  #
15
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteMeshOutput AWS API Documentation
252
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMeshOutput AWS API Documentation
16
253
  #
17
- class DeleteMeshOutput < Struct.new(
254
+ class DescribeMeshOutput < Struct.new(
18
255
  :mesh)
19
256
  include Aws::Structure
20
257
  end
21
258
 
22
- # @!attribute [rw] virtual_router
23
- # A full description of the virtual router that was updated.
24
- # @return [Types::VirtualRouterData]
259
+ # @note When making an API call, you may pass DeleteVirtualRouterInput
260
+ # data as a hash:
261
+ #
262
+ # {
263
+ # mesh_name: "ResourceName", # required
264
+ # virtual_router_name: "ResourceName", # required
265
+ # }
266
+ #
267
+ # @!attribute [rw] mesh_name
268
+ # The name of the service mesh to delete the virtual router in.
269
+ # @return [String]
270
+ #
271
+ # @!attribute [rw] virtual_router_name
272
+ # The name of the virtual router to delete.
273
+ # @return [String]
274
+ #
275
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouterInput AWS API Documentation
276
+ #
277
+ class DeleteVirtualRouterInput < Struct.new(
278
+ :mesh_name,
279
+ :virtual_router_name)
280
+ include Aws::Structure
281
+ end
282
+
283
+ # @!attribute [rw] next_token
284
+ # The `nextToken` value to include in a future `ListVirtualRouters`
285
+ # request. When the results of a `ListVirtualRouters` request exceed
286
+ # `limit`, you can use this value to retrieve the next page of
287
+ # results. This value is `null` when there are no more results to
288
+ # return.
289
+ # @return [String]
290
+ #
291
+ # @!attribute [rw] virtual_routers
292
+ # The list of existing virtual routers for the specified service mesh.
293
+ # @return [Array<Types::VirtualRouterRef>]
294
+ #
295
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRoutersOutput AWS API Documentation
296
+ #
297
+ class ListVirtualRoutersOutput < Struct.new(
298
+ :next_token,
299
+ :virtual_routers)
300
+ include Aws::Structure
301
+ end
302
+
303
+ # @note When making an API call, you may pass DescribeRouteInput
304
+ # data as a hash:
305
+ #
306
+ # {
307
+ # mesh_name: "ResourceName", # required
308
+ # route_name: "ResourceName", # required
309
+ # virtual_router_name: "ResourceName", # required
310
+ # }
311
+ #
312
+ # @!attribute [rw] mesh_name
313
+ # The name of the service mesh that the route resides in.
314
+ # @return [String]
315
+ #
316
+ # @!attribute [rw] route_name
317
+ # The name of the route to describe.
318
+ # @return [String]
319
+ #
320
+ # @!attribute [rw] virtual_router_name
321
+ # The name of the virtual router that the route is associated with.
322
+ # @return [String]
323
+ #
324
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeRouteInput AWS API Documentation
325
+ #
326
+ class DescribeRouteInput < Struct.new(
327
+ :mesh_name,
328
+ :route_name,
329
+ :virtual_router_name)
330
+ include Aws::Structure
331
+ end
332
+
333
+ # @!attribute [rw] route
334
+ # The route that was deleted.
335
+ # @return [Types::RouteData]
336
+ #
337
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteRouteOutput AWS API Documentation
338
+ #
339
+ class DeleteRouteOutput < Struct.new(
340
+ :route)
341
+ include Aws::Structure
342
+ end
343
+
344
+ # An object representing metadata for a resource.
345
+ #
346
+ # @!attribute [rw] arn
347
+ # The full Amazon Resource Name (ARN) for the resource.
348
+ #
349
+ # <note markdown="1"> After you create a virtual node, set this value (either the full ARN
350
+ # or the truncated resource name, for example,
351
+ # `mesh/default/virtualNode/simpleapp`, as the
352
+ # `APPMESH_VIRTUAL_NODE_NAME` environment variable for your task
353
+ # group's Envoy proxy container in your task definition or pod spec.
354
+ # This is then mapped to the `node.id` and `node.cluster` Envoy
355
+ # parameters.
356
+ #
357
+ # If you require your Envoy stats or tracing to use a different name,
358
+ # you can override the `node.cluster` value that is set by
359
+ # `APPMESH_VIRTUAL_NODE_NAME` with the `APPMESH_VIRTUAL_NODE_CLUSTER`
360
+ # environment variable.
361
+ #
362
+ # </note>
363
+ # @return [String]
364
+ #
365
+ # @!attribute [rw] created_at
366
+ # The Unix epoch timestamp in seconds for when the resource was
367
+ # created.
368
+ # @return [Time]
369
+ #
370
+ # @!attribute [rw] last_updated_at
371
+ # The Unix epoch timestamp in seconds for when the resource was last
372
+ # updated.
373
+ # @return [Time]
374
+ #
375
+ # @!attribute [rw] uid
376
+ # The unique identifier for the resource.
377
+ # @return [String]
378
+ #
379
+ # @!attribute [rw] version
380
+ # The version of the resource. Resources are created at version 1, and
381
+ # this version is incremented each time that they're updated.
382
+ # @return [Integer]
383
+ #
384
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ResourceMetadata AWS API Documentation
385
+ #
386
+ class ResourceMetadata < Struct.new(
387
+ :arn,
388
+ :created_at,
389
+ :last_updated_at,
390
+ :uid,
391
+ :version)
392
+ include Aws::Structure
393
+ end
394
+
395
+ # @!attribute [rw] virtual_node
396
+ # A full description of the virtual node that was updated.
397
+ # @return [Types::VirtualNodeData]
398
+ #
399
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNodeOutput AWS API Documentation
400
+ #
401
+ class UpdateVirtualNodeOutput < Struct.new(
402
+ :virtual_node)
403
+ include Aws::Structure
404
+ end
405
+
406
+ # @!attribute [rw] next_token
407
+ # The `nextToken` value to include in a future `ListRoutes` request.
408
+ # When the results of a `ListRoutes` request exceed `limit`, you can
409
+ # use this value to retrieve the next page of results. This value is
410
+ # `null` when there are no more results to return.
411
+ # @return [String]
412
+ #
413
+ # @!attribute [rw] routes
414
+ # The list of existing routes for the specified service mesh and
415
+ # virtual router.
416
+ # @return [Array<Types::RouteRef>]
417
+ #
418
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListRoutesOutput AWS API Documentation
419
+ #
420
+ class ListRoutesOutput < Struct.new(
421
+ :next_token,
422
+ :routes)
423
+ include Aws::Structure
424
+ end
425
+
426
+ # An object representing a virtual service backend for a virtual node.
25
427
  #
26
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateVirtualRouterOutput AWS API Documentation
428
+ # @note When making an API call, you may pass VirtualServiceBackend
429
+ # data as a hash:
27
430
  #
28
- class UpdateVirtualRouterOutput < Struct.new(
29
- :virtual_router)
431
+ # {
432
+ # virtual_service_name: "ServiceName", # required
433
+ # }
434
+ #
435
+ # @!attribute [rw] virtual_service_name
436
+ # The name of the virtual service that is acting as a virtual node
437
+ # backend.
438
+ # @return [String]
439
+ #
440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceBackend AWS API Documentation
441
+ #
442
+ class VirtualServiceBackend < Struct.new(
443
+ :virtual_service_name)
30
444
  include Aws::Structure
31
445
  end
32
446
 
33
- # An object representing a target and its relative weight. Traffic is
34
- # distributed across targets according to their relative weight. For
35
- # example, a weighted target with a relative weight of 50 receives five
36
- # times as much traffic as one with a relative weight of 10.
37
- #
38
- # @note When making an API call, you may pass WeightedTarget
447
+ # @note When making an API call, you may pass UpdateVirtualServiceInput
39
448
  # data as a hash:
40
449
  #
41
450
  # {
42
- # virtual_node: "ResourceName",
43
- # weight: 1,
451
+ # client_token: "String",
452
+ # mesh_name: "ResourceName", # required
453
+ # spec: { # required
454
+ # provider: {
455
+ # virtual_node: {
456
+ # virtual_node_name: "ResourceName", # required
457
+ # },
458
+ # virtual_router: {
459
+ # virtual_router_name: "ResourceName", # required
460
+ # },
461
+ # },
462
+ # },
463
+ # virtual_service_name: "ServiceName", # required
44
464
  # }
45
465
  #
46
- # @!attribute [rw] virtual_node
47
- # The virtual node to associate with the weighted target.
466
+ # @!attribute [rw] client_token
467
+ # Unique, case-sensitive identifier that you provide to ensure the
468
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
469
+ # underscores are allowed.
470
+ #
471
+ # **A suitable default value is auto-generated.** You should normally
472
+ # not need to pass this option.
48
473
  # @return [String]
49
474
  #
50
- # @!attribute [rw] weight
51
- # The relative weight of the weighted target.
52
- # @return [Integer]
475
+ # @!attribute [rw] mesh_name
476
+ # The name of the service mesh that the virtual service resides in.
477
+ # @return [String]
53
478
  #
54
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/WeightedTarget AWS API Documentation
479
+ # @!attribute [rw] spec
480
+ # The new virtual service specification to apply. This overwrites the
481
+ # existing data.
482
+ # @return [Types::VirtualServiceSpec]
55
483
  #
56
- class WeightedTarget < Struct.new(
57
- :virtual_node,
58
- :weight)
484
+ # @!attribute [rw] virtual_service_name
485
+ # The name of the virtual service to update.
486
+ # @return [String]
487
+ #
488
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualServiceInput AWS API Documentation
489
+ #
490
+ class UpdateVirtualServiceInput < Struct.new(
491
+ :client_token,
492
+ :mesh_name,
493
+ :spec,
494
+ :virtual_service_name)
59
495
  include Aws::Structure
60
496
  end
61
497
 
62
498
  # @!attribute [rw] route
63
- # The full description of your mesh following the create call.
499
+ # A full description of the route that was updated.
64
500
  # @return [Types::RouteData]
65
501
  #
66
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateRouteOutput AWS API Documentation
502
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateRouteOutput AWS API Documentation
67
503
  #
68
- class CreateRouteOutput < Struct.new(
504
+ class UpdateRouteOutput < Struct.new(
69
505
  :route)
70
506
  include Aws::Structure
71
507
  end
72
508
 
73
- # @note When making an API call, you may pass DeleteVirtualNodeInput
509
+ # An object representing the traffic distribution requirements for
510
+ # matched HTTP requests.
511
+ #
512
+ # @note When making an API call, you may pass HttpRouteAction
513
+ # data as a hash:
514
+ #
515
+ # {
516
+ # weighted_targets: [ # required
517
+ # {
518
+ # virtual_node: "ResourceName", # required
519
+ # weight: 1, # required
520
+ # },
521
+ # ],
522
+ # }
523
+ #
524
+ # @!attribute [rw] weighted_targets
525
+ # The targets that traffic is routed to when a request matches the
526
+ # route. You can specify one or more targets and their relative
527
+ # weights to distribute traffic with.
528
+ # @return [Array<Types::WeightedTarget>]
529
+ #
530
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRouteAction AWS API Documentation
531
+ #
532
+ class HttpRouteAction < Struct.new(
533
+ :weighted_targets)
534
+ include Aws::Structure
535
+ end
536
+
537
+ # @note When making an API call, you may pass ListRoutesInput
74
538
  # data as a hash:
75
539
  #
76
540
  # {
541
+ # limit: 1,
77
542
  # mesh_name: "ResourceName", # required
78
- # virtual_node_name: "ResourceName", # required
543
+ # next_token: "String",
544
+ # virtual_router_name: "ResourceName", # required
79
545
  # }
80
546
  #
547
+ # @!attribute [rw] limit
548
+ # The maximum number of results returned by `ListRoutes` in paginated
549
+ # output. When you use this parameter, `ListRoutes` returns only
550
+ # `limit` results in a single page along with a `nextToken` response
551
+ # element. You can see the remaining results of the initial request by
552
+ # sending another `ListRoutes` request with the returned `nextToken`
553
+ # value. This value can be between 1 and 100. If you don't use this
554
+ # parameter, `ListRoutes` returns up to 100 results and a `nextToken`
555
+ # value if applicable.
556
+ # @return [Integer]
557
+ #
81
558
  # @!attribute [rw] mesh_name
82
- # The name of the service mesh in which to delete the virtual node.
559
+ # The name of the service mesh in which to list routes.
83
560
  # @return [String]
84
561
  #
85
- # @!attribute [rw] virtual_node_name
86
- # The name of the virtual node to delete.
562
+ # @!attribute [rw] next_token
563
+ # The `nextToken` value returned from a previous paginated
564
+ # `ListRoutes` request where `limit` was used and the results exceeded
565
+ # the value of that parameter. Pagination continues from the end of
566
+ # the previous results that returned the `nextToken` value.
567
+ # @return [String]
568
+ #
569
+ # @!attribute [rw] virtual_router_name
570
+ # The name of the virtual router to list routes in.
87
571
  # @return [String]
88
572
  #
89
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteVirtualNodeInput AWS API Documentation
573
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListRoutesInput AWS API Documentation
90
574
  #
91
- class DeleteVirtualNodeInput < Struct.new(
575
+ class ListRoutesInput < Struct.new(
576
+ :limit,
92
577
  :mesh_name,
93
- :virtual_node_name)
578
+ :next_token,
579
+ :virtual_router_name)
94
580
  include Aws::Structure
95
581
  end
96
582
 
97
- # The DNS service discovery information for your virtual node.
583
+ # An object representing the health check policy for a virtual node's
584
+ # listener.
98
585
  #
99
- # @note When making an API call, you may pass DnsServiceDiscovery
586
+ # @note When making an API call, you may pass HealthCheckPolicy
100
587
  # data as a hash:
101
588
  #
102
589
  # {
103
- # service_name: "ServiceName",
590
+ # healthy_threshold: 1, # required
591
+ # interval_millis: 1, # required
592
+ # path: "String",
593
+ # port: 1,
594
+ # protocol: "http", # required, accepts http, tcp
595
+ # timeout_millis: 1, # required
596
+ # unhealthy_threshold: 1, # required
104
597
  # }
105
598
  #
106
- # @!attribute [rw] service_name
107
- # The DNS service name for your virtual node.
599
+ # @!attribute [rw] healthy_threshold
600
+ # The number of consecutive successful health checks that must occur
601
+ # before declaring listener healthy.
602
+ # @return [Integer]
603
+ #
604
+ # @!attribute [rw] interval_millis
605
+ # The time period in milliseconds between each health check execution.
606
+ # @return [Integer]
607
+ #
608
+ # @!attribute [rw] path
609
+ # The destination path for the health check request. This is required
610
+ # only if the specified protocol is HTTP. If the protocol is TCP, this
611
+ # parameter is ignored.
612
+ # @return [String]
613
+ #
614
+ # @!attribute [rw] port
615
+ # The destination port for the health check request. This port must
616
+ # match the port defined in the PortMapping for the listener.
617
+ # @return [Integer]
618
+ #
619
+ # @!attribute [rw] protocol
620
+ # The protocol for the health check request.
108
621
  # @return [String]
109
622
  #
110
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DnsServiceDiscovery AWS API Documentation
623
+ # @!attribute [rw] timeout_millis
624
+ # The amount of time to wait when receiving a response from the health
625
+ # check, in milliseconds.
626
+ # @return [Integer]
627
+ #
628
+ # @!attribute [rw] unhealthy_threshold
629
+ # The number of consecutive failed health checks that must occur
630
+ # before declaring a virtual node unhealthy.
631
+ # @return [Integer]
111
632
  #
112
- class DnsServiceDiscovery < Struct.new(
113
- :service_name)
633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HealthCheckPolicy AWS API Documentation
634
+ #
635
+ class HealthCheckPolicy < Struct.new(
636
+ :healthy_threshold,
637
+ :interval_millis,
638
+ :path,
639
+ :port,
640
+ :protocol,
641
+ :timeout_millis,
642
+ :unhealthy_threshold)
114
643
  include Aws::Structure
115
644
  end
116
645
 
117
- # An object representing a virtual node returned by a list operation.
646
+ # An object representing a virtual service returned by a list operation.
118
647
  #
119
648
  # @!attribute [rw] arn
120
- # The full Amazon Resource Name (ARN) for the virtual node.
649
+ # The full Amazon Resource Name (ARN) for the virtual service.
121
650
  # @return [String]
122
651
  #
123
652
  # @!attribute [rw] mesh_name
124
- # The name of the service mesh in which the virtual node resides.
653
+ # The name of the service mesh that the virtual service resides in.
125
654
  # @return [String]
126
655
  #
127
- # @!attribute [rw] virtual_node_name
128
- # The name of the virtual node.
656
+ # @!attribute [rw] virtual_service_name
657
+ # The name of the virtual service.
129
658
  # @return [String]
130
659
  #
131
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualNodeRef AWS API Documentation
660
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceRef AWS API Documentation
132
661
  #
133
- class VirtualNodeRef < Struct.new(
662
+ class VirtualServiceRef < Struct.new(
134
663
  :arn,
135
664
  :mesh_name,
136
- :virtual_node_name)
665
+ :virtual_service_name)
137
666
  include Aws::Structure
138
667
  end
139
668
 
140
- # @!attribute [rw] route
141
- # The full description of your route.
142
- # @return [Types::RouteData]
669
+ # An object representing the current status of the virtual node.
143
670
  #
144
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeRouteOutput AWS API Documentation
671
+ # @!attribute [rw] status
672
+ # The current status of the virtual node.
673
+ # @return [String]
145
674
  #
146
- class DescribeRouteOutput < Struct.new(
147
- :route)
675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeStatus AWS API Documentation
676
+ #
677
+ class VirtualNodeStatus < Struct.new(
678
+ :status)
148
679
  include Aws::Structure
149
680
  end
150
681
 
151
- # An object representing the service discovery information for a virtual
152
- # node.
153
- #
154
- # @note When making an API call, you may pass ServiceDiscovery
155
- # data as a hash:
156
- #
157
- # {
158
- # dns: {
159
- # service_name: "ServiceName",
160
- # },
161
- # }
162
- #
163
- # @!attribute [rw] dns
164
- # Specifies the DNS service name for the virtual node.
165
- # @return [Types::DnsServiceDiscovery]
682
+ # An object representing a virtual router returned by a list operation.
166
683
  #
167
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ServiceDiscovery AWS API Documentation
684
+ # @!attribute [rw] arn
685
+ # The full Amazon Resource Name (ARN) for the virtual router.
686
+ # @return [String]
168
687
  #
169
- class ServiceDiscovery < Struct.new(
170
- :dns)
171
- include Aws::Structure
172
- end
173
-
174
- # An object representing the status of a service mesh.
688
+ # @!attribute [rw] mesh_name
689
+ # The name of the service mesh that the virtual router resides in.
690
+ # @return [String]
175
691
  #
176
- # @!attribute [rw] status
177
- # The current mesh status.
692
+ # @!attribute [rw] virtual_router_name
693
+ # The name of the virtual router.
178
694
  # @return [String]
179
695
  #
180
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/MeshStatus AWS API Documentation
696
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterRef AWS API Documentation
181
697
  #
182
- class MeshStatus < Struct.new(
183
- :status)
698
+ class VirtualRouterRef < Struct.new(
699
+ :arn,
700
+ :mesh_name,
701
+ :virtual_router_name)
184
702
  include Aws::Structure
185
703
  end
186
704
 
187
- # An object representing a virtual node returned by a describe
705
+ # An object representing a virtual service returned by a describe
188
706
  # operation.
189
707
  #
190
708
  # @!attribute [rw] mesh_name
191
- # The name of the service mesh in which the virtual node resides.
709
+ # The name of the service mesh that the virtual service resides in.
192
710
  # @return [String]
193
711
  #
194
712
  # @!attribute [rw] metadata
195
- # The associated metadata for the virtual node.
713
+ # An object representing metadata for a resource.
196
714
  # @return [Types::ResourceMetadata]
197
715
  #
198
716
  # @!attribute [rw] spec
199
- # The specifications of the virtual node.
200
- # @return [Types::VirtualNodeSpec]
717
+ # The specifications of the virtual service.
718
+ # @return [Types::VirtualServiceSpec]
201
719
  #
202
720
  # @!attribute [rw] status
203
- # The current status for the virtual node.
204
- # @return [Types::VirtualNodeStatus]
721
+ # The current status of the virtual service.
722
+ # @return [Types::VirtualServiceStatus]
205
723
  #
206
- # @!attribute [rw] virtual_node_name
207
- # The name of the virtual node.
724
+ # @!attribute [rw] virtual_service_name
725
+ # The name of the virtual service.
208
726
  # @return [String]
209
727
  #
210
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualNodeData AWS API Documentation
728
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceData AWS API Documentation
211
729
  #
212
- class VirtualNodeData < Struct.new(
730
+ class VirtualServiceData < Struct.new(
213
731
  :mesh_name,
214
732
  :metadata,
215
733
  :spec,
216
734
  :status,
217
- :virtual_node_name)
735
+ :virtual_service_name)
218
736
  include Aws::Structure
219
737
  end
220
738
 
221
- # An object representing the specification of a virtual node.
222
- #
223
- # @note When making an API call, you may pass VirtualNodeSpec
224
- # data as a hash:
225
- #
226
- # {
227
- # backends: ["ServiceName"],
228
- # listeners: [
229
- # {
230
- # health_check: {
231
- # healthy_threshold: 1, # required
232
- # interval_millis: 1, # required
233
- # path: "String",
234
- # port: 1,
235
- # protocol: "http", # required, accepts http, tcp
236
- # timeout_millis: 1, # required
237
- # unhealthy_threshold: 1, # required
238
- # },
239
- # port_mapping: {
240
- # port: 1,
241
- # protocol: "http", # accepts http, tcp
242
- # },
243
- # },
244
- # ],
245
- # service_discovery: {
246
- # dns: {
247
- # service_name: "ServiceName",
248
- # },
249
- # },
250
- # }
251
- #
252
- # @!attribute [rw] backends
253
- # The backends to which the virtual node is expected to send outbound
254
- # traffic.
255
- # @return [Array<String>]
256
- #
257
- # @!attribute [rw] listeners
258
- # The listeners from which the virtual node is expected to receive
259
- # inbound traffic.
260
- # @return [Array<Types::Listener>]
261
- #
262
- # @!attribute [rw] service_discovery
263
- # The service discovery information for the virtual node.
264
- # @return [Types::ServiceDiscovery]
265
- #
266
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualNodeSpec AWS API Documentation
739
+ # @!attribute [rw] virtual_service
740
+ # The full description of your virtual service.
741
+ # @return [Types::VirtualServiceData]
267
742
  #
268
- class VirtualNodeSpec < Struct.new(
269
- :backends,
270
- :listeners,
271
- :service_discovery)
743
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualServiceOutput AWS API Documentation
744
+ #
745
+ class DescribeVirtualServiceOutput < Struct.new(
746
+ :virtual_service)
272
747
  include Aws::Structure
273
748
  end
274
749
 
275
- # An object representing a service mesh returned by a list operation.
750
+ # An object representing a virtual node returned by a list operation.
276
751
  #
277
752
  # @!attribute [rw] arn
278
- # The full Amazon Resource Name (ARN) of the service mesh.
753
+ # The full Amazon Resource Name (ARN) for the virtual node.
279
754
  # @return [String]
280
755
  #
281
756
  # @!attribute [rw] mesh_name
282
- # The name of the service mesh.
757
+ # The name of the service mesh that the virtual node resides in.
758
+ # @return [String]
759
+ #
760
+ # @!attribute [rw] virtual_node_name
761
+ # The name of the virtual node.
283
762
  # @return [String]
284
763
  #
285
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/MeshRef AWS API Documentation
764
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeRef AWS API Documentation
286
765
  #
287
- class MeshRef < Struct.new(
766
+ class VirtualNodeRef < Struct.new(
288
767
  :arn,
289
- :mesh_name)
768
+ :mesh_name,
769
+ :virtual_node_name)
290
770
  include Aws::Structure
291
771
  end
292
772
 
293
- # @note When making an API call, you may pass DescribeVirtualRouterInput
773
+ # @note When making an API call, you may pass CreateMeshInput
294
774
  # data as a hash:
295
775
  #
296
776
  # {
777
+ # client_token: "String",
297
778
  # mesh_name: "ResourceName", # required
298
- # virtual_router_name: "ResourceName", # required
299
779
  # }
300
780
  #
301
- # @!attribute [rw] mesh_name
302
- # The name of the service mesh in which the virtual router resides.
781
+ # @!attribute [rw] client_token
782
+ # Unique, case-sensitive identifier that you provide to ensure the
783
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
784
+ # underscores are allowed.
785
+ #
786
+ # **A suitable default value is auto-generated.** You should normally
787
+ # not need to pass this option.
303
788
  # @return [String]
304
789
  #
305
- # @!attribute [rw] virtual_router_name
306
- # The name of the virtual router to describe.
790
+ # @!attribute [rw] mesh_name
791
+ # The name to use for the service mesh.
307
792
  # @return [String]
308
793
  #
309
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeVirtualRouterInput AWS API Documentation
794
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateMeshInput AWS API Documentation
310
795
  #
311
- class DescribeVirtualRouterInput < Struct.new(
312
- :mesh_name,
313
- :virtual_router_name)
796
+ class CreateMeshInput < Struct.new(
797
+ :client_token,
798
+ :mesh_name)
314
799
  include Aws::Structure
315
800
  end
316
801
 
317
- # @!attribute [rw] virtual_router
318
- # The full description of your virtual router.
319
- # @return [Types::VirtualRouterData]
802
+ # @!attribute [rw] virtual_node
803
+ # The full description of your virtual node.
804
+ # @return [Types::VirtualNodeData]
320
805
  #
321
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeVirtualRouterOutput AWS API Documentation
806
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNodeOutput AWS API Documentation
322
807
  #
323
- class DescribeVirtualRouterOutput < Struct.new(
324
- :virtual_router)
808
+ class DescribeVirtualNodeOutput < Struct.new(
809
+ :virtual_node)
325
810
  include Aws::Structure
326
811
  end
327
812
 
328
813
  # @!attribute [rw] route
329
- # A full description of the route that was updated.
814
+ # The full description of your mesh following the create call.
330
815
  # @return [Types::RouteData]
331
816
  #
332
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateRouteOutput AWS API Documentation
817
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRouteOutput AWS API Documentation
333
818
  #
334
- class UpdateRouteOutput < Struct.new(
819
+ class CreateRouteOutput < Struct.new(
335
820
  :route)
336
821
  include Aws::Structure
337
822
  end
338
823
 
339
- # An object representing the traffic distribution requirements for
340
- # matched HTTP requests.
824
+ # An object representing the DNS service discovery information for your
825
+ # virtual node.
341
826
  #
342
- # @note When making an API call, you may pass HttpRouteAction
827
+ # @note When making an API call, you may pass DnsServiceDiscovery
343
828
  # data as a hash:
344
829
  #
345
830
  # {
346
- # weighted_targets: [
347
- # {
348
- # virtual_node: "ResourceName",
349
- # weight: 1,
350
- # },
351
- # ],
831
+ # hostname: "Hostname", # required
352
832
  # }
353
833
  #
354
- # @!attribute [rw] weighted_targets
355
- # The targets that traffic is routed to when a request matches the
356
- # route. You can specify one or more targets and their relative
357
- # weights with which to distribute traffic.
358
- # @return [Array<Types::WeightedTarget>]
834
+ # @!attribute [rw] hostname
835
+ # Specifies the DNS service discovery hostname for the virtual node.
836
+ # @return [String]
359
837
  #
360
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/HttpRouteAction AWS API Documentation
838
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DnsServiceDiscovery AWS API Documentation
361
839
  #
362
- class HttpRouteAction < Struct.new(
363
- :weighted_targets)
840
+ class DnsServiceDiscovery < Struct.new(
841
+ :hostname)
364
842
  include Aws::Structure
365
843
  end
366
844
 
367
- # @!attribute [rw] virtual_router
368
- # The full description of your virtual router following the create
369
- # call.
370
- # @return [Types::VirtualRouterData]
845
+ # @note When making an API call, you may pass DescribeVirtualServiceInput
846
+ # data as a hash:
847
+ #
848
+ # {
849
+ # mesh_name: "ResourceName", # required
850
+ # virtual_service_name: "ServiceName", # required
851
+ # }
371
852
  #
372
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateVirtualRouterOutput AWS API Documentation
853
+ # @!attribute [rw] mesh_name
854
+ # The name of the service mesh that the virtual service resides in.
855
+ # @return [String]
373
856
  #
374
- class CreateVirtualRouterOutput < Struct.new(
375
- :virtual_router)
857
+ # @!attribute [rw] virtual_service_name
858
+ # The name of the virtual service to describe.
859
+ # @return [String]
860
+ #
861
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualServiceInput AWS API Documentation
862
+ #
863
+ class DescribeVirtualServiceInput < Struct.new(
864
+ :mesh_name,
865
+ :virtual_service_name)
376
866
  include Aws::Structure
377
867
  end
378
868
 
379
- # @note When making an API call, you may pass CreateVirtualRouterInput
869
+ # @note When making an API call, you may pass DeleteRouteInput
380
870
  # data as a hash:
381
871
  #
382
872
  # {
383
- # client_token: "String",
384
873
  # mesh_name: "ResourceName", # required
385
- # spec: { # required
386
- # service_names: ["ServiceName"],
387
- # },
874
+ # route_name: "ResourceName", # required
388
875
  # virtual_router_name: "ResourceName", # required
389
876
  # }
390
877
  #
391
- # @!attribute [rw] client_token
392
- # Unique, case-sensitive identifier that you provide to ensure the
393
- # idempotency of the request. Up to 36 letters, numbers, hyphens, and
394
- # underscores are allowed.
878
+ # @!attribute [rw] mesh_name
879
+ # The name of the service mesh to delete the route in.
880
+ # @return [String]
395
881
  #
396
- # **A suitable default value is auto-generated.** You should normally
397
- # not need to pass this option.
882
+ # @!attribute [rw] route_name
883
+ # The name of the route to delete.
884
+ # @return [String]
885
+ #
886
+ # @!attribute [rw] virtual_router_name
887
+ # The name of the virtual router to delete the route in.
398
888
  # @return [String]
399
889
  #
890
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteRouteInput AWS API Documentation
891
+ #
892
+ class DeleteRouteInput < Struct.new(
893
+ :mesh_name,
894
+ :route_name,
895
+ :virtual_router_name)
896
+ include Aws::Structure
897
+ end
898
+
899
+ # An object representing a virtual node returned by a describe
900
+ # operation.
901
+ #
400
902
  # @!attribute [rw] mesh_name
401
- # The name of the service mesh in which to create the virtual router.
903
+ # The name of the service mesh that the virtual node resides in.
402
904
  # @return [String]
403
905
  #
906
+ # @!attribute [rw] metadata
907
+ # The associated metadata for the virtual node.
908
+ # @return [Types::ResourceMetadata]
909
+ #
404
910
  # @!attribute [rw] spec
405
- # The virtual router specification to apply.
406
- # @return [Types::VirtualRouterSpec]
911
+ # The specifications of the virtual node.
912
+ # @return [Types::VirtualNodeSpec]
407
913
  #
408
- # @!attribute [rw] virtual_router_name
409
- # The name to use for the virtual router.
914
+ # @!attribute [rw] status
915
+ # The current status for the virtual node.
916
+ # @return [Types::VirtualNodeStatus]
917
+ #
918
+ # @!attribute [rw] virtual_node_name
919
+ # The name of the virtual node.
410
920
  # @return [String]
411
921
  #
412
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateVirtualRouterInput AWS API Documentation
922
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeData AWS API Documentation
413
923
  #
414
- class CreateVirtualRouterInput < Struct.new(
415
- :client_token,
924
+ class VirtualNodeData < Struct.new(
416
925
  :mesh_name,
926
+ :metadata,
417
927
  :spec,
418
- :virtual_router_name)
928
+ :status,
929
+ :virtual_node_name)
419
930
  include Aws::Structure
420
931
  end
421
932
 
422
- # An object representing the current status of a route.
933
+ # An object representing the specification of a virtual service.
423
934
  #
424
- # @!attribute [rw] status
425
- # The current status for the route.
426
- # @return [String]
935
+ # @note When making an API call, you may pass VirtualServiceSpec
936
+ # data as a hash:
937
+ #
938
+ # {
939
+ # provider: {
940
+ # virtual_node: {
941
+ # virtual_node_name: "ResourceName", # required
942
+ # },
943
+ # virtual_router: {
944
+ # virtual_router_name: "ResourceName", # required
945
+ # },
946
+ # },
947
+ # }
427
948
  #
428
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/RouteStatus AWS API Documentation
949
+ # @!attribute [rw] provider
950
+ # The App Mesh object that is acting as the provider for a virtual
951
+ # service. You can specify a single virtual node or virtual router.
952
+ # @return [Types::VirtualServiceProvider]
429
953
  #
430
- class RouteStatus < Struct.new(
431
- :status)
954
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceSpec AWS API Documentation
955
+ #
956
+ class VirtualServiceSpec < Struct.new(
957
+ :provider)
958
+ include Aws::Structure
959
+ end
960
+
961
+ # An object representing the backends that a virtual node is expected to
962
+ # send outbound traffic to.
963
+ #
964
+ # @note When making an API call, you may pass Backend
965
+ # data as a hash:
966
+ #
967
+ # {
968
+ # virtual_service: {
969
+ # virtual_service_name: "ServiceName", # required
970
+ # },
971
+ # }
972
+ #
973
+ # @!attribute [rw] virtual_service
974
+ # Specifies a virtual service to use as a backend for a virtual node.
975
+ # @return [Types::VirtualServiceBackend]
976
+ #
977
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/Backend AWS API Documentation
978
+ #
979
+ class Backend < Struct.new(
980
+ :virtual_service)
432
981
  include Aws::Structure
433
982
  end
434
983
 
@@ -441,14 +990,14 @@ module Aws::AppMesh
441
990
  # }
442
991
  #
443
992
  # @!attribute [rw] limit
444
- # The maximum number of mesh results returned by `ListMeshes` in
445
- # paginated output. When this parameter is used, `ListMeshes` only
446
- # returns `limit` results in a single page along with a `nextToken`
447
- # response element. The remaining results of the initial request can
448
- # be seen by sending another `ListMeshes` request with the returned
449
- # `nextToken` value. This value can be between 1 and 100. If this
450
- # parameter is not used, then `ListMeshes` returns up to 100 results
451
- # and a `nextToken` value if applicable.
993
+ # The maximum number of results returned by `ListMeshes` in paginated
994
+ # output. When you use this parameter, `ListMeshes` returns only
995
+ # `limit` results in a single page along with a `nextToken` response
996
+ # element. You can see the remaining results of the initial request by
997
+ # sending another `ListMeshes` request with the returned `nextToken`
998
+ # value. This value can be between 1 and 100. If you don't use this
999
+ # parameter, `ListMeshes` returns up to 100 results and a `nextToken`
1000
+ # value if applicable.
452
1001
  # @return [Integer]
453
1002
  #
454
1003
  # @!attribute [rw] next_token
@@ -464,7 +1013,7 @@ module Aws::AppMesh
464
1013
  # </note>
465
1014
  # @return [String]
466
1015
  #
467
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListMeshesInput AWS API Documentation
1016
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshesInput AWS API Documentation
468
1017
  #
469
1018
  class ListMeshesInput < Struct.new(
470
1019
  :limit,
@@ -472,130 +1021,137 @@ module Aws::AppMesh
472
1021
  include Aws::Structure
473
1022
  end
474
1023
 
475
- # An object representing the status of a virtual router.
1024
+ # @note When making an API call, you may pass ListVirtualRoutersInput
1025
+ # data as a hash:
476
1026
  #
477
- # @!attribute [rw] status
478
- # The current status of the virtual router.
479
- # @return [String]
1027
+ # {
1028
+ # limit: 1,
1029
+ # mesh_name: "ResourceName", # required
1030
+ # next_token: "String",
1031
+ # }
480
1032
  #
481
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualRouterStatus AWS API Documentation
1033
+ # @!attribute [rw] limit
1034
+ # The maximum number of results returned by `ListVirtualRouters` in
1035
+ # paginated output. When you use this parameter, `ListVirtualRouters`
1036
+ # returns only `limit` results in a single page along with a
1037
+ # `nextToken` response element. You can see the remaining results of
1038
+ # the initial request by sending another `ListVirtualRouters` request
1039
+ # with the returned `nextToken` value. This value can be between 1 and
1040
+ # 100. If you don't use this parameter, `ListVirtualRouters` returns
1041
+ # up to 100 results and a `nextToken` value if applicable.
1042
+ # @return [Integer]
482
1043
  #
483
- class VirtualRouterStatus < Struct.new(
484
- :status)
485
- include Aws::Structure
486
- end
487
-
488
- # @!attribute [rw] meshes
489
- # The list of existing service meshes.
490
- # @return [Array<Types::MeshRef>]
1044
+ # @!attribute [rw] mesh_name
1045
+ # The name of the service mesh to list virtual routers in.
1046
+ # @return [String]
491
1047
  #
492
1048
  # @!attribute [rw] next_token
493
- # The `nextToken` value to include in a future `ListMeshes` request.
494
- # When the results of a `ListMeshes` request exceed `limit`, this
495
- # value can be used to retrieve the next page of results. This value
496
- # is `null` when there are no more results to return.
1049
+ # The `nextToken` value returned from a previous paginated
1050
+ # `ListVirtualRouters` request where `limit` was used and the results
1051
+ # exceeded the value of that parameter. Pagination continues from the
1052
+ # end of the previous results that returned the `nextToken` value.
497
1053
  # @return [String]
498
1054
  #
499
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListMeshesOutput AWS API Documentation
1055
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualRoutersInput AWS API Documentation
500
1056
  #
501
- class ListMeshesOutput < Struct.new(
502
- :meshes,
1057
+ class ListVirtualRoutersInput < Struct.new(
1058
+ :limit,
1059
+ :mesh_name,
503
1060
  :next_token)
504
1061
  include Aws::Structure
505
1062
  end
506
1063
 
507
- # @!attribute [rw] virtual_node
508
- # The full description of your virtual node.
509
- # @return [Types::VirtualNodeData]
510
- #
511
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeVirtualNodeOutput AWS API Documentation
512
- #
513
- class DescribeVirtualNodeOutput < Struct.new(
514
- :virtual_node)
515
- include Aws::Structure
516
- end
517
-
518
- # @!attribute [rw] mesh
519
- # The full description of your service mesh following the create call.
520
- # @return [Types::MeshData]
521
- #
522
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateMeshOutput AWS API Documentation
523
- #
524
- class CreateMeshOutput < Struct.new(
525
- :mesh)
526
- include Aws::Structure
527
- end
528
-
529
- # An object representing a route returned by a describe operation.
1064
+ # An object representing a virtual router returned by a describe
1065
+ # operation.
530
1066
  #
531
1067
  # @!attribute [rw] mesh_name
532
- # The name of the service mesh in which the route resides.
1068
+ # The name of the service mesh that the virtual router resides in.
533
1069
  # @return [String]
534
1070
  #
535
1071
  # @!attribute [rw] metadata
536
- # The associated metadata for the route.
1072
+ # The associated metadata for the virtual router.
537
1073
  # @return [Types::ResourceMetadata]
538
1074
  #
539
- # @!attribute [rw] route_name
540
- # The name of the route.
1075
+ # @!attribute [rw] spec
1076
+ # The specifications of the virtual router.
1077
+ # @return [Types::VirtualRouterSpec]
1078
+ #
1079
+ # @!attribute [rw] status
1080
+ # The current status of the virtual router.
1081
+ # @return [Types::VirtualRouterStatus]
1082
+ #
1083
+ # @!attribute [rw] virtual_router_name
1084
+ # The name of the virtual router.
541
1085
  # @return [String]
542
1086
  #
543
- # @!attribute [rw] spec
544
- # The specifications of the route.
545
- # @return [Types::RouteSpec]
1087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterData AWS API Documentation
1088
+ #
1089
+ class VirtualRouterData < Struct.new(
1090
+ :mesh_name,
1091
+ :metadata,
1092
+ :spec,
1093
+ :status,
1094
+ :virtual_router_name)
1095
+ include Aws::Structure
1096
+ end
1097
+
1098
+ # @note When making an API call, you may pass ListVirtualServicesInput
1099
+ # data as a hash:
1100
+ #
1101
+ # {
1102
+ # limit: 1,
1103
+ # mesh_name: "ResourceName", # required
1104
+ # next_token: "String",
1105
+ # }
1106
+ #
1107
+ # @!attribute [rw] limit
1108
+ # The maximum number of results returned by `ListVirtualServices` in
1109
+ # paginated output. When you use this parameter, `ListVirtualServices`
1110
+ # returns only `limit` results in a single page along with a
1111
+ # `nextToken` response element. You can see the remaining results of
1112
+ # the initial request by sending another `ListVirtualServices` request
1113
+ # with the returned `nextToken` value. This value can be between 1 and
1114
+ # 100. If you don't use this parameter, `ListVirtualServices` returns
1115
+ # up to 100 results and a `nextToken` value if applicable.
1116
+ # @return [Integer]
546
1117
  #
547
- # @!attribute [rw] status
548
- # The status of the route.
549
- # @return [Types::RouteStatus]
1118
+ # @!attribute [rw] mesh_name
1119
+ # The name of the service mesh to list virtual services in.
1120
+ # @return [String]
550
1121
  #
551
- # @!attribute [rw] virtual_router_name
552
- # The virtual router with which the route is associated.
1122
+ # @!attribute [rw] next_token
1123
+ # The `nextToken` value returned from a previous paginated
1124
+ # `ListVirtualServices` request where `limit` was used and the results
1125
+ # exceeded the value of that parameter. Pagination continues from the
1126
+ # end of the previous results that returned the `nextToken` value.
553
1127
  # @return [String]
554
1128
  #
555
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/RouteData AWS API Documentation
1129
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualServicesInput AWS API Documentation
556
1130
  #
557
- class RouteData < Struct.new(
1131
+ class ListVirtualServicesInput < Struct.new(
1132
+ :limit,
558
1133
  :mesh_name,
559
- :metadata,
560
- :route_name,
561
- :spec,
562
- :status,
563
- :virtual_router_name)
1134
+ :next_token)
564
1135
  include Aws::Structure
565
1136
  end
566
1137
 
567
- # @note When making an API call, you may pass UpdateVirtualNodeInput
1138
+ # @note When making an API call, you may pass CreateVirtualRouterInput
568
1139
  # data as a hash:
569
1140
  #
570
1141
  # {
571
1142
  # client_token: "String",
572
1143
  # mesh_name: "ResourceName", # required
573
1144
  # spec: { # required
574
- # backends: ["ServiceName"],
575
- # listeners: [
1145
+ # listeners: [ # required
576
1146
  # {
577
- # health_check: {
578
- # healthy_threshold: 1, # required
579
- # interval_millis: 1, # required
580
- # path: "String",
581
- # port: 1,
1147
+ # port_mapping: { # required
1148
+ # port: 1, # required
582
1149
  # protocol: "http", # required, accepts http, tcp
583
- # timeout_millis: 1, # required
584
- # unhealthy_threshold: 1, # required
585
- # },
586
- # port_mapping: {
587
- # port: 1,
588
- # protocol: "http", # accepts http, tcp
589
1150
  # },
590
1151
  # },
591
1152
  # ],
592
- # service_discovery: {
593
- # dns: {
594
- # service_name: "ServiceName",
595
- # },
596
- # },
597
1153
  # },
598
- # virtual_node_name: "ResourceName", # required
1154
+ # virtual_router_name: "ResourceName", # required
599
1155
  # }
600
1156
  #
601
1157
  # @!attribute [rw] client_token
@@ -608,492 +1164,588 @@ module Aws::AppMesh
608
1164
  # @return [String]
609
1165
  #
610
1166
  # @!attribute [rw] mesh_name
611
- # The name of the service mesh in which the virtual node resides.
1167
+ # The name of the service mesh to create the virtual router in.
612
1168
  # @return [String]
613
1169
  #
614
1170
  # @!attribute [rw] spec
615
- # The new virtual node specification to apply. This overwrites the
616
- # existing data.
617
- # @return [Types::VirtualNodeSpec]
1171
+ # The virtual router specification to apply.
1172
+ # @return [Types::VirtualRouterSpec]
618
1173
  #
619
- # @!attribute [rw] virtual_node_name
620
- # The name of the virtual node to update.
1174
+ # @!attribute [rw] virtual_router_name
1175
+ # The name to use for the virtual router.
621
1176
  # @return [String]
622
1177
  #
623
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateVirtualNodeInput AWS API Documentation
1178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouterInput AWS API Documentation
624
1179
  #
625
- class UpdateVirtualNodeInput < Struct.new(
1180
+ class CreateVirtualRouterInput < Struct.new(
626
1181
  :client_token,
627
1182
  :mesh_name,
628
1183
  :spec,
629
- :virtual_node_name)
1184
+ :virtual_router_name)
630
1185
  include Aws::Structure
631
1186
  end
632
1187
 
633
- # @note When making an API call, you may pass DeleteRouteInput
1188
+ # @note When making an API call, you may pass ListVirtualNodesInput
634
1189
  # data as a hash:
635
1190
  #
636
1191
  # {
1192
+ # limit: 1,
637
1193
  # mesh_name: "ResourceName", # required
638
- # route_name: "ResourceName", # required
639
- # virtual_router_name: "ResourceName", # required
1194
+ # next_token: "String",
640
1195
  # }
641
1196
  #
642
- # @!attribute [rw] mesh_name
643
- # The name of the service mesh in which to delete the route.
644
- # @return [String]
1197
+ # @!attribute [rw] limit
1198
+ # The maximum number of results returned by `ListVirtualNodes` in
1199
+ # paginated output. When you use this parameter, `ListVirtualNodes`
1200
+ # returns only `limit` results in a single page along with a
1201
+ # `nextToken` response element. You can see the remaining results of
1202
+ # the initial request by sending another `ListVirtualNodes` request
1203
+ # with the returned `nextToken` value. This value can be between 1 and
1204
+ # 100. If you don't use this parameter, `ListVirtualNodes` returns up
1205
+ # to 100 results and a `nextToken` value if applicable.
1206
+ # @return [Integer]
645
1207
  #
646
- # @!attribute [rw] route_name
647
- # The name of the route to delete.
1208
+ # @!attribute [rw] mesh_name
1209
+ # The name of the service mesh to list virtual nodes in.
648
1210
  # @return [String]
649
1211
  #
650
- # @!attribute [rw] virtual_router_name
651
- # The name of the virtual router in which to delete the route.
1212
+ # @!attribute [rw] next_token
1213
+ # The `nextToken` value returned from a previous paginated
1214
+ # `ListVirtualNodes` request where `limit` was used and the results
1215
+ # exceeded the value of that parameter. Pagination continues from the
1216
+ # end of the previous results that returned the `nextToken` value.
652
1217
  # @return [String]
653
1218
  #
654
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteRouteInput AWS API Documentation
1219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodesInput AWS API Documentation
655
1220
  #
656
- class DeleteRouteInput < Struct.new(
1221
+ class ListVirtualNodesInput < Struct.new(
1222
+ :limit,
657
1223
  :mesh_name,
658
- :route_name,
659
- :virtual_router_name)
1224
+ :next_token)
660
1225
  include Aws::Structure
661
1226
  end
662
1227
 
663
- # @note When making an API call, you may pass ListRoutesInput
664
- # data as a hash:
1228
+ # @!attribute [rw] virtual_router
1229
+ # The full description of your virtual router.
1230
+ # @return [Types::VirtualRouterData]
665
1231
  #
666
- # {
667
- # limit: 1,
668
- # mesh_name: "ResourceName", # required
669
- # next_token: "String",
670
- # virtual_router_name: "ResourceName", # required
671
- # }
1232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualRouterOutput AWS API Documentation
672
1233
  #
673
- # @!attribute [rw] limit
674
- # The maximum number of mesh results returned by `ListRoutes` in
675
- # paginated output. When this parameter is used, `ListRoutes` only
676
- # returns `limit` results in a single page along with a `nextToken`
677
- # response element. The remaining results of the initial request can
678
- # be seen by sending another `ListRoutes` request with the returned
679
- # `nextToken` value. This value can be between 1 and 100. If this
680
- # parameter is not used, then `ListRoutes` returns up to 100 results
681
- # and a `nextToken` value if applicable.
682
- # @return [Integer]
1234
+ class DescribeVirtualRouterOutput < Struct.new(
1235
+ :virtual_router)
1236
+ include Aws::Structure
1237
+ end
1238
+
1239
+ # @!attribute [rw] mesh
1240
+ # The full description of your service mesh following the create call.
1241
+ # @return [Types::MeshData]
683
1242
  #
684
- # @!attribute [rw] mesh_name
685
- # The name of the service mesh in which to list routes.
686
- # @return [String]
1243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateMeshOutput AWS API Documentation
687
1244
  #
688
- # @!attribute [rw] next_token
689
- # The `nextToken` value returned from a previous paginated
690
- # `ListRoutes` request where `limit` was used and the results exceeded
691
- # the value of that parameter. Pagination continues from the end of
692
- # the previous results that returned the `nextToken` value.
693
- # @return [String]
1245
+ class CreateMeshOutput < Struct.new(
1246
+ :mesh)
1247
+ include Aws::Structure
1248
+ end
1249
+
1250
+ # @!attribute [rw] virtual_router
1251
+ # The full description of your virtual router following the create
1252
+ # call.
1253
+ # @return [Types::VirtualRouterData]
694
1254
  #
695
- # @!attribute [rw] virtual_router_name
696
- # The name of the virtual router in which to list routes.
1255
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouterOutput AWS API Documentation
1256
+ #
1257
+ class CreateVirtualRouterOutput < Struct.new(
1258
+ :virtual_router)
1259
+ include Aws::Structure
1260
+ end
1261
+
1262
+ # An object representing the status of a virtual service.
1263
+ #
1264
+ # @!attribute [rw] status
1265
+ # The current status of the virtual service.
697
1266
  # @return [String]
698
1267
  #
699
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListRoutesInput AWS API Documentation
1268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceStatus AWS API Documentation
700
1269
  #
701
- class ListRoutesInput < Struct.new(
702
- :limit,
703
- :mesh_name,
704
- :next_token,
705
- :virtual_router_name)
1270
+ class VirtualServiceStatus < Struct.new(
1271
+ :status)
706
1272
  include Aws::Structure
707
1273
  end
708
1274
 
709
- # An object representing the HTTP routing specification for a route.
1275
+ # An object representing the specification of a virtual router.
710
1276
  #
711
- # @note When making an API call, you may pass HttpRoute
1277
+ # @note When making an API call, you may pass VirtualRouterSpec
712
1278
  # data as a hash:
713
1279
  #
714
1280
  # {
715
- # action: {
716
- # weighted_targets: [
717
- # {
718
- # virtual_node: "ResourceName",
719
- # weight: 1,
1281
+ # listeners: [ # required
1282
+ # {
1283
+ # port_mapping: { # required
1284
+ # port: 1, # required
1285
+ # protocol: "http", # required, accepts http, tcp
720
1286
  # },
721
- # ],
722
- # },
723
- # match: {
724
- # prefix: "String",
1287
+ # },
1288
+ # ],
1289
+ # }
1290
+ #
1291
+ # @!attribute [rw] listeners
1292
+ # The listeners that the virtual router is expected to receive inbound
1293
+ # traffic from. Currently only one listener is supported per virtual
1294
+ # router.
1295
+ # @return [Array<Types::VirtualRouterListener>]
1296
+ #
1297
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterSpec AWS API Documentation
1298
+ #
1299
+ class VirtualRouterSpec < Struct.new(
1300
+ :listeners)
1301
+ include Aws::Structure
1302
+ end
1303
+
1304
+ # An object representing the specification of a virtual node.
1305
+ #
1306
+ # @note When making an API call, you may pass VirtualNodeSpec
1307
+ # data as a hash:
1308
+ #
1309
+ # {
1310
+ # backends: [
1311
+ # {
1312
+ # virtual_service: {
1313
+ # virtual_service_name: "ServiceName", # required
1314
+ # },
1315
+ # },
1316
+ # ],
1317
+ # listeners: [
1318
+ # {
1319
+ # health_check: {
1320
+ # healthy_threshold: 1, # required
1321
+ # interval_millis: 1, # required
1322
+ # path: "String",
1323
+ # port: 1,
1324
+ # protocol: "http", # required, accepts http, tcp
1325
+ # timeout_millis: 1, # required
1326
+ # unhealthy_threshold: 1, # required
1327
+ # },
1328
+ # port_mapping: { # required
1329
+ # port: 1, # required
1330
+ # protocol: "http", # required, accepts http, tcp
1331
+ # },
1332
+ # },
1333
+ # ],
1334
+ # service_discovery: {
1335
+ # dns: {
1336
+ # hostname: "Hostname", # required
1337
+ # },
725
1338
  # },
726
1339
  # }
727
1340
  #
728
- # @!attribute [rw] action
729
- # The action to take if a match is determined.
730
- # @return [Types::HttpRouteAction]
1341
+ # @!attribute [rw] backends
1342
+ # The backends that the virtual node is expected to send outbound
1343
+ # traffic to.
1344
+ # @return [Array<Types::Backend>]
731
1345
  #
732
- # @!attribute [rw] match
733
- # The criteria for determining an HTTP request match.
734
- # @return [Types::HttpRouteMatch]
1346
+ # @!attribute [rw] listeners
1347
+ # The listeners that the virtual node is expected to receive inbound
1348
+ # traffic from. Currently only one listener is supported per virtual
1349
+ # node.
1350
+ # @return [Array<Types::Listener>]
1351
+ #
1352
+ # @!attribute [rw] service_discovery
1353
+ # The service discovery information for the virtual node.
1354
+ # @return [Types::ServiceDiscovery]
735
1355
  #
736
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/HttpRoute AWS API Documentation
1356
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeSpec AWS API Documentation
737
1357
  #
738
- class HttpRoute < Struct.new(
739
- :action,
740
- :match)
1358
+ class VirtualNodeSpec < Struct.new(
1359
+ :backends,
1360
+ :listeners,
1361
+ :service_discovery)
741
1362
  include Aws::Structure
742
1363
  end
743
1364
 
1365
+ # @!attribute [rw] meshes
1366
+ # The list of existing service meshes.
1367
+ # @return [Array<Types::MeshRef>]
1368
+ #
744
1369
  # @!attribute [rw] next_token
745
- # The `nextToken` value to include in a future `ListRoutes` request.
746
- # When the results of a `ListRoutes` request exceed `limit`, this
747
- # value can be used to retrieve the next page of results. This value
748
- # is `null` when there are no more results to return.
1370
+ # The `nextToken` value to include in a future `ListMeshes` request.
1371
+ # When the results of a `ListMeshes` request exceed `limit`, you can
1372
+ # use this value to retrieve the next page of results. This value is
1373
+ # `null` when there are no more results to return.
749
1374
  # @return [String]
750
1375
  #
751
- # @!attribute [rw] routes
752
- # The list of existing routes for the specified service mesh and
753
- # virtual router.
754
- # @return [Array<Types::RouteRef>]
1376
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListMeshesOutput AWS API Documentation
1377
+ #
1378
+ class ListMeshesOutput < Struct.new(
1379
+ :meshes,
1380
+ :next_token)
1381
+ include Aws::Structure
1382
+ end
1383
+
1384
+ # @!attribute [rw] route
1385
+ # The full description of your route.
1386
+ # @return [Types::RouteData]
755
1387
  #
756
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListRoutesOutput AWS API Documentation
1388
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeRouteOutput AWS API Documentation
757
1389
  #
758
- class ListRoutesOutput < Struct.new(
759
- :next_token,
760
- :routes)
1390
+ class DescribeRouteOutput < Struct.new(
1391
+ :route)
761
1392
  include Aws::Structure
762
1393
  end
763
1394
 
764
- # An object representing the specification of a route.
1395
+ # An object representing the requirements for a route to match HTTP
1396
+ # requests for a virtual router.
765
1397
  #
766
- # @note When making an API call, you may pass RouteSpec
1398
+ # @note When making an API call, you may pass HttpRouteMatch
767
1399
  # data as a hash:
768
1400
  #
769
1401
  # {
770
- # http_route: {
771
- # action: {
772
- # weighted_targets: [
773
- # {
774
- # virtual_node: "ResourceName",
775
- # weight: 1,
776
- # },
777
- # ],
778
- # },
779
- # match: {
780
- # prefix: "String",
781
- # },
782
- # },
1402
+ # prefix: "String", # required
783
1403
  # }
784
1404
  #
785
- # @!attribute [rw] http_route
786
- # The HTTP routing information for the route.
787
- # @return [Types::HttpRoute]
1405
+ # @!attribute [rw] prefix
1406
+ # Specifies the path to match requests with. This parameter must
1407
+ # always start with `/`, which by itself matches all requests to the
1408
+ # virtual router service name. You can also match for path-based
1409
+ # routing of requests. For example, if your virtual router service
1410
+ # name is `my-service.local` and you want the route to match requests
1411
+ # to `my-service.local/metrics`, your prefix should be `/metrics`.
1412
+ # @return [String]
1413
+ #
1414
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRouteMatch AWS API Documentation
1415
+ #
1416
+ class HttpRouteMatch < Struct.new(
1417
+ :prefix)
1418
+ include Aws::Structure
1419
+ end
1420
+
1421
+ # An object representing a service mesh returned by a list operation.
1422
+ #
1423
+ # @!attribute [rw] arn
1424
+ # The full Amazon Resource Name (ARN) of the service mesh.
1425
+ # @return [String]
1426
+ #
1427
+ # @!attribute [rw] mesh_name
1428
+ # The name of the service mesh.
1429
+ # @return [String]
788
1430
  #
789
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/RouteSpec AWS API Documentation
1431
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MeshRef AWS API Documentation
790
1432
  #
791
- class RouteSpec < Struct.new(
792
- :http_route)
1433
+ class MeshRef < Struct.new(
1434
+ :arn,
1435
+ :mesh_name)
793
1436
  include Aws::Structure
794
1437
  end
795
1438
 
796
- # @note When making an API call, you may pass DescribeVirtualNodeInput
1439
+ # An object representing a virtual node or virtual router listener port
1440
+ # mapping.
1441
+ #
1442
+ # @note When making an API call, you may pass PortMapping
797
1443
  # data as a hash:
798
1444
  #
799
1445
  # {
800
- # mesh_name: "ResourceName", # required
801
- # virtual_node_name: "ResourceName", # required
1446
+ # port: 1, # required
1447
+ # protocol: "http", # required, accepts http, tcp
802
1448
  # }
803
1449
  #
804
- # @!attribute [rw] mesh_name
805
- # The name of the service mesh in which the virtual node resides.
806
- # @return [String]
1450
+ # @!attribute [rw] port
1451
+ # The port used for the port mapping.
1452
+ # @return [Integer]
807
1453
  #
808
- # @!attribute [rw] virtual_node_name
809
- # The name of the virtual node to describe.
1454
+ # @!attribute [rw] protocol
1455
+ # The protocol used for the port mapping.
810
1456
  # @return [String]
811
1457
  #
812
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeVirtualNodeInput AWS API Documentation
1458
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/PortMapping AWS API Documentation
813
1459
  #
814
- class DescribeVirtualNodeInput < Struct.new(
815
- :mesh_name,
816
- :virtual_node_name)
1460
+ class PortMapping < Struct.new(
1461
+ :port,
1462
+ :protocol)
817
1463
  include Aws::Structure
818
1464
  end
819
1465
 
820
- # An object representing a virtual router returned by a list operation.
821
- #
822
- # @!attribute [rw] arn
823
- # The full Amazon Resource Name (ARN) for the virtual router.
824
- # @return [String]
1466
+ # An object representing a service mesh returned by a describe
1467
+ # operation.
825
1468
  #
826
1469
  # @!attribute [rw] mesh_name
827
- # The name of the service mesh in which the virtual router resides.
1470
+ # The name of the service mesh.
828
1471
  # @return [String]
829
1472
  #
830
- # @!attribute [rw] virtual_router_name
831
- # The name of the virtual router.
832
- # @return [String]
1473
+ # @!attribute [rw] metadata
1474
+ # The associated metadata for the service mesh.
1475
+ # @return [Types::ResourceMetadata]
1476
+ #
1477
+ # @!attribute [rw] status
1478
+ # The status of the service mesh.
1479
+ # @return [Types::MeshStatus]
833
1480
  #
834
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualRouterRef AWS API Documentation
1481
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MeshData AWS API Documentation
835
1482
  #
836
- class VirtualRouterRef < Struct.new(
837
- :arn,
1483
+ class MeshData < Struct.new(
838
1484
  :mesh_name,
839
- :virtual_router_name)
1485
+ :metadata,
1486
+ :status)
1487
+ include Aws::Structure
1488
+ end
1489
+
1490
+ # An object representing the status of a virtual router.
1491
+ #
1492
+ # @!attribute [rw] status
1493
+ # The current status of the virtual router.
1494
+ # @return [String]
1495
+ #
1496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterStatus AWS API Documentation
1497
+ #
1498
+ class VirtualRouterStatus < Struct.new(
1499
+ :status)
840
1500
  include Aws::Structure
841
1501
  end
842
1502
 
843
1503
  # @!attribute [rw] next_token
844
- # The `nextToken` value to include in a future `ListVirtualNodes`
845
- # request. When the results of a `ListVirtualNodes` request exceed
846
- # `limit`, this value can be used to retrieve the next page of
1504
+ # The `nextToken` value to include in a future `ListVirtualServices`
1505
+ # request. When the results of a `ListVirtualServices` request exceed
1506
+ # `limit`, you can use this value to retrieve the next page of
847
1507
  # results. This value is `null` when there are no more results to
848
1508
  # return.
849
1509
  # @return [String]
850
1510
  #
851
- # @!attribute [rw] virtual_nodes
852
- # The list of existing virtual nodes for the specified service mesh.
853
- # @return [Array<Types::VirtualNodeRef>]
1511
+ # @!attribute [rw] virtual_services
1512
+ # The list of existing virtual services for the specified service
1513
+ # mesh.
1514
+ # @return [Array<Types::VirtualServiceRef>]
854
1515
  #
855
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListVirtualNodesOutput AWS API Documentation
1516
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualServicesOutput AWS API Documentation
856
1517
  #
857
- class ListVirtualNodesOutput < Struct.new(
1518
+ class ListVirtualServicesOutput < Struct.new(
858
1519
  :next_token,
859
- :virtual_nodes)
1520
+ :virtual_services)
860
1521
  include Aws::Structure
861
1522
  end
862
1523
 
863
- # @!attribute [rw] virtual_node
864
- # The virtual node that was deleted.
865
- # @return [Types::VirtualNodeData]
866
- #
867
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteVirtualNodeOutput AWS API Documentation
1524
+ # An object representing a target and its relative weight. Traffic is
1525
+ # distributed across targets according to their relative weight. For
1526
+ # example, a weighted target with a relative weight of 50 receives five
1527
+ # times as much traffic as one with a relative weight of 10.
868
1528
  #
869
- class DeleteVirtualNodeOutput < Struct.new(
870
- :virtual_node)
871
- include Aws::Structure
872
- end
873
-
874
- # @note When making an API call, you may pass UpdateVirtualRouterInput
1529
+ # @note When making an API call, you may pass WeightedTarget
875
1530
  # data as a hash:
876
1531
  #
877
1532
  # {
878
- # client_token: "String",
879
- # mesh_name: "ResourceName", # required
880
- # spec: { # required
881
- # service_names: ["ServiceName"],
882
- # },
883
- # virtual_router_name: "ResourceName", # required
1533
+ # virtual_node: "ResourceName", # required
1534
+ # weight: 1, # required
884
1535
  # }
885
1536
  #
886
- # @!attribute [rw] client_token
887
- # Unique, case-sensitive identifier that you provide to ensure the
888
- # idempotency of the request. Up to 36 letters, numbers, hyphens, and
889
- # underscores are allowed.
890
- #
891
- # **A suitable default value is auto-generated.** You should normally
892
- # not need to pass this option.
893
- # @return [String]
894
- #
895
- # @!attribute [rw] mesh_name
896
- # The name of the service mesh in which the virtual router resides.
1537
+ # @!attribute [rw] virtual_node
1538
+ # The virtual node to associate with the weighted target.
897
1539
  # @return [String]
898
1540
  #
899
- # @!attribute [rw] spec
900
- # The new virtual router specification to apply. This overwrites the
901
- # existing data.
902
- # @return [Types::VirtualRouterSpec]
903
- #
904
- # @!attribute [rw] virtual_router_name
905
- # The name of the virtual router to update.
906
- # @return [String]
1541
+ # @!attribute [rw] weight
1542
+ # The relative weight of the weighted target.
1543
+ # @return [Integer]
907
1544
  #
908
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateVirtualRouterInput AWS API Documentation
1545
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/WeightedTarget AWS API Documentation
909
1546
  #
910
- class UpdateVirtualRouterInput < Struct.new(
911
- :client_token,
912
- :mesh_name,
913
- :spec,
914
- :virtual_router_name)
1547
+ class WeightedTarget < Struct.new(
1548
+ :virtual_node,
1549
+ :weight)
915
1550
  include Aws::Structure
916
1551
  end
917
1552
 
918
- # @note When making an API call, you may pass DescribeRouteInput
1553
+ # @note When making an API call, you may pass DescribeVirtualNodeInput
919
1554
  # data as a hash:
920
1555
  #
921
1556
  # {
922
1557
  # mesh_name: "ResourceName", # required
923
- # route_name: "ResourceName", # required
924
- # virtual_router_name: "ResourceName", # required
1558
+ # virtual_node_name: "ResourceName", # required
925
1559
  # }
926
1560
  #
927
1561
  # @!attribute [rw] mesh_name
928
- # The name of the service mesh in which the route resides.
929
- # @return [String]
930
- #
931
- # @!attribute [rw] route_name
932
- # The name of the route to describe.
1562
+ # The name of the service mesh that the virtual node resides in.
933
1563
  # @return [String]
934
1564
  #
935
- # @!attribute [rw] virtual_router_name
936
- # The name of the virtual router with which the route is associated.
1565
+ # @!attribute [rw] virtual_node_name
1566
+ # The name of the virtual node to describe.
937
1567
  # @return [String]
938
1568
  #
939
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeRouteInput AWS API Documentation
1569
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNodeInput AWS API Documentation
940
1570
  #
941
- class DescribeRouteInput < Struct.new(
1571
+ class DescribeVirtualNodeInput < Struct.new(
942
1572
  :mesh_name,
943
- :route_name,
944
- :virtual_router_name)
1573
+ :virtual_node_name)
945
1574
  include Aws::Structure
946
1575
  end
947
1576
 
948
- # @!attribute [rw] next_token
949
- # The `nextToken` value to include in a future `ListVirtualRouters`
950
- # request. When the results of a `ListVirtualRouters` request exceed
951
- # `limit`, this value can be used to retrieve the next page of
952
- # results. This value is `null` when there are no more results to
953
- # return.
954
- # @return [String]
1577
+ # An object representing the current status of a route.
955
1578
  #
956
- # @!attribute [rw] virtual_routers
957
- # The list of existing virtual routers for the specified service mesh.
958
- # @return [Array<Types::VirtualRouterRef>]
1579
+ # @!attribute [rw] status
1580
+ # The current status for the route.
1581
+ # @return [String]
959
1582
  #
960
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListVirtualRoutersOutput AWS API Documentation
1583
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/RouteStatus AWS API Documentation
961
1584
  #
962
- class ListVirtualRoutersOutput < Struct.new(
963
- :next_token,
964
- :virtual_routers)
1585
+ class RouteStatus < Struct.new(
1586
+ :status)
965
1587
  include Aws::Structure
966
1588
  end
967
1589
 
968
- # @!attribute [rw] virtual_node
969
- # The full description of your virtual node following the create call.
970
- # @return [Types::VirtualNodeData]
1590
+ # An object representing a route returned by a list operation.
971
1591
  #
972
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateVirtualNodeOutput AWS API Documentation
1592
+ # @!attribute [rw] arn
1593
+ # The full Amazon Resource Name (ARN) for the route.
1594
+ # @return [String]
973
1595
  #
974
- class CreateVirtualNodeOutput < Struct.new(
975
- :virtual_node)
976
- include Aws::Structure
977
- end
978
-
979
- # @!attribute [rw] virtual_router
980
- # The virtual router that was deleted.
981
- # @return [Types::VirtualRouterData]
1596
+ # @!attribute [rw] mesh_name
1597
+ # The name of the service mesh that the route resides in.
1598
+ # @return [String]
982
1599
  #
983
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteVirtualRouterOutput AWS API Documentation
1600
+ # @!attribute [rw] route_name
1601
+ # The name of the route.
1602
+ # @return [String]
984
1603
  #
985
- class DeleteVirtualRouterOutput < Struct.new(
986
- :virtual_router)
1604
+ # @!attribute [rw] virtual_router_name
1605
+ # The virtual router that the route is associated with.
1606
+ # @return [String]
1607
+ #
1608
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/RouteRef AWS API Documentation
1609
+ #
1610
+ class RouteRef < Struct.new(
1611
+ :arn,
1612
+ :mesh_name,
1613
+ :route_name,
1614
+ :virtual_router_name)
987
1615
  include Aws::Structure
988
1616
  end
989
1617
 
990
- # An object representing metadata for a resource.
991
- #
992
- # @!attribute [rw] arn
993
- # The full Amazon Resource Name (ARN) for the resource.
994
- #
995
- # <note markdown="1"> After you create a virtual node, set this value (either the full ARN
996
- # or the truncated resource name, for example,
997
- # `mesh/default/virtualNode/simpleapp`, as the
998
- # `APPMESH_VIRTUAL_NODE_NAME` environment variable for your task
999
- # group's Envoy proxy container in your task definition or pod spec.
1000
- # This is then mapped to the `node.id` and `node.cluster` Envoy
1001
- # parameters.
1002
- #
1003
- # If you require your Envoy stats or tracing to use a different name,
1004
- # you can override the `node.cluster` value that is set by
1005
- # `APPMESH_VIRTUAL_NODE_NAME` with the `APPMESH_VIRTUAL_NODE_CLUSTER`
1006
- # environment variable.
1007
- #
1008
- # </note>
1009
- # @return [String]
1618
+ # An object representing a listener for a virtual node.
1010
1619
  #
1011
- # @!attribute [rw] created_at
1012
- # The Unix epoch timestamp in seconds for when the resource was
1013
- # created.
1014
- # @return [Time]
1620
+ # @note When making an API call, you may pass Listener
1621
+ # data as a hash:
1015
1622
  #
1016
- # @!attribute [rw] last_updated_at
1017
- # The Unix epoch timestamp in seconds for when the resource was last
1018
- # updated.
1019
- # @return [Time]
1623
+ # {
1624
+ # health_check: {
1625
+ # healthy_threshold: 1, # required
1626
+ # interval_millis: 1, # required
1627
+ # path: "String",
1628
+ # port: 1,
1629
+ # protocol: "http", # required, accepts http, tcp
1630
+ # timeout_millis: 1, # required
1631
+ # unhealthy_threshold: 1, # required
1632
+ # },
1633
+ # port_mapping: { # required
1634
+ # port: 1, # required
1635
+ # protocol: "http", # required, accepts http, tcp
1636
+ # },
1637
+ # }
1020
1638
  #
1021
- # @!attribute [rw] uid
1022
- # The unique identifier for the resource.
1023
- # @return [String]
1639
+ # @!attribute [rw] health_check
1640
+ # The health check information for the listener.
1641
+ # @return [Types::HealthCheckPolicy]
1024
1642
  #
1025
- # @!attribute [rw] version
1026
- # The version of the resource. Resources are created at version 1, and
1027
- # this version is incremented each time they are updated.
1028
- # @return [Integer]
1643
+ # @!attribute [rw] port_mapping
1644
+ # The port mapping information for the listener.
1645
+ # @return [Types::PortMapping]
1029
1646
  #
1030
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ResourceMetadata AWS API Documentation
1647
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/Listener AWS API Documentation
1031
1648
  #
1032
- class ResourceMetadata < Struct.new(
1033
- :arn,
1034
- :created_at,
1035
- :last_updated_at,
1036
- :uid,
1037
- :version)
1649
+ class Listener < Struct.new(
1650
+ :health_check,
1651
+ :port_mapping)
1038
1652
  include Aws::Structure
1039
1653
  end
1040
1654
 
1041
- # @note When making an API call, you may pass CreateMeshInput
1655
+ # @note When making an API call, you may pass DeleteVirtualNodeInput
1042
1656
  # data as a hash:
1043
1657
  #
1044
1658
  # {
1045
- # client_token: "String",
1046
1659
  # mesh_name: "ResourceName", # required
1660
+ # virtual_node_name: "ResourceName", # required
1047
1661
  # }
1048
1662
  #
1049
- # @!attribute [rw] client_token
1050
- # Unique, case-sensitive identifier that you provide to ensure the
1051
- # idempotency of the request. Up to 36 letters, numbers, hyphens, and
1052
- # underscores are allowed.
1663
+ # @!attribute [rw] mesh_name
1664
+ # The name of the service mesh to delete the virtual node in.
1665
+ # @return [String]
1053
1666
  #
1054
- # **A suitable default value is auto-generated.** You should normally
1055
- # not need to pass this option.
1667
+ # @!attribute [rw] virtual_node_name
1668
+ # The name of the virtual node to delete.
1056
1669
  # @return [String]
1057
1670
  #
1671
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualNodeInput AWS API Documentation
1672
+ #
1673
+ class DeleteVirtualNodeInput < Struct.new(
1674
+ :mesh_name,
1675
+ :virtual_node_name)
1676
+ include Aws::Structure
1677
+ end
1678
+
1679
+ # An object representing a route returned by a describe operation.
1680
+ #
1058
1681
  # @!attribute [rw] mesh_name
1059
- # The name to use for the service mesh.
1682
+ # The name of the service mesh that the route resides in.
1060
1683
  # @return [String]
1061
1684
  #
1062
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateMeshInput AWS API Documentation
1685
+ # @!attribute [rw] metadata
1686
+ # The associated metadata for the route.
1687
+ # @return [Types::ResourceMetadata]
1063
1688
  #
1064
- class CreateMeshInput < Struct.new(
1065
- :client_token,
1066
- :mesh_name)
1689
+ # @!attribute [rw] route_name
1690
+ # The name of the route.
1691
+ # @return [String]
1692
+ #
1693
+ # @!attribute [rw] spec
1694
+ # The specifications of the route.
1695
+ # @return [Types::RouteSpec]
1696
+ #
1697
+ # @!attribute [rw] status
1698
+ # The status of the route.
1699
+ # @return [Types::RouteStatus]
1700
+ #
1701
+ # @!attribute [rw] virtual_router_name
1702
+ # The virtual router that the route is associated with.
1703
+ # @return [String]
1704
+ #
1705
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/RouteData AWS API Documentation
1706
+ #
1707
+ class RouteData < Struct.new(
1708
+ :mesh_name,
1709
+ :metadata,
1710
+ :route_name,
1711
+ :spec,
1712
+ :status,
1713
+ :virtual_router_name)
1067
1714
  include Aws::Structure
1068
1715
  end
1069
1716
 
1070
- # An object representing a virtual node listener port mapping.
1717
+ # @!attribute [rw] virtual_service
1718
+ # The virtual service that was deleted.
1719
+ # @return [Types::VirtualServiceData]
1071
1720
  #
1072
- # @note When making an API call, you may pass PortMapping
1721
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualServiceOutput AWS API Documentation
1722
+ #
1723
+ class DeleteVirtualServiceOutput < Struct.new(
1724
+ :virtual_service)
1725
+ include Aws::Structure
1726
+ end
1727
+
1728
+ # An object representing a virtual node service provider.
1729
+ #
1730
+ # @note When making an API call, you may pass VirtualNodeServiceProvider
1073
1731
  # data as a hash:
1074
1732
  #
1075
1733
  # {
1076
- # port: 1,
1077
- # protocol: "http", # accepts http, tcp
1734
+ # virtual_node_name: "ResourceName", # required
1078
1735
  # }
1079
1736
  #
1080
- # @!attribute [rw] port
1081
- # The port used for the port mapping.
1082
- # @return [Integer]
1083
- #
1084
- # @!attribute [rw] protocol
1085
- # The protocol used for the port mapping.
1737
+ # @!attribute [rw] virtual_node_name
1738
+ # The name of the virtual node that is acting as a service provider.
1086
1739
  # @return [String]
1087
1740
  #
1088
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/PortMapping AWS API Documentation
1741
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualNodeServiceProvider AWS API Documentation
1089
1742
  #
1090
- class PortMapping < Struct.new(
1091
- :port,
1092
- :protocol)
1743
+ class VirtualNodeServiceProvider < Struct.new(
1744
+ :virtual_node_name)
1093
1745
  include Aws::Structure
1094
1746
  end
1095
1747
 
1096
- # @note When making an API call, you may pass DeleteVirtualRouterInput
1748
+ # @note When making an API call, you may pass DescribeVirtualRouterInput
1097
1749
  # data as a hash:
1098
1750
  #
1099
1751
  # {
@@ -1102,42 +1754,33 @@ module Aws::AppMesh
1102
1754
  # }
1103
1755
  #
1104
1756
  # @!attribute [rw] mesh_name
1105
- # The name of the service mesh in which to delete the virtual router.
1757
+ # The name of the service mesh that the virtual router resides in.
1106
1758
  # @return [String]
1107
1759
  #
1108
1760
  # @!attribute [rw] virtual_router_name
1109
- # The name of the virtual router to delete.
1761
+ # The name of the virtual router to describe.
1110
1762
  # @return [String]
1111
1763
  #
1112
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteVirtualRouterInput AWS API Documentation
1764
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualRouterInput AWS API Documentation
1113
1765
  #
1114
- class DeleteVirtualRouterInput < Struct.new(
1766
+ class DescribeVirtualRouterInput < Struct.new(
1115
1767
  :mesh_name,
1116
1768
  :virtual_router_name)
1117
1769
  include Aws::Structure
1118
1770
  end
1119
1771
 
1120
- # An object representing the specification of a virtual router.
1121
- #
1122
- # @note When making an API call, you may pass VirtualRouterSpec
1123
- # data as a hash:
1124
- #
1125
- # {
1126
- # service_names: ["ServiceName"],
1127
- # }
1128
- #
1129
- # @!attribute [rw] service_names
1130
- # The service mesh service names to associate with the virtual router.
1131
- # @return [Array<String>]
1772
+ # @!attribute [rw] mesh
1773
+ # The service mesh that was deleted.
1774
+ # @return [Types::MeshData]
1132
1775
  #
1133
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualRouterSpec AWS API Documentation
1776
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMeshOutput AWS API Documentation
1134
1777
  #
1135
- class VirtualRouterSpec < Struct.new(
1136
- :service_names)
1778
+ class DeleteMeshOutput < Struct.new(
1779
+ :mesh)
1137
1780
  include Aws::Structure
1138
1781
  end
1139
1782
 
1140
- # @note When making an API call, you may pass UpdateRouteInput
1783
+ # @note When making an API call, you may pass CreateRouteInput
1141
1784
  # data as a hash:
1142
1785
  #
1143
1786
  # {
@@ -1146,16 +1789,16 @@ module Aws::AppMesh
1146
1789
  # route_name: "ResourceName", # required
1147
1790
  # spec: { # required
1148
1791
  # http_route: {
1149
- # action: {
1150
- # weighted_targets: [
1792
+ # action: { # required
1793
+ # weighted_targets: [ # required
1151
1794
  # {
1152
- # virtual_node: "ResourceName",
1153
- # weight: 1,
1795
+ # virtual_node: "ResourceName", # required
1796
+ # weight: 1, # required
1154
1797
  # },
1155
1798
  # ],
1156
1799
  # },
1157
- # match: {
1158
- # prefix: "String",
1800
+ # match: { # required
1801
+ # prefix: "String", # required
1159
1802
  # },
1160
1803
  # },
1161
1804
  # },
@@ -1172,25 +1815,24 @@ module Aws::AppMesh
1172
1815
  # @return [String]
1173
1816
  #
1174
1817
  # @!attribute [rw] mesh_name
1175
- # The name of the service mesh in which the route resides.
1818
+ # The name of the service mesh in which to create the route.
1176
1819
  # @return [String]
1177
1820
  #
1178
1821
  # @!attribute [rw] route_name
1179
- # The name of the route to update.
1822
+ # The name to use for the route.
1180
1823
  # @return [String]
1181
1824
  #
1182
1825
  # @!attribute [rw] spec
1183
- # The new route specification to apply. This overwrites the existing
1184
- # data.
1826
+ # The route specification to apply.
1185
1827
  # @return [Types::RouteSpec]
1186
1828
  #
1187
1829
  # @!attribute [rw] virtual_router_name
1188
- # The name of the virtual router with which the route is associated.
1830
+ # The name of the virtual router in which to create the route.
1189
1831
  # @return [String]
1190
1832
  #
1191
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateRouteInput AWS API Documentation
1833
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRouteInput AWS API Documentation
1192
1834
  #
1193
- class UpdateRouteInput < Struct.new(
1835
+ class CreateRouteInput < Struct.new(
1194
1836
  :client_token,
1195
1837
  :mesh_name,
1196
1838
  :route_name,
@@ -1199,207 +1841,119 @@ module Aws::AppMesh
1199
1841
  include Aws::Structure
1200
1842
  end
1201
1843
 
1202
- # @note When making an API call, you may pass DescribeMeshInput
1203
- # data as a hash:
1204
- #
1205
- # {
1206
- # mesh_name: "ResourceName", # required
1207
- # }
1208
- #
1209
- # @!attribute [rw] mesh_name
1210
- # The name of the service mesh to describe.
1211
- # @return [String]
1212
- #
1213
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeMeshInput AWS API Documentation
1214
- #
1215
- class DescribeMeshInput < Struct.new(
1216
- :mesh_name)
1217
- include Aws::Structure
1218
- end
1219
-
1220
- # @!attribute [rw] mesh
1221
- # The full description of your service mesh.
1222
- # @return [Types::MeshData]
1223
- #
1224
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeMeshOutput AWS API Documentation
1225
- #
1226
- class DescribeMeshOutput < Struct.new(
1227
- :mesh)
1228
- include Aws::Structure
1229
- end
1230
-
1231
- # An object representing a virtual router returned by a describe
1232
- # operation.
1233
- #
1234
- # @!attribute [rw] mesh_name
1235
- # The name of the service mesh in which the virtual router resides.
1236
- # @return [String]
1237
- #
1238
- # @!attribute [rw] metadata
1239
- # The associated metadata for the virtual router.
1240
- # @return [Types::ResourceMetadata]
1241
- #
1242
- # @!attribute [rw] spec
1243
- # The specifications of the virtual router.
1244
- # @return [Types::VirtualRouterSpec]
1245
- #
1246
- # @!attribute [rw] status
1247
- # The current status of the virtual router.
1248
- # @return [Types::VirtualRouterStatus]
1249
- #
1250
- # @!attribute [rw] virtual_router_name
1251
- # The name of the virtual router.
1252
- # @return [String]
1253
- #
1254
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualRouterData AWS API Documentation
1255
- #
1256
- class VirtualRouterData < Struct.new(
1257
- :mesh_name,
1258
- :metadata,
1259
- :spec,
1260
- :status,
1261
- :virtual_router_name)
1262
- include Aws::Structure
1263
- end
1264
-
1265
- # An object representing a listener for a virtual node.
1844
+ # An object representing the provider for a virtual service.
1266
1845
  #
1267
- # @note When making an API call, you may pass Listener
1846
+ # @note When making an API call, you may pass VirtualServiceProvider
1268
1847
  # data as a hash:
1269
1848
  #
1270
1849
  # {
1271
- # health_check: {
1272
- # healthy_threshold: 1, # required
1273
- # interval_millis: 1, # required
1274
- # path: "String",
1275
- # port: 1,
1276
- # protocol: "http", # required, accepts http, tcp
1277
- # timeout_millis: 1, # required
1278
- # unhealthy_threshold: 1, # required
1850
+ # virtual_node: {
1851
+ # virtual_node_name: "ResourceName", # required
1279
1852
  # },
1280
- # port_mapping: {
1281
- # port: 1,
1282
- # protocol: "http", # accepts http, tcp
1853
+ # virtual_router: {
1854
+ # virtual_router_name: "ResourceName", # required
1283
1855
  # },
1284
1856
  # }
1285
1857
  #
1286
- # @!attribute [rw] health_check
1287
- # The health check information for the listener.
1288
- # @return [Types::HealthCheckPolicy]
1858
+ # @!attribute [rw] virtual_node
1859
+ # The virtual node associated with a virtual service.
1860
+ # @return [Types::VirtualNodeServiceProvider]
1289
1861
  #
1290
- # @!attribute [rw] port_mapping
1291
- # The port mapping information for the listener.
1292
- # @return [Types::PortMapping]
1862
+ # @!attribute [rw] virtual_router
1863
+ # The virtual router associated with a virtual service.
1864
+ # @return [Types::VirtualRouterServiceProvider]
1293
1865
  #
1294
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/Listener AWS API Documentation
1866
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualServiceProvider AWS API Documentation
1295
1867
  #
1296
- class Listener < Struct.new(
1297
- :health_check,
1298
- :port_mapping)
1868
+ class VirtualServiceProvider < Struct.new(
1869
+ :virtual_node,
1870
+ :virtual_router)
1299
1871
  include Aws::Structure
1300
1872
  end
1301
1873
 
1302
- # An object representing the health check policy for a virtual node's
1303
- # listener.
1304
- #
1305
- # @note When making an API call, you may pass HealthCheckPolicy
1306
- # data as a hash:
1307
- #
1308
- # {
1309
- # healthy_threshold: 1, # required
1310
- # interval_millis: 1, # required
1311
- # path: "String",
1312
- # port: 1,
1313
- # protocol: "http", # required, accepts http, tcp
1314
- # timeout_millis: 1, # required
1315
- # unhealthy_threshold: 1, # required
1316
- # }
1317
- #
1318
- # @!attribute [rw] healthy_threshold
1319
- # The number of consecutive successful health checks that must occur
1320
- # before declaring listener healthy.
1321
- # @return [Integer]
1322
- #
1323
- # @!attribute [rw] interval_millis
1324
- # The time period in milliseconds between each health check execution.
1325
- # @return [Integer]
1326
- #
1327
- # @!attribute [rw] path
1328
- # The destination path for the health check request. This is only
1329
- # required if the specified protocol is HTTP; if the protocol is TCP,
1330
- # then this parameter is ignored.
1331
- # @return [String]
1332
- #
1333
- # @!attribute [rw] port
1334
- # The destination port for the health check request. This port must
1335
- # match the port defined in the PortMapping for the listener.
1336
- # @return [Integer]
1337
- #
1338
- # @!attribute [rw] protocol
1339
- # The protocol for the health check request.
1340
- # @return [String]
1341
- #
1342
- # @!attribute [rw] timeout_millis
1343
- # The amount of time to wait when receiving a response from the health
1344
- # check, in milliseconds.
1345
- # @return [Integer]
1346
- #
1347
- # @!attribute [rw] unhealthy_threshold
1348
- # The number of consecutive failed health checks that must occur
1349
- # before declaring a virtual node unhealthy.
1350
- # @return [Integer]
1874
+ # @!attribute [rw] virtual_service
1875
+ # A full description of the virtual service that was updated.
1876
+ # @return [Types::VirtualServiceData]
1351
1877
  #
1352
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/HealthCheckPolicy AWS API Documentation
1878
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualServiceOutput AWS API Documentation
1353
1879
  #
1354
- class HealthCheckPolicy < Struct.new(
1355
- :healthy_threshold,
1356
- :interval_millis,
1357
- :path,
1358
- :port,
1359
- :protocol,
1360
- :timeout_millis,
1361
- :unhealthy_threshold)
1880
+ class UpdateVirtualServiceOutput < Struct.new(
1881
+ :virtual_service)
1362
1882
  include Aws::Structure
1363
1883
  end
1364
1884
 
1365
- # @note When making an API call, you may pass ListVirtualRoutersInput
1885
+ # @note When making an API call, you may pass UpdateRouteInput
1366
1886
  # data as a hash:
1367
1887
  #
1368
1888
  # {
1369
- # limit: 1,
1889
+ # client_token: "String",
1370
1890
  # mesh_name: "ResourceName", # required
1371
- # next_token: "String",
1891
+ # route_name: "ResourceName", # required
1892
+ # spec: { # required
1893
+ # http_route: {
1894
+ # action: { # required
1895
+ # weighted_targets: [ # required
1896
+ # {
1897
+ # virtual_node: "ResourceName", # required
1898
+ # weight: 1, # required
1899
+ # },
1900
+ # ],
1901
+ # },
1902
+ # match: { # required
1903
+ # prefix: "String", # required
1904
+ # },
1905
+ # },
1906
+ # },
1907
+ # virtual_router_name: "ResourceName", # required
1372
1908
  # }
1373
1909
  #
1374
- # @!attribute [rw] limit
1375
- # The maximum number of mesh results returned by `ListVirtualRouters`
1376
- # in paginated output. When this parameter is used,
1377
- # `ListVirtualRouters` only returns `limit` results in a single page
1378
- # along with a `nextToken` response element. The remaining results of
1379
- # the initial request can be seen by sending another
1380
- # `ListVirtualRouters` request with the returned `nextToken` value.
1381
- # This value can be between 1 and 100. If this parameter is not used,
1382
- # then `ListVirtualRouters` returns up to 100 results and a
1383
- # `nextToken` value if applicable.
1384
- # @return [Integer]
1910
+ # @!attribute [rw] client_token
1911
+ # Unique, case-sensitive identifier that you provide to ensure the
1912
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
1913
+ # underscores are allowed.
1914
+ #
1915
+ # **A suitable default value is auto-generated.** You should normally
1916
+ # not need to pass this option.
1917
+ # @return [String]
1385
1918
  #
1386
1919
  # @!attribute [rw] mesh_name
1387
- # The name of the service mesh in which to list virtual routers.
1920
+ # The name of the service mesh that the route resides in.
1388
1921
  # @return [String]
1389
1922
  #
1390
- # @!attribute [rw] next_token
1391
- # The `nextToken` value returned from a previous paginated
1392
- # `ListVirtualRouters` request where `limit` was used and the results
1393
- # exceeded the value of that parameter. Pagination continues from the
1394
- # end of the previous results that returned the `nextToken` value.
1923
+ # @!attribute [rw] route_name
1924
+ # The name of the route to update.
1395
1925
  # @return [String]
1396
1926
  #
1397
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListVirtualRoutersInput AWS API Documentation
1927
+ # @!attribute [rw] spec
1928
+ # The new route specification to apply. This overwrites the existing
1929
+ # data.
1930
+ # @return [Types::RouteSpec]
1398
1931
  #
1399
- class ListVirtualRoutersInput < Struct.new(
1400
- :limit,
1932
+ # @!attribute [rw] virtual_router_name
1933
+ # The name of the virtual router that the route is associated with.
1934
+ # @return [String]
1935
+ #
1936
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateRouteInput AWS API Documentation
1937
+ #
1938
+ class UpdateRouteInput < Struct.new(
1939
+ :client_token,
1401
1940
  :mesh_name,
1402
- :next_token)
1941
+ :route_name,
1942
+ :spec,
1943
+ :virtual_router_name)
1944
+ include Aws::Structure
1945
+ end
1946
+
1947
+ # An object representing the status of a service mesh.
1948
+ #
1949
+ # @!attribute [rw] status
1950
+ # The current mesh status.
1951
+ # @return [String]
1952
+ #
1953
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/MeshStatus AWS API Documentation
1954
+ #
1955
+ class MeshStatus < Struct.new(
1956
+ :status)
1403
1957
  include Aws::Structure
1404
1958
  end
1405
1959
 
@@ -1410,7 +1964,13 @@ module Aws::AppMesh
1410
1964
  # client_token: "String",
1411
1965
  # mesh_name: "ResourceName", # required
1412
1966
  # spec: { # required
1413
- # backends: ["ServiceName"],
1967
+ # backends: [
1968
+ # {
1969
+ # virtual_service: {
1970
+ # virtual_service_name: "ServiceName", # required
1971
+ # },
1972
+ # },
1973
+ # ],
1414
1974
  # listeners: [
1415
1975
  # {
1416
1976
  # health_check: {
@@ -1422,15 +1982,15 @@ module Aws::AppMesh
1422
1982
  # timeout_millis: 1, # required
1423
1983
  # unhealthy_threshold: 1, # required
1424
1984
  # },
1425
- # port_mapping: {
1426
- # port: 1,
1427
- # protocol: "http", # accepts http, tcp
1985
+ # port_mapping: { # required
1986
+ # port: 1, # required
1987
+ # protocol: "http", # required, accepts http, tcp
1428
1988
  # },
1429
1989
  # },
1430
1990
  # ],
1431
1991
  # service_discovery: {
1432
1992
  # dns: {
1433
- # service_name: "ServiceName",
1993
+ # hostname: "Hostname", # required
1434
1994
  # },
1435
1995
  # },
1436
1996
  # },
@@ -1458,7 +2018,7 @@ module Aws::AppMesh
1458
2018
  # The name to use for the virtual node.
1459
2019
  # @return [String]
1460
2020
  #
1461
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateVirtualNodeInput AWS API Documentation
2021
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualNodeInput AWS API Documentation
1462
2022
  #
1463
2023
  class CreateVirtualNodeInput < Struct.new(
1464
2024
  :client_token,
@@ -1468,235 +2028,208 @@ module Aws::AppMesh
1468
2028
  include Aws::Structure
1469
2029
  end
1470
2030
 
1471
- # An object representing a service mesh returned by a describe
1472
- # operation.
2031
+ # An object representing the specification of a route.
1473
2032
  #
1474
- # @!attribute [rw] mesh_name
1475
- # The name of the service mesh.
1476
- # @return [String]
2033
+ # @note When making an API call, you may pass RouteSpec
2034
+ # data as a hash:
1477
2035
  #
1478
- # @!attribute [rw] metadata
1479
- # The associated metadata for the service mesh.
1480
- # @return [Types::ResourceMetadata]
2036
+ # {
2037
+ # http_route: {
2038
+ # action: { # required
2039
+ # weighted_targets: [ # required
2040
+ # {
2041
+ # virtual_node: "ResourceName", # required
2042
+ # weight: 1, # required
2043
+ # },
2044
+ # ],
2045
+ # },
2046
+ # match: { # required
2047
+ # prefix: "String", # required
2048
+ # },
2049
+ # },
2050
+ # }
1481
2051
  #
1482
- # @!attribute [rw] status
1483
- # The status of the service mesh.
1484
- # @return [Types::MeshStatus]
2052
+ # @!attribute [rw] http_route
2053
+ # The HTTP routing information for the route.
2054
+ # @return [Types::HttpRoute]
1485
2055
  #
1486
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/MeshData AWS API Documentation
2056
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/RouteSpec AWS API Documentation
1487
2057
  #
1488
- class MeshData < Struct.new(
1489
- :mesh_name,
1490
- :metadata,
1491
- :status)
2058
+ class RouteSpec < Struct.new(
2059
+ :http_route)
1492
2060
  include Aws::Structure
1493
2061
  end
1494
2062
 
1495
- # @note When making an API call, you may pass DeleteMeshInput
2063
+ # An object representing the HTTP routing specification for a route.
2064
+ #
2065
+ # @note When making an API call, you may pass HttpRoute
1496
2066
  # data as a hash:
1497
2067
  #
1498
2068
  # {
1499
- # mesh_name: "ResourceName", # required
2069
+ # action: { # required
2070
+ # weighted_targets: [ # required
2071
+ # {
2072
+ # virtual_node: "ResourceName", # required
2073
+ # weight: 1, # required
2074
+ # },
2075
+ # ],
2076
+ # },
2077
+ # match: { # required
2078
+ # prefix: "String", # required
2079
+ # },
1500
2080
  # }
1501
2081
  #
1502
- # @!attribute [rw] mesh_name
1503
- # The name of the service mesh to delete.
1504
- # @return [String]
2082
+ # @!attribute [rw] action
2083
+ # The action to take if a match is determined.
2084
+ # @return [Types::HttpRouteAction]
1505
2085
  #
1506
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteMeshInput AWS API Documentation
2086
+ # @!attribute [rw] match
2087
+ # The criteria for determining an HTTP request match.
2088
+ # @return [Types::HttpRouteMatch]
1507
2089
  #
1508
- class DeleteMeshInput < Struct.new(
1509
- :mesh_name)
2090
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/HttpRoute AWS API Documentation
2091
+ #
2092
+ class HttpRoute < Struct.new(
2093
+ :action,
2094
+ :match)
1510
2095
  include Aws::Structure
1511
2096
  end
1512
2097
 
1513
- # An object representing the requirements for a route to match HTTP
1514
- # requests for a virtual router.
1515
- #
1516
- # @note When making an API call, you may pass HttpRouteMatch
2098
+ # @note When making an API call, you may pass DescribeMeshInput
1517
2099
  # data as a hash:
1518
2100
  #
1519
2101
  # {
1520
- # prefix: "String",
2102
+ # mesh_name: "ResourceName", # required
1521
2103
  # }
1522
2104
  #
1523
- # @!attribute [rw] prefix
1524
- # Specifies the path with which to match requests. This parameter must
1525
- # always start with `/`, which by itself matches all requests to the
1526
- # virtual router service name. You can also match for path-based
1527
- # routing of requests. For example, if your virtual router service
1528
- # name is `my-service.local`, and you want the route to match requests
1529
- # to `my-service.local/metrics`, then your prefix should be
1530
- # `/metrics`.
2105
+ # @!attribute [rw] mesh_name
2106
+ # The name of the service mesh to describe.
1531
2107
  # @return [String]
1532
2108
  #
1533
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/HttpRouteMatch AWS API Documentation
2109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMeshInput AWS API Documentation
1534
2110
  #
1535
- class HttpRouteMatch < Struct.new(
1536
- :prefix)
2111
+ class DescribeMeshInput < Struct.new(
2112
+ :mesh_name)
1537
2113
  include Aws::Structure
1538
2114
  end
1539
2115
 
1540
- # @!attribute [rw] route
1541
- # The route that was deleted.
1542
- # @return [Types::RouteData]
2116
+ # @!attribute [rw] virtual_service
2117
+ # The full description of your virtual service following the create
2118
+ # call.
2119
+ # @return [Types::VirtualServiceData]
1543
2120
  #
1544
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteRouteOutput AWS API Documentation
2121
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualServiceOutput AWS API Documentation
1545
2122
  #
1546
- class DeleteRouteOutput < Struct.new(
1547
- :route)
2123
+ class CreateVirtualServiceOutput < Struct.new(
2124
+ :virtual_service)
1548
2125
  include Aws::Structure
1549
2126
  end
1550
2127
 
1551
- # @note When making an API call, you may pass CreateRouteInput
2128
+ # An object representing a virtual node service provider.
2129
+ #
2130
+ # @note When making an API call, you may pass VirtualRouterServiceProvider
1552
2131
  # data as a hash:
1553
2132
  #
1554
2133
  # {
1555
- # client_token: "String",
1556
- # mesh_name: "ResourceName", # required
1557
- # route_name: "ResourceName", # required
1558
- # spec: { # required
1559
- # http_route: {
1560
- # action: {
1561
- # weighted_targets: [
1562
- # {
1563
- # virtual_node: "ResourceName",
1564
- # weight: 1,
1565
- # },
1566
- # ],
1567
- # },
1568
- # match: {
1569
- # prefix: "String",
1570
- # },
1571
- # },
1572
- # },
1573
2134
  # virtual_router_name: "ResourceName", # required
1574
2135
  # }
1575
2136
  #
1576
- # @!attribute [rw] client_token
1577
- # Unique, case-sensitive identifier that you provide to ensure the
1578
- # idempotency of the request. Up to 36 letters, numbers, hyphens, and
1579
- # underscores are allowed.
1580
- #
1581
- # **A suitable default value is auto-generated.** You should normally
1582
- # not need to pass this option.
1583
- # @return [String]
1584
- #
1585
- # @!attribute [rw] mesh_name
1586
- # The name of the service mesh in which to create the route.
1587
- # @return [String]
1588
- #
1589
- # @!attribute [rw] route_name
1590
- # The name to use for the route.
1591
- # @return [String]
1592
- #
1593
- # @!attribute [rw] spec
1594
- # The route specification to apply.
1595
- # @return [Types::RouteSpec]
1596
- #
1597
2137
  # @!attribute [rw] virtual_router_name
1598
- # The name of the virtual router in which to create the route.
2138
+ # The name of the virtual router that is acting as a service provider.
1599
2139
  # @return [String]
1600
2140
  #
1601
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateRouteInput AWS API Documentation
2141
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterServiceProvider AWS API Documentation
1602
2142
  #
1603
- class CreateRouteInput < Struct.new(
1604
- :client_token,
1605
- :mesh_name,
1606
- :route_name,
1607
- :spec,
2143
+ class VirtualRouterServiceProvider < Struct.new(
1608
2144
  :virtual_router_name)
1609
2145
  include Aws::Structure
1610
2146
  end
1611
2147
 
1612
- # An object representing the current status of the virtual node.
1613
- #
1614
- # @!attribute [rw] status
1615
- # The current status of the virtual node.
1616
- # @return [String]
1617
- #
1618
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualNodeStatus AWS API Documentation
1619
- #
1620
- class VirtualNodeStatus < Struct.new(
1621
- :status)
1622
- include Aws::Structure
1623
- end
1624
-
1625
- # @note When making an API call, you may pass ListVirtualNodesInput
2148
+ # @note When making an API call, you may pass DeleteVirtualServiceInput
1626
2149
  # data as a hash:
1627
2150
  #
1628
2151
  # {
1629
- # limit: 1,
1630
2152
  # mesh_name: "ResourceName", # required
1631
- # next_token: "String",
2153
+ # virtual_service_name: "ServiceName", # required
1632
2154
  # }
1633
2155
  #
1634
- # @!attribute [rw] limit
1635
- # The maximum number of mesh results returned by `ListVirtualNodes` in
1636
- # paginated output. When this parameter is used, `ListVirtualNodes`
1637
- # only returns `limit` results in a single page along with a
1638
- # `nextToken` response element. The remaining results of the initial
1639
- # request can be seen by sending another `ListVirtualNodes` request
1640
- # with the returned `nextToken` value. This value can be between 1 and
1641
- # 100. If this parameter is not used, then `ListVirtualNodes` returns
1642
- # up to 100 results and a `nextToken` value if applicable.
1643
- # @return [Integer]
1644
- #
1645
2156
  # @!attribute [rw] mesh_name
1646
- # The name of the service mesh in which to list virtual nodes.
2157
+ # The name of the service mesh to delete the virtual service in.
1647
2158
  # @return [String]
1648
2159
  #
1649
- # @!attribute [rw] next_token
1650
- # The `nextToken` value returned from a previous paginated
1651
- # `ListVirtualNodes` request where `limit` was used and the results
1652
- # exceeded the value of that parameter. Pagination continues from the
1653
- # end of the previous results that returned the `nextToken` value.
2160
+ # @!attribute [rw] virtual_service_name
2161
+ # The name of the virtual service to delete.
1654
2162
  # @return [String]
1655
2163
  #
1656
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListVirtualNodesInput AWS API Documentation
2164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualServiceInput AWS API Documentation
1657
2165
  #
1658
- class ListVirtualNodesInput < Struct.new(
1659
- :limit,
2166
+ class DeleteVirtualServiceInput < Struct.new(
1660
2167
  :mesh_name,
1661
- :next_token)
2168
+ :virtual_service_name)
1662
2169
  include Aws::Structure
1663
2170
  end
1664
2171
 
1665
- # An object representing a route returned by a list operation.
2172
+ # An object representing the service discovery information for a virtual
2173
+ # node.
1666
2174
  #
1667
- # @!attribute [rw] arn
1668
- # The full Amazon Resource Name (ARN) for the route.
1669
- # @return [String]
2175
+ # @note When making an API call, you may pass ServiceDiscovery
2176
+ # data as a hash:
1670
2177
  #
1671
- # @!attribute [rw] mesh_name
1672
- # The name of the service mesh in which the route resides.
1673
- # @return [String]
2178
+ # {
2179
+ # dns: {
2180
+ # hostname: "Hostname", # required
2181
+ # },
2182
+ # }
1674
2183
  #
1675
- # @!attribute [rw] route_name
1676
- # The name of the route.
1677
- # @return [String]
2184
+ # @!attribute [rw] dns
2185
+ # Specifies the DNS information for the virtual node.
2186
+ # @return [Types::DnsServiceDiscovery]
1678
2187
  #
1679
- # @!attribute [rw] virtual_router_name
1680
- # The virtual router with which the route is associated.
2188
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ServiceDiscovery AWS API Documentation
2189
+ #
2190
+ class ServiceDiscovery < Struct.new(
2191
+ :dns)
2192
+ include Aws::Structure
2193
+ end
2194
+
2195
+ # @!attribute [rw] next_token
2196
+ # The `nextToken` value to include in a future `ListVirtualNodes`
2197
+ # request. When the results of a `ListVirtualNodes` request exceed
2198
+ # `limit`, you can use this value to retrieve the next page of
2199
+ # results. This value is `null` when there are no more results to
2200
+ # return.
1681
2201
  # @return [String]
1682
2202
  #
1683
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/RouteRef AWS API Documentation
2203
+ # @!attribute [rw] virtual_nodes
2204
+ # The list of existing virtual nodes for the specified service mesh.
2205
+ # @return [Array<Types::VirtualNodeRef>]
2206
+ #
2207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualNodesOutput AWS API Documentation
1684
2208
  #
1685
- class RouteRef < Struct.new(
1686
- :arn,
1687
- :mesh_name,
1688
- :route_name,
1689
- :virtual_router_name)
2209
+ class ListVirtualNodesOutput < Struct.new(
2210
+ :next_token,
2211
+ :virtual_nodes)
2212
+ include Aws::Structure
2213
+ end
2214
+
2215
+ # @!attribute [rw] virtual_router
2216
+ # The virtual router that was deleted.
2217
+ # @return [Types::VirtualRouterData]
2218
+ #
2219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouterOutput AWS API Documentation
2220
+ #
2221
+ class DeleteVirtualRouterOutput < Struct.new(
2222
+ :virtual_router)
1690
2223
  include Aws::Structure
1691
2224
  end
1692
2225
 
1693
2226
  # @!attribute [rw] virtual_node
1694
- # A full description of the virtual node that was updated.
2227
+ # The virtual node that was deleted.
1695
2228
  # @return [Types::VirtualNodeData]
1696
2229
  #
1697
- # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateVirtualNodeOutput AWS API Documentation
2230
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualNodeOutput AWS API Documentation
1698
2231
  #
1699
- class UpdateVirtualNodeOutput < Struct.new(
2232
+ class DeleteVirtualNodeOutput < Struct.new(
1700
2233
  :virtual_node)
1701
2234
  include Aws::Structure
1702
2235
  end