aws-sdk-appmesh 1.5.0 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f307b19fdcd7829a2df80b0b561cadc47e387209
4
- data.tar.gz: 4775049123414ca9e2dcac36f2b2d6fbf5eb23a4
3
+ metadata.gz: 73bef54363d82bc04f934e644b346ccedc192f0a
4
+ data.tar.gz: 57708ff5bc96c33059ee367be3a3bdbc2ffc367f
5
5
  SHA512:
6
- metadata.gz: 74effbfc032f5e31352b82883fd7abdba6892dd222b231744af4fe6c5fe161cf0bd4231d7cd7656ca66718ca2be058a9fcb53dbbc336ec0ebb82d707237688ea
7
- data.tar.gz: a5fd15cca4f6b849052e2cf2526f8d911cc46fe7d6206c9e2d092a0b00ab225e8b8bc4df02fc5d7cc976326de2efcc6c4a3cbeb355d4af4d102bea907b8c157e
6
+ metadata.gz: d224f9a1fc71ce3e44283c737436ff28b36fa57c8aeed40ef0bb70c918e2e3d2e1ea26f103505c0c397b2fea4ebddbfab1e95c7182ea2faa68f9b376ff69328d
7
+ data.tar.gz: 2a5cf455b485a60d5d0082cd2f3c4392fffe4dfe5d0a299eee34272f636dd6a8138d9952bf4877457dfb0900ecd44de63d89ed54879db1770e3bf72a33a762e1
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-appmesh/customizations'
42
42
  # @service
43
43
  module Aws::AppMesh
44
44
 
45
- GEM_VERSION = '1.5.0'
45
+ GEM_VERSION = '1.6.0'
46
46
 
47
47
  end
@@ -199,13 +199,56 @@ module Aws::AppMesh
199
199
  # When `true`, request parameters are validated before
200
200
  # sending the request.
201
201
  #
202
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
203
+ # requests through. Formatted like 'http://proxy.com:123'.
204
+ #
205
+ # @option options [Float] :http_open_timeout (15) The number of
206
+ # seconds to wait when opening a HTTP session before rasing a
207
+ # `Timeout::Error`.
208
+ #
209
+ # @option options [Integer] :http_read_timeout (60) The default
210
+ # number of seconds to wait for response data. This value can
211
+ # safely be set
212
+ # per-request on the session yeidled by {#session_for}.
213
+ #
214
+ # @option options [Float] :http_idle_timeout (5) The number of
215
+ # seconds a connection is allowed to sit idble before it is
216
+ # considered stale. Stale connections are closed and removed
217
+ # from the pool before making a request.
218
+ #
219
+ # @option options [Float] :http_continue_timeout (1) The number of
220
+ # seconds to wait for a 100-continue response before sending the
221
+ # request body. This option has no effect unless the request has
222
+ # "Expect" header set to "100-continue". Defaults to `nil` which
223
+ # disables this behaviour. This value can safely be set per
224
+ # request on the session yeidled by {#session_for}.
225
+ #
226
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
227
+ # HTTP debug output will be sent to the `:logger`.
228
+ #
229
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
230
+ # SSL peer certificates are verified when establishing a
231
+ # connection.
232
+ #
233
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
234
+ # certificate authority bundle file that should be used when
235
+ # verifying peer certificates. If you do not pass
236
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
237
+ # will be used if available.
238
+ #
239
+ # @option options [String] :ssl_ca_directory Full path of the
240
+ # directory that contains the unbundled SSL certificate
241
+ # authority files for verifying peer certificates. If you do
242
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
243
+ # system default will be used if available.
244
+ #
202
245
  def initialize(*args)
203
246
  super
204
247
  end
205
248
 
206
249
  # @!group API Operations
207
250
 
208
- # Creates a new service mesh. A service mesh is a logical boundary for
251
+ # Creates a service mesh. A service mesh is a logical boundary for
209
252
  # network traffic between the services that reside within it.
210
253
  #
211
254
  # After you create your service mesh, you can create virtual services,
@@ -223,6 +266,16 @@ module Aws::AppMesh
223
266
  # @option params [required, String] :mesh_name
224
267
  # The name to use for the service mesh.
225
268
  #
