aws-sdk-appmesh 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
File without changes
@@ -0,0 +1,14 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::AppMesh
9
+ module Errors
10
+
11
+ extend Aws::Errors::DynamicErrors
12
+
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::AppMesh
9
+ class Resource
10
+
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
16
+
17
+ # @return [Client]
18
+ def client
19
+ @client
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,1711 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::AppMesh
9
+ module Types
10
+
11
+ # @!attribute [rw] mesh
12
+ # The service mesh that was deleted.
13
+ # @return [Types::MeshData]
14
+ #
15
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteMeshOutput AWS API Documentation
16
+ #
17
+ class DeleteMeshOutput < Struct.new(
18
+ :mesh)
19
+ include Aws::Structure
20
+ end
21
+
22
+ # @!attribute [rw] virtual_router
23
+ # A full description of the virtual router that was updated.
24
+ # @return [Types::VirtualRouterData]
25
+ #
26
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateVirtualRouterOutput AWS API Documentation
27
+ #
28
+ class UpdateVirtualRouterOutput < Struct.new(
29
+ :virtual_router)
30
+ include Aws::Structure
31
+ end
32
+
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
39
+ # data as a hash:
40
+ #
41
+ # {
42
+ # virtual_node: "ResourceName",
43
+ # weight: 1,
44
+ # }
45
+ #
46
+ # @!attribute [rw] virtual_node
47
+ # The virtual node to associate with the weighted target.
48
+ # @return [String]
49
+ #
50
+ # @!attribute [rw] weight
51
+ # The relative weight of the weighted target.
52
+ # @return [Integer]
53
+ #
54
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/WeightedTarget AWS API Documentation
55
+ #
56
+ class WeightedTarget < Struct.new(
57
+ :virtual_node,
58
+ :weight)
59
+ include Aws::Structure
60
+ end
61
+
62
+ # @!attribute [rw] route
63
+ # The full description of your mesh following the create call.
64
+ # @return [Types::RouteData]
65
+ #
66
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateRouteOutput AWS API Documentation
67
+ #
68
+ class CreateRouteOutput < Struct.new(
69
+ :route)
70
+ include Aws::Structure
71
+ end
72
+
73
+ # @note When making an API call, you may pass DeleteVirtualNodeInput
74
+ # data as a hash:
75
+ #
76
+ # {
77
+ # mesh_name: "ResourceName", # required
78
+ # virtual_node_name: "ResourceName", # required
79
+ # }
80
+ #
81
+ # @!attribute [rw] mesh_name
82
+ # The name of the service mesh in which to delete the virtual node.
83
+ # @return [String]
84
+ #
85
+ # @!attribute [rw] virtual_node_name
86
+ # The name of the virtual node to delete.
87
+ # @return [String]
88
+ #
89
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteVirtualNodeInput AWS API Documentation
90
+ #
91
+ class DeleteVirtualNodeInput < Struct.new(
92
+ :mesh_name,
93
+ :virtual_node_name)
94
+ include Aws::Structure
95
+ end
96
+
97
+ # The DNS service discovery information for your virtual node.
98
+ #
99
+ # @note When making an API call, you may pass DnsServiceDiscovery
100
+ # data as a hash:
101
+ #
102
+ # {
103
+ # service_name: "ServiceName",
104
+ # }
105
+ #
106
+ # @!attribute [rw] service_name
107
+ # The DNS service name for your virtual node.
108
+ # @return [String]
109
+ #
110
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DnsServiceDiscovery AWS API Documentation
111
+ #
112
+ class DnsServiceDiscovery < Struct.new(
113
+ :service_name)
114
+ include Aws::Structure
115
+ end
116
+
117
+ # An object representing a virtual node returned by a list operation.
118
+ #
119
+ # @!attribute [rw] arn
120
+ # The full Amazon Resource Name (ARN) for the virtual node.
121
+ # @return [String]
122
+ #
123
+ # @!attribute [rw] mesh_name
124
+ # The name of the service mesh in which the virtual node resides.
125
+ # @return [String]
126
+ #
127
+ # @!attribute [rw] virtual_node_name
128
+ # The name of the virtual node.
129
+ # @return [String]
130
+ #
131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualNodeRef AWS API Documentation
132
+ #
133
+ class VirtualNodeRef < Struct.new(
134
+ :arn,
135
+ :mesh_name,
136
+ :virtual_node_name)
137
+ include Aws::Structure
138
+ end
139
+
140
+ # @!attribute [rw] route
141
+ # The full description of your route.
142
+ # @return [Types::RouteData]
143
+ #
144
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeRouteOutput AWS API Documentation
145
+ #
146
+ class DescribeRouteOutput < Struct.new(
147
+ :route)
148
+ include Aws::Structure
149
+ end
150
+
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]
166
+ #
167
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ServiceDiscovery AWS API Documentation
168
+ #
169
+ class ServiceDiscovery < Struct.new(
170
+ :dns)
171
+ include Aws::Structure
172
+ end
173
+
174
+ # An object representing the status of a service mesh.
175
+ #
176
+ # @!attribute [rw] status
177
+ # The current mesh status.
178
+ # @return [String]
179
+ #
180
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/MeshStatus AWS API Documentation
181
+ #
182
+ class MeshStatus < Struct.new(
183
+ :status)
184
+ include Aws::Structure
185
+ end
186
+
187
+ # An object representing a virtual node returned by a describe
188
+ # operation.
189
+ #
190
+ # @!attribute [rw] mesh_name
191
+ # The name of the service mesh in which the virtual node resides.
192
+ # @return [String]
193
+ #
194
+ # @!attribute [rw] metadata
195
+ # The associated metadata for the virtual node.
196
+ # @return [Types::ResourceMetadata]
197
+ #
198
+ # @!attribute [rw] spec
199
+ # The specifications of the virtual node.
200
+ # @return [Types::VirtualNodeSpec]
201
+ #
202
+ # @!attribute [rw] status
203
+ # The current status for the virtual node.
204
+ # @return [Types::VirtualNodeStatus]
205
+ #
206
+ # @!attribute [rw] virtual_node_name
207
+ # The name of the virtual node.
208
+ # @return [String]
209
+ #
210
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualNodeData AWS API Documentation
211
+ #
212
+ class VirtualNodeData < Struct.new(
213
+ :mesh_name,
214
+ :metadata,
215
+ :spec,
216
+ :status,
217
+ :virtual_node_name)
218
+ include Aws::Structure
219
+ end
220
+
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,
232
+ # interval_millis: 1,
233
+ # path: "String",
234
+ # port: 1,
235
+ # protocol: "http", # accepts http, tcp
236
+ # timeout_millis: 1,
237
+ # unhealthy_threshold: 1,
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
267
+ #
268
+ class VirtualNodeSpec < Struct.new(
269
+ :backends,
270
+ :listeners,
271
+ :service_discovery)
272
+ include Aws::Structure
273
+ end
274
+
275
+ # An object representing a service mesh returned by a list operation.
276
+ #
277
+ # @!attribute [rw] arn
278
+ # The full Amazon Resource Name (ARN) of the service mesh.
279
+ # @return [String]
280
+ #
281
+ # @!attribute [rw] mesh_name
282
+ # The name of the service mesh.
283
+ # @return [String]
284
+ #
285
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/MeshRef AWS API Documentation
286
+ #
287
+ class MeshRef < Struct.new(
288
+ :arn,
289
+ :mesh_name)
290
+ include Aws::Structure
291
+ end
292
+
293
+ # @note When making an API call, you may pass DescribeVirtualRouterInput
294
+ # data as a hash:
295
+ #
296
+ # {
297
+ # mesh_name: "ResourceName", # required
298
+ # virtual_router_name: "ResourceName", # required
299
+ # }
300
+ #
301
+ # @!attribute [rw] mesh_name
302
+ # The name of the service mesh in which the virtual router resides.
303
+ # @return [String]
304
+ #
305
+ # @!attribute [rw] virtual_router_name
306
+ # The name of the virtual router to describe.
307
+ # @return [String]
308
+ #
309
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeVirtualRouterInput AWS API Documentation
310
+ #
311
+ class DescribeVirtualRouterInput < Struct.new(
312
+ :mesh_name,
313
+ :virtual_router_name)
314
+ include Aws::Structure
315
+ end
316
+
317
+ # @!attribute [rw] virtual_router
318
+ # The full description of your virtual router.
319
+ # @return [Types::VirtualRouterData]
320
+ #
321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeVirtualRouterOutput AWS API Documentation
322
+ #
323
+ class DescribeVirtualRouterOutput < Struct.new(
324
+ :virtual_router)
325
+ include Aws::Structure
326
+ end
327
+
328
+ # @!attribute [rw] route
329
+ # A full description of the route that was updated.
330
+ # @return [Types::RouteData]
331
+ #
332
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateRouteOutput AWS API Documentation
333
+ #
334
+ class UpdateRouteOutput < Struct.new(
335
+ :route)
336
+ include Aws::Structure
337
+ end
338
+
339
+ # An object representing the traffic distribution requirements for
340
+ # matched HTTP requests.
341
+ #
342
+ # @note When making an API call, you may pass HttpRouteAction
343
+ # data as a hash:
344
+ #
345
+ # {
346
+ # weighted_targets: [
347
+ # {
348
+ # virtual_node: "ResourceName",
349
+ # weight: 1,
350
+ # },
351
+ # ],
352
+ # }
353
+ #
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>]
359
+ #
360
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/HttpRouteAction AWS API Documentation
361
+ #
362
+ class HttpRouteAction < Struct.new(
363
+ :weighted_targets)
364
+ include Aws::Structure
365
+ end
366
+
367
+ # @!attribute [rw] virtual_router
368
+ # The full description of your virtual router following the create
369
+ # call.
370
+ # @return [Types::VirtualRouterData]
371
+ #
372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateVirtualRouterOutput AWS API Documentation
373
+ #
374
+ class CreateVirtualRouterOutput < Struct.new(
375
+ :virtual_router)
376
+ include Aws::Structure
377
+ end
378
+
379
+ # @note When making an API call, you may pass CreateVirtualRouterInput
380
+ # data as a hash:
381
+ #
382
+ # {
383
+ # client_token: "String",
384
+ # mesh_name: "ResourceName", # required
385
+ # spec: { # required
386
+ # service_names: ["ServiceName"],
387
+ # },
388
+ # virtual_router_name: "ResourceName", # required
389
+ # }
390
+ #
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.
395
+ #
396
+ # **A suitable default value is auto-generated.** You should normally
397
+ # not need to pass this option.
398
+ # @return [String]
399
+ #
400
+ # @!attribute [rw] mesh_name
401
+ # The name of the service mesh in which to create the virtual router.
402
+ # @return [String]
403
+ #
404
+ # @!attribute [rw] spec
405
+ # The virtual router specification to apply.
406
+ # @return [Types::VirtualRouterSpec]
407
+ #
408
+ # @!attribute [rw] virtual_router_name
409
+ # The name to use for the virtual router.
410
+ # @return [String]
411
+ #
412
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateVirtualRouterInput AWS API Documentation
413
+ #
414
+ class CreateVirtualRouterInput < Struct.new(
415
+ :client_token,
416
+ :mesh_name,
417
+ :spec,
418
+ :virtual_router_name)
419
+ include Aws::Structure
420
+ end
421
+
422
+ # An object representing the current status of a route.
423
+ #
424
+ # @!attribute [rw] status
425
+ # The current status for the route.
426
+ # @return [String]
427
+ #
428
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/RouteStatus AWS API Documentation
429
+ #
430
+ class RouteStatus < Struct.new(
431
+ :status)
432
+ include Aws::Structure
433
+ end
434
+
435
+ # @note When making an API call, you may pass ListMeshesInput
436
+ # data as a hash:
437
+ #
438
+ # {
439
+ # limit: 1,
440
+ # next_token: "String",
441
+ # }
442
+ #
443
+ # @!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.
452
+ # @return [Integer]
453
+ #
454
+ # @!attribute [rw] next_token
455
+ # The `nextToken` value returned from a previous paginated
456
+ # `ListMeshes` request where `limit` was used and the results exceeded
457
+ # the value of that parameter. Pagination continues from the end of
458
+ # the previous results that returned the `nextToken` value.
459
+ #
460
+ # <note markdown="1"> This token should be treated as an opaque identifier that is only
461
+ # used to retrieve the next items in a list and not for other
462
+ # programmatic purposes.
463
+ #
464
+ # </note>
465
+ # @return [String]
466
+ #
467
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListMeshesInput AWS API Documentation
468
+ #
469
+ class ListMeshesInput < Struct.new(
470
+ :limit,
471
+ :next_token)
472
+ include Aws::Structure
473
+ end
474
+
475
+ # An object representing the status of a virtual router.
476
+ #
477
+ # @!attribute [rw] status
478
+ # The current status of the virtual router.
479
+ # @return [String]
480
+ #
481
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualRouterStatus AWS API Documentation
482
+ #
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>]
491
+ #
492
+ # @!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.
497
+ # @return [String]
498
+ #
499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListMeshesOutput AWS API Documentation
500
+ #
501
+ class ListMeshesOutput < Struct.new(
502
+ :meshes,
503
+ :next_token)
504
+ include Aws::Structure
505
+ end
506
+
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.
530
+ #
531
+ # @!attribute [rw] mesh_name
532
+ # The name of the service mesh in which the route resides.
533
+ # @return [String]
534
+ #
535
+ # @!attribute [rw] metadata
536
+ # The associated metadata for the route.
537
+ # @return [Types::ResourceMetadata]
538
+ #
539
+ # @!attribute [rw] route_name
540
+ # The name of the route.
541
+ # @return [String]
542
+ #
543
+ # @!attribute [rw] spec
544
+ # The specifications of the route.
545
+ # @return [Types::RouteSpec]
546
+ #
547
+ # @!attribute [rw] status
548
+ # The status of the route.
549
+ # @return [Types::RouteStatus]
550
+ #
551
+ # @!attribute [rw] virtual_router_name
552
+ # The virtual router with which the route is associated.
553
+ # @return [String]
554
+ #
555
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/RouteData AWS API Documentation
556
+ #
557
+ class RouteData < Struct.new(
558
+ :mesh_name,
559
+ :metadata,
560
+ :route_name,
561
+ :spec,
562
+ :status,
563
+ :virtual_router_name)
564
+ include Aws::Structure
565
+ end
566
+
567
+ # @note When making an API call, you may pass UpdateVirtualNodeInput
568
+ # data as a hash:
569
+ #
570
+ # {
571
+ # client_token: "String",
572
+ # mesh_name: "ResourceName", # required
573
+ # spec: { # required
574
+ # backends: ["ServiceName"],
575
+ # listeners: [
576
+ # {
577
+ # health_check: {
578
+ # healthy_threshold: 1,
579
+ # interval_millis: 1,
580
+ # path: "String",
581
+ # port: 1,
582
+ # protocol: "http", # accepts http, tcp
583
+ # timeout_millis: 1,
584
+ # unhealthy_threshold: 1,
585
+ # },
586
+ # port_mapping: {
587
+ # port: 1,
588
+ # protocol: "http", # accepts http, tcp
589
+ # },
590
+ # },
591
+ # ],
592
+ # service_discovery: {
593
+ # dns: {
594
+ # service_name: "ServiceName",
595
+ # },
596
+ # },
597
+ # },
598
+ # virtual_node_name: "ResourceName", # required
599
+ # }
600
+ #
601
+ # @!attribute [rw] client_token
602
+ # Unique, case-sensitive identifier that you provide to ensure the
603
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
604
+ # underscores are allowed.
605
+ #
606
+ # **A suitable default value is auto-generated.** You should normally
607
+ # not need to pass this option.
608
+ # @return [String]
609
+ #
610
+ # @!attribute [rw] mesh_name
611
+ # The name of the service mesh in which the virtual node resides.
612
+ # @return [String]
613
+ #
614
+ # @!attribute [rw] spec
615
+ # The new virtual node specification to apply. This overwrites the
616
+ # existing data.
617
+ # @return [Types::VirtualNodeSpec]
618
+ #
619
+ # @!attribute [rw] virtual_node_name
620
+ # The name of the virtual node to update.
621
+ # @return [String]
622
+ #
623
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateVirtualNodeInput AWS API Documentation
624
+ #
625
+ class UpdateVirtualNodeInput < Struct.new(
626
+ :client_token,
627
+ :mesh_name,
628
+ :spec,
629
+ :virtual_node_name)
630
+ include Aws::Structure
631
+ end
632
+
633
+ # @note When making an API call, you may pass DeleteRouteInput
634
+ # data as a hash:
635
+ #
636
+ # {
637
+ # mesh_name: "ResourceName", # required
638
+ # route_name: "ResourceName", # required
639
+ # virtual_router_name: "ResourceName", # required
640
+ # }
641
+ #
642
+ # @!attribute [rw] mesh_name
643
+ # The name of the service mesh in which to delete the route.
644
+ # @return [String]
645
+ #
646
+ # @!attribute [rw] route_name
647
+ # The name of the route to delete.
648
+ # @return [String]
649
+ #
650
+ # @!attribute [rw] virtual_router_name
651
+ # The name of the virtual router in which to delete the route.
652
+ # @return [String]
653
+ #
654
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteRouteInput AWS API Documentation
655
+ #
656
+ class DeleteRouteInput < Struct.new(
657
+ :mesh_name,
658
+ :route_name,
659
+ :virtual_router_name)
660
+ include Aws::Structure
661
+ end
662
+
663
+ # @note When making an API call, you may pass ListRoutesInput
664
+ # data as a hash:
665
+ #
666
+ # {
667
+ # limit: 1,
668
+ # mesh_name: "ResourceName", # required
669
+ # next_token: "String",
670
+ # virtual_router_name: "ResourceName", # required
671
+ # }
672
+ #
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]
683
+ #
684
+ # @!attribute [rw] mesh_name
685
+ # The name of the service mesh in which to list routes.
686
+ # @return [String]
687
+ #
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]
694
+ #
695
+ # @!attribute [rw] virtual_router_name
696
+ # The name of the virtual router in which to list routes.
697
+ # @return [String]
698
+ #
699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListRoutesInput AWS API Documentation
700
+ #
701
+ class ListRoutesInput < Struct.new(
702
+ :limit,
703
+ :mesh_name,
704
+ :next_token,
705
+ :virtual_router_name)
706
+ include Aws::Structure
707
+ end
708
+
709
+ # An object representing the HTTP routing specification for a route.
710
+ #
711
+ # @note When making an API call, you may pass HttpRoute
712
+ # data as a hash:
713
+ #
714
+ # {
715
+ # action: {
716
+ # weighted_targets: [
717
+ # {
718
+ # virtual_node: "ResourceName",
719
+ # weight: 1,
720
+ # },
721
+ # ],
722
+ # },
723
+ # match: {
724
+ # prefix: "String",
725
+ # },
726
+ # }
727
+ #
728
+ # @!attribute [rw] action
729
+ # The action to take if a match is determined.
730
+ # @return [Types::HttpRouteAction]
731
+ #
732
+ # @!attribute [rw] match
733
+ # The criteria for determining an HTTP request match.
734
+ # @return [Types::HttpRouteMatch]
735
+ #
736
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/HttpRoute AWS API Documentation
737
+ #
738
+ class HttpRoute < Struct.new(
739
+ :action,
740
+ :match)
741
+ include Aws::Structure
742
+ end
743
+
744
+ # @!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.
749
+ # @return [String]
750
+ #
751
+ # @!attribute [rw] routes
752
+ # The list of existing routes for the specified service mesh and
753
+ # virtual router.
754
+ # @return [Array<Types::RouteRef>]
755
+ #
756
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListRoutesOutput AWS API Documentation
757
+ #
758
+ class ListRoutesOutput < Struct.new(
759
+ :next_token,
760
+ :routes)
761
+ include Aws::Structure
762
+ end
763
+
764
+ # An object representing the specification of a route.
765
+ #
766
+ # @note When making an API call, you may pass RouteSpec
767
+ # data as a hash:
768
+ #
769
+ # {
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
+ # },
783
+ # }
784
+ #
785
+ # @!attribute [rw] http_route
786
+ # The HTTP routing information for the route.
787
+ # @return [Types::HttpRoute]
788
+ #
789
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/RouteSpec AWS API Documentation
790
+ #
791
+ class RouteSpec < Struct.new(
792
+ :http_route)
793
+ include Aws::Structure
794
+ end
795
+
796
+ # @note When making an API call, you may pass DescribeVirtualNodeInput
797
+ # data as a hash:
798
+ #
799
+ # {
800
+ # mesh_name: "ResourceName", # required
801
+ # virtual_node_name: "ResourceName", # required
802
+ # }
803
+ #
804
+ # @!attribute [rw] mesh_name
805
+ # The name of the service mesh in which the virtual node resides.
806
+ # @return [String]
807
+ #
808
+ # @!attribute [rw] virtual_node_name
809
+ # The name of the virtual node to describe.
810
+ # @return [String]
811
+ #
812
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeVirtualNodeInput AWS API Documentation
813
+ #
814
+ class DescribeVirtualNodeInput < Struct.new(
815
+ :mesh_name,
816
+ :virtual_node_name)
817
+ include Aws::Structure
818
+ end
819
+
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]
825
+ #
826
+ # @!attribute [rw] mesh_name
827
+ # The name of the service mesh in which the virtual router resides.
828
+ # @return [String]
829
+ #
830
+ # @!attribute [rw] virtual_router_name
831
+ # The name of the virtual router.
832
+ # @return [String]
833
+ #
834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualRouterRef AWS API Documentation
835
+ #
836
+ class VirtualRouterRef < Struct.new(
837
+ :arn,
838
+ :mesh_name,
839
+ :virtual_router_name)
840
+ include Aws::Structure
841
+ end
842
+
843
+ # @!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
847
+ # results. This value is `null` when there are no more results to
848
+ # return.
849
+ # @return [String]
850
+ #
851
+ # @!attribute [rw] virtual_nodes
852
+ # The list of existing virtual nodes for the specified service mesh.
853
+ # @return [Array<Types::VirtualNodeRef>]
854
+ #
855
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListVirtualNodesOutput AWS API Documentation
856
+ #
857
+ class ListVirtualNodesOutput < Struct.new(
858
+ :next_token,
859
+ :virtual_nodes)
860
+ include Aws::Structure
861
+ end
862
+
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
868
+ #
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
875
+ # data as a hash:
876
+ #
877
+ # {
878
+ # client_token: "String",
879
+ # mesh_name: "ResourceName", # required
880
+ # spec: { # required
881
+ # service_names: ["ServiceName"],
882
+ # },
883
+ # virtual_router_name: "ResourceName", # required
884
+ # }
885
+ #
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.
897
+ # @return [String]
898
+ #
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]
907
+ #
908
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateVirtualRouterInput AWS API Documentation
909
+ #
910
+ class UpdateVirtualRouterInput < Struct.new(
911
+ :client_token,
912
+ :mesh_name,
913
+ :spec,
914
+ :virtual_router_name)
915
+ include Aws::Structure
916
+ end
917
+
918
+ # @note When making an API call, you may pass DescribeRouteInput
919
+ # data as a hash:
920
+ #
921
+ # {
922
+ # mesh_name: "ResourceName", # required
923
+ # route_name: "ResourceName", # required
924
+ # virtual_router_name: "ResourceName", # required
925
+ # }
926
+ #
927
+ # @!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.
933
+ # @return [String]
934
+ #
935
+ # @!attribute [rw] virtual_router_name
936
+ # The name of the virtual router with which the route is associated.
937
+ # @return [String]
938
+ #
939
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DescribeRouteInput AWS API Documentation
940
+ #
941
+ class DescribeRouteInput < Struct.new(
942
+ :mesh_name,
943
+ :route_name,
944
+ :virtual_router_name)
945
+ include Aws::Structure
946
+ end
947
+
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]
955
+ #
956
+ # @!attribute [rw] virtual_routers
957
+ # The list of existing virtual routers for the specified service mesh.
958
+ # @return [Array<Types::VirtualRouterRef>]
959
+ #
960
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListVirtualRoutersOutput AWS API Documentation
961
+ #
962
+ class ListVirtualRoutersOutput < Struct.new(
963
+ :next_token,
964
+ :virtual_routers)
965
+ include Aws::Structure
966
+ end
967
+
968
+ # @!attribute [rw] virtual_node
969
+ # The full description of your virtual node following the create call.
970
+ # @return [Types::VirtualNodeData]
971
+ #
972
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateVirtualNodeOutput AWS API Documentation
973
+ #
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]
982
+ #
983
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteVirtualRouterOutput AWS API Documentation
984
+ #
985
+ class DeleteVirtualRouterOutput < Struct.new(
986
+ :virtual_router)
987
+ include Aws::Structure
988
+ end
989
+
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]
1010
+ #
1011
+ # @!attribute [rw] created_at
1012
+ # The Unix epoch timestamp in seconds for when the cluster was
1013
+ # created.
1014
+ # @return [Time]
1015
+ #
1016
+ # @!attribute [rw] last_updated_at
1017
+ # The Unix epoch timestamp in seconds for when the cluster was last
1018
+ # updated.
1019
+ # @return [Time]
1020
+ #
1021
+ # @!attribute [rw] uid
1022
+ # The unique identifier for the resource.
1023
+ # @return [String]
1024
+ #
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]
1029
+ #
1030
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ResourceMetadata AWS API Documentation
1031
+ #
1032
+ class ResourceMetadata < Struct.new(
1033
+ :arn,
1034
+ :created_at,
1035
+ :last_updated_at,
1036
+ :uid,
1037
+ :version)
1038
+ include Aws::Structure
1039
+ end
1040
+
1041
+ # @note When making an API call, you may pass CreateMeshInput
1042
+ # data as a hash:
1043
+ #
1044
+ # {
1045
+ # client_token: "String",
1046
+ # mesh_name: "ResourceName", # required
1047
+ # }
1048
+ #
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.
1053
+ #
1054
+ # **A suitable default value is auto-generated.** You should normally
1055
+ # not need to pass this option.
1056
+ # @return [String]
1057
+ #
1058
+ # @!attribute [rw] mesh_name
1059
+ # The name to use for the service mesh.
1060
+ # @return [String]
1061
+ #
1062
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateMeshInput AWS API Documentation
1063
+ #
1064
+ class CreateMeshInput < Struct.new(
1065
+ :client_token,
1066
+ :mesh_name)
1067
+ include Aws::Structure
1068
+ end
1069
+
1070
+ # An object representing a virtual node listener port mapping.
1071
+ #
1072
+ # @note When making an API call, you may pass PortMapping
1073
+ # data as a hash:
1074
+ #
1075
+ # {
1076
+ # port: 1,
1077
+ # protocol: "http", # accepts http, tcp
1078
+ # }
1079
+ #
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.
1086
+ # @return [String]
1087
+ #
1088
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/PortMapping AWS API Documentation
1089
+ #
1090
+ class PortMapping < Struct.new(
1091
+ :port,
1092
+ :protocol)
1093
+ include Aws::Structure
1094
+ end
1095
+
1096
+ # @note When making an API call, you may pass DeleteVirtualRouterInput
1097
+ # data as a hash:
1098
+ #
1099
+ # {
1100
+ # mesh_name: "ResourceName", # required
1101
+ # virtual_router_name: "ResourceName", # required
1102
+ # }
1103
+ #
1104
+ # @!attribute [rw] mesh_name
1105
+ # The name of the service mesh in which to delete the virtual router.
1106
+ # @return [String]
1107
+ #
1108
+ # @!attribute [rw] virtual_router_name
1109
+ # The name of the virtual router to delete.
1110
+ # @return [String]
1111
+ #
1112
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteVirtualRouterInput AWS API Documentation
1113
+ #
1114
+ class DeleteVirtualRouterInput < Struct.new(
1115
+ :mesh_name,
1116
+ :virtual_router_name)
1117
+ include Aws::Structure
1118
+ end
1119
+
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>]
1132
+ #
1133
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualRouterSpec AWS API Documentation
1134
+ #
1135
+ class VirtualRouterSpec < Struct.new(
1136
+ :service_names)
1137
+ include Aws::Structure
1138
+ end
1139
+
1140
+ # @note When making an API call, you may pass UpdateRouteInput
1141
+ # data as a hash:
1142
+ #
1143
+ # {
1144
+ # client_token: "String",
1145
+ # mesh_name: "ResourceName", # required
1146
+ # route_name: "ResourceName", # required
1147
+ # spec: { # required
1148
+ # http_route: {
1149
+ # action: {
1150
+ # weighted_targets: [
1151
+ # {
1152
+ # virtual_node: "ResourceName",
1153
+ # weight: 1,
1154
+ # },
1155
+ # ],
1156
+ # },
1157
+ # match: {
1158
+ # prefix: "String",
1159
+ # },
1160
+ # },
1161
+ # },
1162
+ # virtual_router_name: "ResourceName", # required
1163
+ # }
1164
+ #
1165
+ # @!attribute [rw] client_token
1166
+ # Unique, case-sensitive identifier that you provide to ensure the
1167
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
1168
+ # underscores are allowed.
1169
+ #
1170
+ # **A suitable default value is auto-generated.** You should normally
1171
+ # not need to pass this option.
1172
+ # @return [String]
1173
+ #
1174
+ # @!attribute [rw] mesh_name
1175
+ # The name of the service mesh in which the route resides.
1176
+ # @return [String]
1177
+ #
1178
+ # @!attribute [rw] route_name
1179
+ # The name of the route to update.
1180
+ # @return [String]
1181
+ #
1182
+ # @!attribute [rw] spec
1183
+ # The new route specification to apply. This overwrites the existing
1184
+ # data.
1185
+ # @return [Types::RouteSpec]
1186
+ #
1187
+ # @!attribute [rw] virtual_router_name
1188
+ # The name of the virtual router with which the route is associated.
1189
+ # @return [String]
1190
+ #
1191
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateRouteInput AWS API Documentation
1192
+ #
1193
+ class UpdateRouteInput < Struct.new(
1194
+ :client_token,
1195
+ :mesh_name,
1196
+ :route_name,
1197
+ :spec,
1198
+ :virtual_router_name)
1199
+ include Aws::Structure
1200
+ end
1201
+
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.
1266
+ #
1267
+ # @note When making an API call, you may pass Listener
1268
+ # data as a hash:
1269
+ #
1270
+ # {
1271
+ # health_check: {
1272
+ # healthy_threshold: 1,
1273
+ # interval_millis: 1,
1274
+ # path: "String",
1275
+ # port: 1,
1276
+ # protocol: "http", # accepts http, tcp
1277
+ # timeout_millis: 1,
1278
+ # unhealthy_threshold: 1,
1279
+ # },
1280
+ # port_mapping: {
1281
+ # port: 1,
1282
+ # protocol: "http", # accepts http, tcp
1283
+ # },
1284
+ # }
1285
+ #
1286
+ # @!attribute [rw] health_check
1287
+ # The health check information for the listener.
1288
+ #
1289
+ # <note markdown="1"> Listener health checks are not available during the App Mesh
1290
+ # preview.
1291
+ #
1292
+ # </note>
1293
+ # @return [Types::HealthCheckPolicy]
1294
+ #
1295
+ # @!attribute [rw] port_mapping
1296
+ # The port mapping information for the listener.
1297
+ # @return [Types::PortMapping]
1298
+ #
1299
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/Listener AWS API Documentation
1300
+ #
1301
+ class Listener < Struct.new(
1302
+ :health_check,
1303
+ :port_mapping)
1304
+ include Aws::Structure
1305
+ end
1306
+
1307
+ # An object representing the health check policy for a virtual node's
1308
+ # listener.
1309
+ #
1310
+ # <note markdown="1"> Listener health checks are not available during the App Mesh preview.
1311
+ #
1312
+ # </note>
1313
+ #
1314
+ # @note When making an API call, you may pass HealthCheckPolicy
1315
+ # data as a hash:
1316
+ #
1317
+ # {
1318
+ # healthy_threshold: 1,
1319
+ # interval_millis: 1,
1320
+ # path: "String",
1321
+ # port: 1,
1322
+ # protocol: "http", # accepts http, tcp
1323
+ # timeout_millis: 1,
1324
+ # unhealthy_threshold: 1,
1325
+ # }
1326
+ #
1327
+ # @!attribute [rw] healthy_threshold
1328
+ # The number of consecutive successful health checks that must occur
1329
+ # before declaring listener healthy.
1330
+ # @return [Integer]
1331
+ #
1332
+ # @!attribute [rw] interval_millis
1333
+ # The time period in milliseconds between each health check execution.
1334
+ # @return [Integer]
1335
+ #
1336
+ # @!attribute [rw] path
1337
+ # The destination path for the health check request.
1338
+ # @return [String]
1339
+ #
1340
+ # @!attribute [rw] port
1341
+ # The destination port for the health check request.
1342
+ # @return [Integer]
1343
+ #
1344
+ # @!attribute [rw] protocol
1345
+ # The protocol for the health check request.
1346
+ # @return [String]
1347
+ #
1348
+ # @!attribute [rw] timeout_millis
1349
+ # The amount of time to wait when receiving a response from the health
1350
+ # check, in milliseconds.
1351
+ # @return [Integer]
1352
+ #
1353
+ # @!attribute [rw] unhealthy_threshold
1354
+ # The number of consecutive failed health checks that must occur
1355
+ # before declaring a virtual node unhealthy.
1356
+ # @return [Integer]
1357
+ #
1358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/HealthCheckPolicy AWS API Documentation
1359
+ #
1360
+ class HealthCheckPolicy < Struct.new(
1361
+ :healthy_threshold,
1362
+ :interval_millis,
1363
+ :path,
1364
+ :port,
1365
+ :protocol,
1366
+ :timeout_millis,
1367
+ :unhealthy_threshold)
1368
+ include Aws::Structure
1369
+ end
1370
+
1371
+ # @note When making an API call, you may pass ListVirtualRoutersInput
1372
+ # data as a hash:
1373
+ #
1374
+ # {
1375
+ # limit: 1,
1376
+ # mesh_name: "ResourceName", # required
1377
+ # next_token: "String",
1378
+ # }
1379
+ #
1380
+ # @!attribute [rw] limit
1381
+ # The maximum number of mesh results returned by `ListVirtualRouters`
1382
+ # in paginated output. When this parameter is used,
1383
+ # `ListVirtualRouters` only returns `limit` results in a single page
1384
+ # along with a `nextToken` response element. The remaining results of
1385
+ # the initial request can be seen by sending another
1386
+ # `ListVirtualRouters` request with the returned `nextToken` value.
1387
+ # This value can be between 1 and 100. If this parameter is not used,
1388
+ # then `ListVirtualRouters` returns up to 100 results and a
1389
+ # `nextToken` value if applicable.
1390
+ # @return [Integer]
1391
+ #
1392
+ # @!attribute [rw] mesh_name
1393
+ # The name of the service mesh in which to list virtual routers.
1394
+ # @return [String]
1395
+ #
1396
+ # @!attribute [rw] next_token
1397
+ # The `nextToken` value returned from a previous paginated
1398
+ # `ListVirtualRouters` request where `limit` was used and the results
1399
+ # exceeded the value of that parameter. Pagination continues from the
1400
+ # end of the previous results that returned the `nextToken` value.
1401
+ # @return [String]
1402
+ #
1403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListVirtualRoutersInput AWS API Documentation
1404
+ #
1405
+ class ListVirtualRoutersInput < Struct.new(
1406
+ :limit,
1407
+ :mesh_name,
1408
+ :next_token)
1409
+ include Aws::Structure
1410
+ end
1411
+
1412
+ # @note When making an API call, you may pass CreateVirtualNodeInput
1413
+ # data as a hash:
1414
+ #
1415
+ # {
1416
+ # client_token: "String",
1417
+ # mesh_name: "ResourceName", # required
1418
+ # spec: { # required
1419
+ # backends: ["ServiceName"],
1420
+ # listeners: [
1421
+ # {
1422
+ # health_check: {
1423
+ # healthy_threshold: 1,
1424
+ # interval_millis: 1,
1425
+ # path: "String",
1426
+ # port: 1,
1427
+ # protocol: "http", # accepts http, tcp
1428
+ # timeout_millis: 1,
1429
+ # unhealthy_threshold: 1,
1430
+ # },
1431
+ # port_mapping: {
1432
+ # port: 1,
1433
+ # protocol: "http", # accepts http, tcp
1434
+ # },
1435
+ # },
1436
+ # ],
1437
+ # service_discovery: {
1438
+ # dns: {
1439
+ # service_name: "ServiceName",
1440
+ # },
1441
+ # },
1442
+ # },
1443
+ # virtual_node_name: "ResourceName", # required
1444
+ # }
1445
+ #
1446
+ # @!attribute [rw] client_token
1447
+ # Unique, case-sensitive identifier that you provide to ensure the
1448
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
1449
+ # underscores are allowed.
1450
+ #
1451
+ # **A suitable default value is auto-generated.** You should normally
1452
+ # not need to pass this option.
1453
+ # @return [String]
1454
+ #
1455
+ # @!attribute [rw] mesh_name
1456
+ # The name of the service mesh in which to create the virtual node.
1457
+ # @return [String]
1458
+ #
1459
+ # @!attribute [rw] spec
1460
+ # The virtual node specification to apply.
1461
+ # @return [Types::VirtualNodeSpec]
1462
+ #
1463
+ # @!attribute [rw] virtual_node_name
1464
+ # The name to use for the virtual node.
1465
+ # @return [String]
1466
+ #
1467
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateVirtualNodeInput AWS API Documentation
1468
+ #
1469
+ class CreateVirtualNodeInput < Struct.new(
1470
+ :client_token,
1471
+ :mesh_name,
1472
+ :spec,
1473
+ :virtual_node_name)
1474
+ include Aws::Structure
1475
+ end
1476
+
1477
+ # An object representing a service mesh returned by a describe
1478
+ # operation.
1479
+ #
1480
+ # @!attribute [rw] mesh_name
1481
+ # The name of the service mesh.
1482
+ # @return [String]
1483
+ #
1484
+ # @!attribute [rw] metadata
1485
+ # The associated metadata for the service mesh.
1486
+ # @return [Types::ResourceMetadata]
1487
+ #
1488
+ # @!attribute [rw] status
1489
+ # The status of the service mesh.
1490
+ # @return [Types::MeshStatus]
1491
+ #
1492
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/MeshData AWS API Documentation
1493
+ #
1494
+ class MeshData < Struct.new(
1495
+ :mesh_name,
1496
+ :metadata,
1497
+ :status)
1498
+ include Aws::Structure
1499
+ end
1500
+
1501
+ # @note When making an API call, you may pass DeleteMeshInput
1502
+ # data as a hash:
1503
+ #
1504
+ # {
1505
+ # mesh_name: "ResourceName", # required
1506
+ # }
1507
+ #
1508
+ # @!attribute [rw] mesh_name
1509
+ # The name of the service mesh to delete.
1510
+ # @return [String]
1511
+ #
1512
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteMeshInput AWS API Documentation
1513
+ #
1514
+ class DeleteMeshInput < Struct.new(
1515
+ :mesh_name)
1516
+ include Aws::Structure
1517
+ end
1518
+
1519
+ # An object representing the requirements for a route to match HTTP
1520
+ # requests for a virtual router.
1521
+ #
1522
+ # @note When making an API call, you may pass HttpRouteMatch
1523
+ # data as a hash:
1524
+ #
1525
+ # {
1526
+ # prefix: "String",
1527
+ # }
1528
+ #
1529
+ # @!attribute [rw] prefix
1530
+ # Specifies the path with which to match requests. This parameter must
1531
+ # always start with `/`, which by itself matches all requests to the
1532
+ # virtual router service name. You can also match for path-based
1533
+ # routing of requests. For example, if your virtual router service
1534
+ # name is `my-service.local`, and you want the route to match requests
1535
+ # to `my-service.local/metrics`, then your prefix should be
1536
+ # `/metrics`.
1537
+ # @return [String]
1538
+ #
1539
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/HttpRouteMatch AWS API Documentation
1540
+ #
1541
+ class HttpRouteMatch < Struct.new(
1542
+ :prefix)
1543
+ include Aws::Structure
1544
+ end
1545
+
1546
+ # @!attribute [rw] route
1547
+ # The route that was deleted.
1548
+ # @return [Types::RouteData]
1549
+ #
1550
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/DeleteRouteOutput AWS API Documentation
1551
+ #
1552
+ class DeleteRouteOutput < Struct.new(
1553
+ :route)
1554
+ include Aws::Structure
1555
+ end
1556
+
1557
+ # @note When making an API call, you may pass CreateRouteInput
1558
+ # data as a hash:
1559
+ #
1560
+ # {
1561
+ # client_token: "String",
1562
+ # mesh_name: "ResourceName", # required
1563
+ # route_name: "ResourceName", # required
1564
+ # spec: { # required
1565
+ # http_route: {
1566
+ # action: {
1567
+ # weighted_targets: [
1568
+ # {
1569
+ # virtual_node: "ResourceName",
1570
+ # weight: 1,
1571
+ # },
1572
+ # ],
1573
+ # },
1574
+ # match: {
1575
+ # prefix: "String",
1576
+ # },
1577
+ # },
1578
+ # },
1579
+ # virtual_router_name: "ResourceName", # required
1580
+ # }
1581
+ #
1582
+ # @!attribute [rw] client_token
1583
+ # Unique, case-sensitive identifier that you provide to ensure the
1584
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
1585
+ # underscores are allowed.
1586
+ #
1587
+ # **A suitable default value is auto-generated.** You should normally
1588
+ # not need to pass this option.
1589
+ # @return [String]
1590
+ #
1591
+ # @!attribute [rw] mesh_name
1592
+ # The name of the service mesh in which to create the route.
1593
+ # @return [String]
1594
+ #
1595
+ # @!attribute [rw] route_name
1596
+ # The name to use for the route.
1597
+ # @return [String]
1598
+ #
1599
+ # @!attribute [rw] spec
1600
+ # The route specification to apply.
1601
+ # @return [Types::RouteSpec]
1602
+ #
1603
+ # @!attribute [rw] virtual_router_name
1604
+ # The name of the virtual router in which to create the route.
1605
+ # @return [String]
1606
+ #
1607
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/CreateRouteInput AWS API Documentation
1608
+ #
1609
+ class CreateRouteInput < Struct.new(
1610
+ :client_token,
1611
+ :mesh_name,
1612
+ :route_name,
1613
+ :spec,
1614
+ :virtual_router_name)
1615
+ include Aws::Structure
1616
+ end
1617
+
1618
+ # An object representing the current status of the virtual node.
1619
+ #
1620
+ # @!attribute [rw] status
1621
+ # The current status of the virtual node.
1622
+ # @return [String]
1623
+ #
1624
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/VirtualNodeStatus AWS API Documentation
1625
+ #
1626
+ class VirtualNodeStatus < Struct.new(
1627
+ :status)
1628
+ include Aws::Structure
1629
+ end
1630
+
1631
+ # @note When making an API call, you may pass ListVirtualNodesInput
1632
+ # data as a hash:
1633
+ #
1634
+ # {
1635
+ # limit: 1,
1636
+ # mesh_name: "ResourceName", # required
1637
+ # next_token: "String",
1638
+ # }
1639
+ #
1640
+ # @!attribute [rw] limit
1641
+ # The maximum number of mesh results returned by `ListVirtualNodes` in
1642
+ # paginated output. When this parameter is used, `ListVirtualNodes`
1643
+ # only returns `limit` results in a single page along with a
1644
+ # `nextToken` response element. The remaining results of the initial
1645
+ # request can be seen by sending another `ListVirtualNodes` request
1646
+ # with the returned `nextToken` value. This value can be between 1 and
1647
+ # 100. If this parameter is not used, then `ListVirtualNodes` returns
1648
+ # up to 100 results and a `nextToken` value if applicable.
1649
+ # @return [Integer]
1650
+ #
1651
+ # @!attribute [rw] mesh_name
1652
+ # The name of the service mesh in which to list virtual nodes.
1653
+ # @return [String]
1654
+ #
1655
+ # @!attribute [rw] next_token
1656
+ # The `nextToken` value returned from a previous paginated
1657
+ # `ListVirtualNodes` request where `limit` was used and the results
1658
+ # exceeded the value of that parameter. Pagination continues from the
1659
+ # end of the previous results that returned the `nextToken` value.
1660
+ # @return [String]
1661
+ #
1662
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/ListVirtualNodesInput AWS API Documentation
1663
+ #
1664
+ class ListVirtualNodesInput < Struct.new(
1665
+ :limit,
1666
+ :mesh_name,
1667
+ :next_token)
1668
+ include Aws::Structure
1669
+ end
1670
+
1671
+ # An object representing a route returned by a list operation.
1672
+ #
1673
+ # @!attribute [rw] arn
1674
+ # The full Amazon Resource Name (ARN) for the route.
1675
+ # @return [String]
1676
+ #
1677
+ # @!attribute [rw] mesh_name
1678
+ # The name of the service mesh in which the route resides.
1679
+ # @return [String]
1680
+ #
1681
+ # @!attribute [rw] route_name
1682
+ # The name of the route.
1683
+ # @return [String]
1684
+ #
1685
+ # @!attribute [rw] virtual_router_name
1686
+ # The virtual router with which the route is associated.
1687
+ # @return [String]
1688
+ #
1689
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/RouteRef AWS API Documentation
1690
+ #
1691
+ class RouteRef < Struct.new(
1692
+ :arn,
1693
+ :mesh_name,
1694
+ :route_name,
1695
+ :virtual_router_name)
1696
+ include Aws::Structure
1697
+ end
1698
+
1699
+ # @!attribute [rw] virtual_node
1700
+ # A full description of the virtual node that was updated.
1701
+ # @return [Types::VirtualNodeData]
1702
+ #
1703
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2018-10-01/UpdateVirtualNodeOutput AWS API Documentation
1704
+ #
1705
+ class UpdateVirtualNodeOutput < Struct.new(
1706
+ :virtual_node)
1707
+ include Aws::Structure
1708
+ end
1709
+
1710
+ end
1711
+ end