aws-sdk-appmesh 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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