269
+ # @option params [Types::MeshSpec] :spec
270
+ # The service mesh specification to apply.
271
+ #
272
+ # @option params [Array<Types::TagRef>] :tags
273
+ # Optional metadata that you can apply to the service mesh to assist
274
+ # with categorization and organization. Each tag consists of a key and
275
+ # an optional value, both of which you define. Tag keys can have a
276
+ # maximum character length of 128 characters, and tag values can have a
277
+ # maximum length of 256 characters.
278
+ #
226
279
  # @return [Types::CreateMeshOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
227
280
  #
228
281
  # * {Types::CreateMeshOutput#mesh #mesh} => Types::MeshData
@@ -232,6 +285,17 @@ module Aws::AppMesh
232
285
  # resp = client.create_mesh({
233
286
  # client_token: "String",
234
287
  # mesh_name: "ResourceName", # required
288
+ # spec: {
289
+ # egress_filter: {
290
+ # type: "ALLOW_ALL", # required, accepts ALLOW_ALL, DROP_ALL
291
+ # },
292
+ # },
293
+ # tags: [
294
+ # {
295
+ # key: "TagKey", # required
296
+ # value: "TagValue",
297
+ # },
298
+ # ],
235
299
  # })
236
300
  #
237
301
  # @example Response structure
@@ -242,6 +306,7 @@ module Aws::AppMesh
242
306
  # resp.mesh.metadata.last_updated_at #=> Time
243
307
  # resp.mesh.metadata.uid #=> String
244
308
  # resp.mesh.metadata.version #=> Integer
309
+ # resp.mesh.spec.egress_filter.type #=> String, one of "ALLOW_ALL", "DROP_ALL"
245
310
  # resp.mesh.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
246
311
  #
247
312
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateMesh AWS API Documentation
@@ -253,13 +318,12 @@ module Aws::AppMesh
253
318
  req.send_request(options)
254
319
  end
255
320
 
256
- # Creates a new route that is associated with a virtual router.
321
+ # Creates a route that is associated with a virtual router.
257
322
  #
258
323
  # You can use the `prefix` parameter in your route specification for
259
- # path-based routing of requests. For example, if your virtual router
260
- # service name is `my-service.local`, and you want the route to match
261
- # requests to `my-service.local/metrics`, then your prefix should be
262
- # `/metrics`.
324
+ # path-based routing of requests. For example, if your virtual service
325
+ # name is `my-service.local` and you want the route to match requests to
326
+ # `my-service.local/metrics`, your prefix should be `/metrics`.
263
327
  #
264
328
  # If your route matches a request, you can distribute traffic to one or
265
329
  # more target virtual nodes with relative weighting.
@@ -273,7 +337,7 @@ module Aws::AppMesh
273
337
  # not need to pass this option.**
274
338
  #
275
339
  # @option params [required, String] :mesh_name
276
- # The name of the service mesh in which to create the route.
340
+ # The name of the service mesh to create the route in.
277
341
  #
278
342
  # @option params [required, String] :route_name
279
343
  # The name to use for the route.
@@ -281,6 +345,13 @@ module Aws::AppMesh
281
345
  # @option params [required, Types::RouteSpec] :spec
282
346
  # The route specification to apply.
283
347
  #
348
+ # @option params [Array<Types::TagRef>] :tags
349
+ # Optional metadata that you can apply to the route to assist with
350
+ # categorization and organization. Each tag consists of a key and an
351
+ # optional value, both of which you define. Tag keys can have a maximum
352
+ # character length of 128 characters, and tag values can have a maximum
353
+ # length of 256 characters.
354
+ #
284
355
  # @option params [required, String] :virtual_router_name
285
356
  # The name of the virtual router in which to create the route.
286
357
  #
@@ -308,7 +379,23 @@ module Aws::AppMesh
308
379
  # prefix: "String", # required
309
380
  # },
310
381
  # },
382
+ # tcp_route: {
383
+ # action: { # required
384
+ # weighted_targets: [ # required
385
+ # {
386
+ # virtual_node: "ResourceName", # required
387
+ # weight: 1, # required
388
+ # },
389
+ # ],
390
+ # },
391
+ # },
311
392
  # },
393
+ # tags: [
394
+ # {
395
+ # key: "TagKey", # required
396
+ # value: "TagValue",
397
+ # },
398
+ # ],
312
399
  # virtual_router_name: "ResourceName", # required
313
400
  # })
314
401
  #
@@ -325,6 +412,9 @@ module Aws::AppMesh
325
412
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
326
413
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
327
414
  # resp.route.spec.http_route.match.prefix #=> String
415
+ # resp.route.spec.tcp_route.action.weighted_targets #=> Array
416
+ # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
417
+ # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
328
418
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
329
419
  # resp.route.virtual_router_name #=> String
330
420
  #
@@ -337,9 +427,9 @@ module Aws::AppMesh
337
427
  req.send_request(options)
338
428
  end
339
429
 
340
- # Creates a new virtual node within a service mesh.
430
+ # Creates a virtual node within a service mesh.
341
431
  #
342
- # A virtual node acts as logical pointer to a particular task group,
432
+ # A virtual node acts as a logical pointer to a particular task group,
343
433
  # such as an Amazon ECS service or a Kubernetes deployment. When you
344
434
  # create a virtual node, you must specify the DNS service discovery
345
435
  # hostname for your task group.
@@ -350,8 +440,8 @@ module Aws::AppMesh
350
440
  #
351
441
  # The response metadata for your new virtual node contains the `arn`
352
442
  # that is associated with the virtual node. Set this value (either the
353
- # full ARN or the truncated resource name, for example,
354
- # `mesh/default/virtualNode/simpleapp`, as the
443
+ # full ARN or the truncated resource name: for example,
444
+ # `mesh/default/virtualNode/simpleapp`) as the
355
445
  # `APPMESH_VIRTUAL_NODE_NAME` environment variable for your task
356
446
  # group's Envoy proxy container in your task definition or pod spec.
357
447
  # This is then mapped to the `node.id` and `node.cluster` Envoy
@@ -373,11 +463,18 @@ module Aws::AppMesh
373
463
  # not need to pass this option.**
374
464
  #
375
465
  # @option params [required, String] :mesh_name
376
- # The name of the service mesh in which to create the virtual node.
466
+ # The name of the service mesh to create the virtual node in.
377
467
  #
378
468
  # @option params [required, Types::VirtualNodeSpec] :spec
379
469
  # The virtual node specification to apply.
380
470
  #
471
+ # @option params [Array<Types::TagRef>] :tags
472
+ # Optional metadata that you can apply to the virtual node to assist
473
+ # with categorization and organization. Each tag consists of a key and
474
+ # an optional value, both of which you define. Tag keys can have a
475
+ # maximum character length of 128 characters, and tag values can have a
476
+ # maximum length of 256 characters.
477
+ #
381
478
  # @option params [required, String] :virtual_node_name
382
479
  # The name to use for the virtual node.
383
480
  #
@@ -415,12 +512,25 @@ module Aws::AppMesh
415
512
  # },
416
513
  # },
417
514
  # ],
515
+ # logging: {
516
+ # access_log: {
517
+ # file: {
518
+ # path: "FilePath", # required
519
+ # },
520
+ # },
521
+ # },
418
522
  # service_discovery: {
419
523
  # dns: {
420
524
  # hostname: "Hostname", # required
421
525
  # },
422
526
  # },
423
527
  # },
528
+ # tags: [
529
+ # {
530
+ # key: "TagKey", # required
531
+ # value: "TagValue",
532
+ # },
533
+ # ],
424
534
  # virtual_node_name: "ResourceName", # required
425
535
  # })
426
536
  #
@@ -444,6 +554,7 @@ module Aws::AppMesh
444
554
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
445
555
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
446
556
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp"
557
+ # resp.virtual_node.spec.logging.access_log.file.path #=> String
447
558
  # resp.virtual_node.spec.service_discovery.dns.hostname #=> String
448
559
  # resp.virtual_node.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
449
560
  # resp.virtual_node.virtual_node_name #=> String
@@ -457,12 +568,12 @@ module Aws::AppMesh
457
568
  req.send_request(options)
458
569
  end
459
570
 
460
- # Creates a new virtual router within a service mesh.
571
+ # Creates a virtual router within a service mesh.
461
572
  #
462
573
  # Any inbound traffic that your virtual router expects should be
463
574
  # specified as a `listener`.
464
575
  #
465
- # Virtual routers handle traffic for one or more service names within
576
+ # Virtual routers handle traffic for one or more virtual services within
466
577
  # your mesh. After you create your virtual router, create and associate
467
578
  # routes for your virtual router that direct incoming requests to
468
579
  # different virtual nodes.
@@ -481,6 +592,13 @@ module Aws::AppMesh
481
592
  # @option params [required, Types::VirtualRouterSpec] :spec
482
593
  # The virtual router specification to apply.
483
594
  #
595
+ # @option params [Array<Types::TagRef>] :tags
596
+ # Optional metadata that you can apply to the virtual router to assist
597
+ # with categorization and organization. Each tag consists of a key and
598
+ # an optional value, both of which you define. Tag keys can have a
599
+ # maximum character length of 128 characters, and tag values can have a
600
+ # maximum length of 256 characters.
601
+ #
484
602
  # @option params [required, String] :virtual_router_name
485
603
  # The name to use for the virtual router.
486
604
  #
@@ -503,6 +621,12 @@ module Aws::AppMesh
503
621
  # },
504
622
  # ],
505
623
  # },
624
+ # tags: [
625
+ # {
626
+ # key: "TagKey", # required
627
+ # value: "TagValue",
628
+ # },
629
+ # ],
506
630
  # virtual_router_name: "ResourceName", # required
507
631
  # })
508
632
  #
@@ -531,9 +655,9 @@ module Aws::AppMesh
531
655
 
532
656
  # Creates a virtual service within a service mesh.
533
657
  #
534
- # A virtual service is an abstraction of a real service that is either
535
- # provided by a virtual node directly, or indirectly by means of a
536
- # virtual router. Dependent services call your virtual service by its
658
+ # A virtual service is an abstraction of a real service that is provided
659
+ # by a virtual node directly or indirectly by means of a virtual router.
660
+ # Dependent services call your virtual service by its
537
661
  # `virtualServiceName`, and those requests are routed to the virtual
538
662
  # node or virtual router that is specified as the provider for the
539
663
  # virtual service.
@@ -547,11 +671,18 @@ module Aws::AppMesh
547
671
  # not need to pass this option.**
548
672
  #
549
673
  # @option params [required, String] :mesh_name
550
- # The name of the service mesh in which to create the virtual service.
674
+ # The name of the service mesh to create the virtual service in.
551
675
  #
552
676
  # @option params [required, Types::VirtualServiceSpec] :spec
553
677
  # The virtual service specification to apply.
554
678
  #
679
+ # @option params [Array<Types::TagRef>] :tags
680
+ # Optional metadata that you can apply to the virtual service to assist
681
+ # with categorization and organization. Each tag consists of a key and
682
+ # an optional value, both of which you define. Tag keys can have a
683
+ # maximum character length of 128 characters, and tag values can have a
684
+ # maximum length of 256 characters.
685
+ #
555
686
  # @option params [required, String] :virtual_service_name
556
687
  # The name to use for the virtual service.
557
688
  #
@@ -574,6 +705,12 @@ module Aws::AppMesh
574
705
  # },
575
706
  # },
576
707
  # },
708
+ # tags: [
709
+ # {
710
+ # key: "TagKey", # required
711
+ # value: "TagValue",
712
+ # },
713
+ # ],
577
714
  # virtual_service_name: "ServiceName", # required
578
715
  # })
579
716
  #
@@ -602,8 +739,8 @@ module Aws::AppMesh
602
739
  # Deletes an existing service mesh.
603
740
  #
604
741
  # You must delete all resources (virtual services, routes, virtual
605
- # routers, virtual nodes) in the service mesh before you can delete the
606
- # mesh itself.
742
+ # routers, and virtual nodes) in the service mesh before you can delete
743
+ # the mesh itself.
607
744
  #
608
745
  # @option params [required, String] :mesh_name
609
746
  # The name of the service mesh to delete.
@@ -626,6 +763,7 @@ module Aws::AppMesh
626
763
  # resp.mesh.metadata.last_updated_at #=> Time
627
764
  # resp.mesh.metadata.uid #=> String
628
765
  # resp.mesh.metadata.version #=> Integer
766
+ # resp.mesh.spec.egress_filter.type #=> String, one of "ALLOW_ALL", "DROP_ALL"
629
767
  # resp.mesh.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
630
768
  #
631
769
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMesh AWS API Documentation
@@ -673,6 +811,9 @@ module Aws::AppMesh
673
811
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
674
812
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
675
813
  # resp.route.spec.http_route.match.prefix #=> String
814
+ # resp.route.spec.tcp_route.action.weighted_targets #=> Array
815
+ # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
816
+ # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
676
817
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
677
818
  # resp.route.virtual_router_name #=> String
678
819
  #
@@ -727,6 +868,7 @@ module Aws::AppMesh
727
868
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
728
869
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
729
870
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp"
871
+ # resp.virtual_node.spec.logging.access_log.file.path #=> String
730
872
  # resp.virtual_node.spec.service_discovery.dns.hostname #=> String
731
873
  # resp.virtual_node.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
732
874
  # resp.virtual_node.virtual_node_name #=> String
@@ -849,6 +991,7 @@ module Aws::AppMesh
849
991
  # resp.mesh.metadata.last_updated_at #=> Time
850
992
  # resp.mesh.metadata.uid #=> String
851
993
  # resp.mesh.metadata.version #=> Integer
994
+ # resp.mesh.spec.egress_filter.type #=> String, one of "ALLOW_ALL", "DROP_ALL"
852
995
  # resp.mesh.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
853
996
  #
854
997
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMesh AWS API Documentation
@@ -896,6 +1039,9 @@ module Aws::AppMesh
896
1039
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
897
1040
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
898
1041
  # resp.route.spec.http_route.match.prefix #=> String
1042
+ # resp.route.spec.tcp_route.action.weighted_targets #=> Array
1043
+ # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
1044
+ # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
899
1045
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
900
1046
  # resp.route.virtual_router_name #=> String
901
1047
  #
@@ -947,6 +1093,7 @@ module Aws::AppMesh
947
1093
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
948
1094
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
949
1095
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp"
1096
+ # resp.virtual_node.spec.logging.access_log.file.path #=> String
950
1097
  # resp.virtual_node.spec.service_discovery.dns.hostname #=> String
951
1098
  # resp.virtual_node.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
952
1099
  # resp.virtual_node.virtual_node_name #=> String
@@ -1061,7 +1208,7 @@ module Aws::AppMesh
1061
1208
  # that parameter. Pagination continues from the end of the previous
1062
1209
  # results that returned the `nextToken` value.
1063
1210
  #
1064
- # <note markdown="1"> This token should be treated as an opaque identifier that is only used
1211
+ # <note markdown="1"> This token should be treated as an opaque identifier that is used only
1065
1212
  # to retrieve the next items in a list and not for other programmatic
1066
1213
  # purposes.
1067
1214
  #
@@ -1108,7 +1255,7 @@ module Aws::AppMesh
1108
1255
  # applicable.
1109
1256
  #
1110
1257
  # @option params [required, String] :mesh_name
1111
- # The name of the service mesh in which to list routes.
1258
+ # The name of the service mesh to list routes in.
1112
1259
  #
1113
1260
  # @option params [String] :next_token
1114
1261
  # The `nextToken` value returned from a previous paginated `ListRoutes`
@@ -1151,6 +1298,57 @@ module Aws::AppMesh
1151
1298
  req.send_request(options)
1152
1299
  end
1153
1300
 
1301
+ # List the tags for an App Mesh resource.
1302
+ #
1303
+ # @option params [Integer] :limit
1304
+ # The maximum number of tag results returned by `ListTagsForResource` in
1305
+ # paginated output. When this parameter is used, `ListTagsForResource`
1306
+ # returns only `limit` results in a single page along with a `nextToken`
1307
+ # response element. You can see the remaining results of the initial
1308
+ # request by sending another `ListTagsForResource` request with the
1309
+ # returned `nextToken` value. This value can be between 1 and 100. If
1310
+ # you don't use this parameter, `ListTagsForResource` returns up to 100
1311
+ # results and a `nextToken` value if applicable.
1312
+ #
1313
+ # @option params [String] :next_token
1314
+ # The `nextToken` value returned from a previous paginated
1315
+ # `ListTagsForResource` request where `limit` was used and the results
1316
+ # exceeded the value of that parameter. Pagination continues from the
1317
+ # end of the previous results that returned the `nextToken` value.
1318
+ #
1319
+ # @option params [required, String] :resource_arn
1320
+ # The Amazon Resource Name (ARN) that identifies the resource to list
1321
+ # the tags for.
1322
+ #
1323
+ # @return [Types::ListTagsForResourceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1324
+ #
1325
+ # * {Types::ListTagsForResourceOutput#next_token #next_token} => String
1326
+ # * {Types::ListTagsForResourceOutput#tags #tags} => Array&lt;Types::TagRef&gt;
1327
+ #
1328
+ # @example Request syntax with placeholder values
1329
+ #
1330
+ # resp = client.list_tags_for_resource({
1331
+ # limit: 1,
1332
+ # next_token: "String",
1333
+ # resource_arn: "Arn", # required
1334
+ # })
1335
+ #
1336
+ # @example Response structure
1337
+ #
1338
+ # resp.next_token #=> String
1339
+ # resp.tags #=> Array
1340
+ # resp.tags[0].key #=> String
1341
+ # resp.tags[0].value #=> String
1342
+ #
1343
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListTagsForResource AWS API Documentation
1344
+ #
1345
+ # @overload list_tags_for_resource(params = {})
1346
+ # @param [Hash] params ({})
1347
+ def list_tags_for_resource(params = {}, options = {})
1348
+ req = build_request(:list_tags_for_resource, params)
1349
+ req.send_request(options)
1350
+ end
1351
+
1154
1352
  # Returns a list of existing virtual nodes.
1155
1353
  #
1156
1354
  # @option params [Integer] :limit
@@ -1304,6 +1502,120 @@ module Aws::AppMesh
1304
1502
  req.send_request(options)
1305
1503
  end
1306
1504
 
1505
+ # Associates the specified tags to a resource with the specified
1506
+ # `resourceArn`. If existing tags on a resource aren't specified in the
1507
+ # request parameters, they aren't changed. When a resource is deleted,
1508
+ # the tags associated with that resource are also deleted.
1509
+ #
1510
+ # @option params [required, String] :resource_arn
1511
+ # The Amazon Resource Name (ARN) of the resource to add tags to.
1512
+ #
1513
+ # @option params [required, Array<Types::TagRef>] :tags
1514
+ # The tags to add to the resource. A tag is an array of key-value pairs.
1515
+ # Tag keys can have a maximum character length of 128 characters, and
1516
+ # tag values can have a maximum length of 256 characters.
1517
+ #
1518
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1519
+ #
1520
+ # @example Request syntax with placeholder values
1521
+ #
1522
+ # resp = client.tag_resource({
1523
+ # resource_arn: "Arn", # required
1524
+ # tags: [ # required
1525
+ # {
1526
+ # key: "TagKey", # required
1527
+ # value: "TagValue",
1528
+ # },
1529
+ # ],
1530
+ # })
1531
+ #
1532
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/TagResource AWS API Documentation
1533
+ #
1534
+ # @overload tag_resource(params = {})
1535
+ # @param [Hash] params ({})
1536
+ def tag_resource(params = {}, options = {})
1537
+ req = build_request(:tag_resource, params)
1538
+ req.send_request(options)
1539
+ end
1540
+
1541
+ # Deletes specified tags from a resource.
1542
+ #
1543
+ # @option params [required, String] :resource_arn
1544
+ # The Amazon Resource Name (ARN) of the resource to delete tags from.
1545
+ #
1546
+ # @option params [required, Array<String>] :tag_keys
1547
+ # The keys of the tags to be removed.
1548
+ #
1549
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1550
+ #
1551
+ # @example Request syntax with placeholder values
1552
+ #
1553
+ # resp = client.untag_resource({
1554
+ # resource_arn: "Arn", # required
1555
+ # tag_keys: ["TagKey"], # required
1556
+ # })
1557
+ #
1558
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UntagResource AWS API Documentation
1559
+ #
1560
+ # @overload untag_resource(params = {})
1561
+ # @param [Hash] params ({})
1562
+ def untag_resource(params = {}, options = {})
1563
+ req = build_request(:untag_resource, params)
1564
+ req.send_request(options)
1565
+ end
1566
+
1567
+ # Updates an existing service mesh.
1568
+ #
1569
+ # @option params [String] :client_token
1570
+ # Unique, case-sensitive identifier that you provide to ensure the
1571
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
1572
+ # underscores are allowed.
1573
+ #
1574
+ # **A suitable default value is auto-generated.** You should normally
1575
+ # not need to pass this option.**
1576
+ #
1577
+ # @option params [required, String] :mesh_name
1578
+ # The name of the service mesh to update.
1579
+ #
1580
+ # @option params [Types::MeshSpec] :spec
1581
+ # The service mesh specification to apply.
1582
+ #
1583
+ # @return [Types::UpdateMeshOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1584
+ #
1585
+ # * {Types::UpdateMeshOutput#mesh #mesh} => Types::MeshData
1586
+ #
1587
+ # @example Request syntax with placeholder values
1588
+ #
1589
+ # resp = client.update_mesh({
1590
+ # client_token: "String",
1591
+ # mesh_name: "ResourceName", # required
1592
+ # spec: {
1593
+ # egress_filter: {
1594
+ # type: "ALLOW_ALL", # required, accepts ALLOW_ALL, DROP_ALL
1595
+ # },
1596
+ # },
1597
+ # })
1598
+ #
1599
+ # @example Response structure
1600
+ #
1601
+ # resp.mesh.mesh_name #=> String
1602
+ # resp.mesh.metadata.arn #=> String
1603
+ # resp.mesh.metadata.created_at #=> Time
1604
+ # resp.mesh.metadata.last_updated_at #=> Time
1605
+ # resp.mesh.metadata.uid #=> String
1606
+ # resp.mesh.metadata.version #=> Integer
1607
+ # resp.mesh.spec.egress_filter.type #=> String, one of "ALLOW_ALL", "DROP_ALL"
1608
+ # resp.mesh.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1609
+ #
1610
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateMesh AWS API Documentation
1611
+ #
1612
+ # @overload update_mesh(params = {})
1613
+ # @param [Hash] params ({})
1614
+ def update_mesh(params = {}, options = {})
1615
+ req = build_request(:update_mesh, params)
1616
+ req.send_request(options)
1617
+ end
1618
+
1307
1619
  # Updates an existing route for a specified service mesh and virtual
1308
1620
  # router.
1309
1621
  #
@@ -1352,6 +1664,16 @@ module Aws::AppMesh
1352
1664
  # prefix: "String", # required
1353
1665
  # },
1354
1666
  # },
1667
+ # tcp_route: {
1668
+ # action: { # required
1669
+ # weighted_targets: [ # required
1670
+ # {
1671
+ # virtual_node: "ResourceName", # required
1672
+ # weight: 1, # required
1673
+ # },
1674
+ # ],
1675
+ # },
1676
+ # },
1355
1677
  # },
1356
1678
  # virtual_router_name: "ResourceName", # required
1357
1679
  # })
@@ -1369,6 +1691,9 @@ module Aws::AppMesh
1369
1691
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
1370
1692
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
1371
1693
  # resp.route.spec.http_route.match.prefix #=> String
1694
+ # resp.route.spec.tcp_route.action.weighted_targets #=> Array
1695
+ # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
1696
+ # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
1372
1697
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1373
1698
  # resp.route.virtual_router_name #=> String
1374
1699
  #
@@ -1435,6 +1760,13 @@ module Aws::AppMesh
1435
1760
  # },
1436
1761
  # },
1437
1762
  # ],
1763
+ # logging: {
1764
+ # access_log: {
1765
+ # file: {
1766
+ # path: "FilePath", # required
1767
+ # },
1768
+ # },
1769
+ # },
1438
1770
  # service_discovery: {
1439
1771
  # dns: {
1440
1772
  # hostname: "Hostname", # required
@@ -1464,6 +1796,7 @@ module Aws::AppMesh
1464
1796
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1465
1797
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
1466
1798
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp"
1799
+ # resp.virtual_node.spec.logging.access_log.file.path #=> String
1467
1800
  # resp.virtual_node.spec.service_discovery.dns.hostname #=> String
1468
1801
  # resp.virtual_node.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1469
1802
  # resp.virtual_node.virtual_node_name #=> String
@@ -1619,7 +1952,7 @@ module Aws::AppMesh
1619
1952
  params: params,
1620
1953
  config: config)
1621
1954
  context[:gem_name] = 'aws-sdk-appmesh'
1622
- context[:gem_version] = '1.5.0'
1955
+ context[:gem_version] = '1.6.0'
1623
1956
  Seahorse::Client::Request.new(handlers, context)
1624
1957
  end
1625
1958