aws-sdk-appmesh 1.23.0 → 1.28.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
  SHA256:
3
- metadata.gz: 0ab82228a2edf519c8c76641f32d9c15e9ad2d82c356fb278d690dd234bc714e
4
- data.tar.gz: afb22324fe01ca5835d0389e7452565ad33f16bc8a7059b592ebcc1e0edb70d1
3
+ metadata.gz: 6635dee1c7aa14de4ed9815088245d560ae89c15bc303e4596d390468c11c13d
4
+ data.tar.gz: 6e03e3f92f8086cbec7de2bd994cd0b35f1d80110b1cde84bb45c96b49cce398
5
5
  SHA512:
6
- metadata.gz: 16801252ba8a7f734fdfccf9fda3bb7e0e5029a00665b779dfd65952f4e9dc297d0e4fd9270314bd9f3f44d0b6ccd332d85c18ee2a58a2a44c93700f21211dc8
7
- data.tar.gz: 6eda00ce46ea636cf9ee75c090ce354028f38e168819a91f225780a62636e924ff9cde53d922e66cd1199872ea3618d748d97cf5993c2d73d2956ce9b708ef1a
6
+ metadata.gz: bce15d4cecc8652f4f814d79c46e0a16250a33ce18f94fdb6aa25ad4b31c603009cec6cfeb6d1438741639df89570f621d117245acfa939ff66a16a577dfda30
7
+ data.tar.gz: 0ef73719e2cb9b81021b7c37d7702150e585eab2bc39d1fc3172626617eb8a68b39b100c8cc1f3d2a81b332729b72bcbd0334b6ecb49aeca7437a67583c01241
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -25,7 +27,7 @@ require_relative 'aws-sdk-appmesh/customizations'
25
27
  # structure.
26
28
  #
27
29
  # app_mesh = Aws::AppMesh::Client.new
28
- # resp = app_mesh.create_mesh(params)
30
+ # resp = app_mesh.create_gateway_route(params)
29
31
  #
30
32
  # See {Client} for more information.
31
33
  #
@@ -45,6 +47,6 @@ require_relative 'aws-sdk-appmesh/customizations'
45
47
  # @service
46
48
  module Aws::AppMesh
47
49
 
48
- GEM_VERSION = '1.23.0'
50
+ GEM_VERSION = '1.28.0'
49
51
 
50
52
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
@@ -24,6 +26,7 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
26
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
30
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
31
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
29
32
 
@@ -69,6 +72,7 @@ module Aws::AppMesh
69
72
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
70
73
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
71
74
  add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
72
76
  add_plugin(Aws::Plugins::SignatureV4)
73
77
  add_plugin(Aws::Plugins::Protocols::RestJson)
74
78
 
@@ -161,7 +165,7 @@ module Aws::AppMesh
161
165
  # @option options [String] :endpoint
162
166
  # The client endpoint is normally constructed from the `:region`
163
167
  # option. You should only configure an `:endpoint` when connecting
164
- # to test endpoints. This should be a valid HTTP(S) URI.
168
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
165
169
  #
166
170
  # @option options [Integer] :endpoint_cache_max_entries (1000)
167
171
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -176,7 +180,7 @@ module Aws::AppMesh
176
180
  # requests fetching endpoints information. Defaults to 60 sec.
177
181
  #
178
182
  # @option options [Boolean] :endpoint_discovery (false)
179
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
183
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
180
184
  #
181
185
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
182
186
  # The log formatter.
@@ -308,6 +312,145 @@ module Aws::AppMesh
308
312
 
309
313
  # @!group API Operations
310
314
 
315
+ # Creates a gateway route.
316
+ #
317
+ # A gateway route is attached to a virtual gateway and routes traffic to
318
+ # an existing virtual service. If a route matches a request, it can
319
+ # distribute traffic to a target virtual service.
320
+ #
321
+ # For more information about gateway routes, see [Gateway routes][1].
322
+ #
323
+ #
324
+ #
325
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/gateway-routes.html
326
+ #
327
+ # @option params [String] :client_token
328
+ # Unique, case-sensitive identifier that you provide to ensure the
329
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
330
+ # underscores are allowed.
331
+ #
332
+ # **A suitable default value is auto-generated.** You should normally
333
+ # not need to pass this option.**
334
+ #
335
+ # @option params [required, String] :gateway_route_name
336
+ # The name to use for the gateway route.
337
+ #
338
+ # @option params [required, String] :mesh_name
339
+ # The name of the service mesh to create the gateway route in.
340
+ #
341
+ # @option params [String] :mesh_owner
342
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
343
+ # not your own, then the account that you specify must share the mesh
344
+ # with your account before you can create the resource in the service
345
+ # mesh. For more information about mesh sharing, see [Working with
346
+ # shared meshes][1].
347
+ #
348
+ #
349
+ #
350
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
351
+ #
352
+ # @option params [required, Types::GatewayRouteSpec] :spec
353
+ # The gateway route specification to apply.
354
+ #
355
+ # @option params [Array<Types::TagRef>] :tags
356
+ # Optional metadata that you can apply to the gateway route to assist
357
+ # with categorization and organization. Each tag consists of a key and
358
+ # an optional value, both of which you define. Tag keys can have a
359
+ # maximum character length of 128 characters, and tag values can have a
360
+ # maximum length of 256 characters.
361
+ #
362
+ # @option params [required, String] :virtual_gateway_name
363
+ # The name of the virtual gateway to associate the gateway route with.
364
+ # If the virtual gateway is in a shared mesh, then you must be the owner
365
+ # of the virtual gateway resource.
366
+ #
367
+ # @return [Types::CreateGatewayRouteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
368
+ #
369
+ # * {Types::CreateGatewayRouteOutput#gateway_route #gateway_route} => Types::GatewayRouteData
370
+ #
371
+ # @example Request syntax with placeholder values
372
+ #
373
+ # resp = client.create_gateway_route({
374
+ # client_token: "String",
375
+ # gateway_route_name: "ResourceName", # required
376
+ # mesh_name: "ResourceName", # required
377
+ # mesh_owner: "AccountId",
378
+ # spec: { # required
379
+ # grpc_route: {
380
+ # action: { # required
381
+ # target: { # required
382
+ # virtual_service: { # required
383
+ # virtual_service_name: "ResourceName", # required
384
+ # },
385
+ # },
386
+ # },
387
+ # match: { # required
388
+ # service_name: "ServiceName",
389
+ # },
390
+ # },
391
+ # http2_route: {
392
+ # action: { # required
393
+ # target: { # required
394
+ # virtual_service: { # required
395
+ # virtual_service_name: "ResourceName", # required
396
+ # },
397
+ # },
398
+ # },
399
+ # match: { # required
400
+ # prefix: "String", # required
401
+ # },
402
+ # },
403
+ # http_route: {
404
+ # action: { # required
405
+ # target: { # required
406
+ # virtual_service: { # required
407
+ # virtual_service_name: "ResourceName", # required
408
+ # },
409
+ # },
410
+ # },
411
+ # match: { # required
412
+ # prefix: "String", # required
413
+ # },
414
+ # },
415
+ # },
416
+ # tags: [
417
+ # {
418
+ # key: "TagKey", # required
419
+ # value: "TagValue",
420
+ # },
421
+ # ],
422
+ # virtual_gateway_name: "ResourceName", # required
423
+ # })
424
+ #
425
+ # @example Response structure
426
+ #
427
+ # resp.gateway_route.gateway_route_name #=> String
428
+ # resp.gateway_route.mesh_name #=> String
429
+ # resp.gateway_route.metadata.arn #=> String
430
+ # resp.gateway_route.metadata.created_at #=> Time
431
+ # resp.gateway_route.metadata.last_updated_at #=> Time
432
+ # resp.gateway_route.metadata.mesh_owner #=> String
433
+ # resp.gateway_route.metadata.resource_owner #=> String
434
+ # resp.gateway_route.metadata.uid #=> String
435
+ # resp.gateway_route.metadata.version #=> Integer
436
+ # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
437
+ # resp.gateway_route.spec.grpc_route.match.service_name #=> String
438
+ # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
439
+ # resp.gateway_route.spec.http2_route.match.prefix #=> String
440
+ # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
441
+ # resp.gateway_route.spec.http_route.match.prefix #=> String
442
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
443
+ # resp.gateway_route.virtual_gateway_name #=> String
444
+ #
445
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateGatewayRoute AWS API Documentation
446
+ #
447
+ # @overload create_gateway_route(params = {})
448
+ # @param [Hash] params ({})
449
+ def create_gateway_route(params = {}, options = {})
450
+ req = build_request(:create_gateway_route, params)
451
+ req.send_request(options)
452
+ end
453
+
311
454
  # Creates a service mesh.
312
455
  #
313
456
  # A service mesh is a logical boundary for network traffic between
@@ -414,7 +557,7 @@ module Aws::AppMesh
414
557
  # not your own, then the account that you specify must share the mesh
415
558
  # with your account before you can create the resource in the service
416
559
  # mesh. For more information about mesh sharing, see [Working with
417
- # Shared Meshes][1].
560
+ # shared meshes][1].
418
561
  #
419
562
  #
420
563
  #
@@ -489,6 +632,16 @@ module Aws::AppMesh
489
632
  # },
490
633
  # tcp_retry_events: ["connection-error"], # accepts connection-error
491
634
  # },
635
+ # timeout: {
636
+ # idle: {
637
+ # unit: "ms", # accepts ms, s
638
+ # value: 1,
639
+ # },
640
+ # per_request: {
641
+ # unit: "ms", # accepts ms, s
642
+ # value: 1,
643
+ # },
644
+ # },
492
645
  # },
493
646
  # http2_route: {
494
647
  # action: { # required
@@ -529,6 +682,16 @@ module Aws::AppMesh
529
682
  # },
530
683
  # tcp_retry_events: ["connection-error"], # accepts connection-error
531
684
  # },
685
+ # timeout: {
686
+ # idle: {
687
+ # unit: "ms", # accepts ms, s
688
+ # value: 1,
689
+ # },
690
+ # per_request: {
691
+ # unit: "ms", # accepts ms, s
692
+ # value: 1,
693
+ # },
694
+ # },
532
695
  # },
533
696
  # http_route: {
534
697
  # action: { # required
@@ -569,6 +732,16 @@ module Aws::AppMesh
569
732
  # },
570
733
  # tcp_retry_events: ["connection-error"], # accepts connection-error
571
734
  # },
735
+ # timeout: {
736
+ # idle: {
737
+ # unit: "ms", # accepts ms, s
738
+ # value: 1,
739
+ # },
740
+ # per_request: {
741
+ # unit: "ms", # accepts ms, s
742
+ # value: 1,
743
+ # },
744
+ # },
572
745
  # },
573
746
  # priority: 1,
574
747
  # tcp_route: {
@@ -580,6 +753,12 @@ module Aws::AppMesh
580
753
  # },
581
754
  # ],
582
755
  # },
756
+ # timeout: {
757
+ # idle: {
758
+ # unit: "ms", # accepts ms, s
759
+ # value: 1,
760
+ # },
761
+ # },
583
762
  # },
584
763
  # },
585
764
  # tags: [
@@ -625,6 +804,10 @@ module Aws::AppMesh
625
804
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
626
805
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
627
806
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
807
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "ms", "s"
808
+ # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
809
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
810
+ # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
628
811
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
629
812
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
630
813
  # resp.route.spec.http2_route.action.weighted_targets[0].weight #=> Integer
@@ -647,6 +830,10 @@ module Aws::AppMesh
647
830
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
648
831
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
649
832
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
833
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "ms", "s"
834
+ # resp.route.spec.http2_route.timeout.idle.value #=> Integer
835
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
836
+ # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
650
837
  # resp.route.spec.http_route.action.weighted_targets #=> Array
651
838
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
652
839
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
@@ -669,10 +856,16 @@ module Aws::AppMesh
669
856
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
670
857
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
671
858
  # resp.route.spec.http_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
859
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "ms", "s"
860
+ # resp.route.spec.http_route.timeout.idle.value #=> Integer
861
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
862
+ # resp.route.spec.http_route.timeout.per_request.value #=> Integer
672
863
  # resp.route.spec.priority #=> Integer
673
864
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
674
865
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
675
866
  # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
867
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "ms", "s"
868
+ # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
676
869
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
677
870
  # resp.route.virtual_router_name #=> String
678
871
  #
@@ -685,6 +878,175 @@ module Aws::AppMesh
685
878
  req.send_request(options)
686
879
  end
687
880
 
881
+ # Creates a virtual gateway.
882
+ #
883
+ # A virtual gateway allows resources outside your mesh to communicate to
884
+ # resources that are inside your mesh. The virtual gateway represents an
885
+ # Envoy proxy running in an Amazon ECS task, in a Kubernetes service, or
886
+ # on an Amazon EC2 instance. Unlike a virtual node, which represents an
887
+ # Envoy running with an application, a virtual gateway represents Envoy
888
+ # deployed by itself.
889
+ #
890
+ # For more information about virtual gateways, see [Virtual
891
+ # gateways][1].
892
+ #
893
+ #
894
+ #
895
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html
896
+ #
897
+ # @option params [String] :client_token
898
+ # Unique, case-sensitive identifier that you provide to ensure the
899
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
900
+ # underscores are allowed.
901
+ #
902
+ # **A suitable default value is auto-generated.** You should normally
903
+ # not need to pass this option.**
904
+ #
905
+ # @option params [required, String] :mesh_name
906
+ # The name of the service mesh to create the virtual gateway in.
907
+ #
908
+ # @option params [String] :mesh_owner
909
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
910
+ # not your own, then the account that you specify must share the mesh
911
+ # with your account before you can create the resource in the service
912
+ # mesh. For more information about mesh sharing, see [Working with
913
+ # shared meshes][1].
914
+ #
915
+ #
916
+ #
917
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
918
+ #
919
+ # @option params [required, Types::VirtualGatewaySpec] :spec
920
+ # The virtual gateway specification to apply.
921
+ #
922
+ # @option params [Array<Types::TagRef>] :tags
923
+ # Optional metadata that you can apply to the virtual gateway to assist
924
+ # with categorization and organization. Each tag consists of a key and
925
+ # an optional value, both of which you define. Tag keys can have a
926
+ # maximum character length of 128 characters, and tag values can have a
927
+ # maximum length of 256 characters.
928
+ #
929
+ # @option params [required, String] :virtual_gateway_name
930
+ # The name to use for the virtual gateway.
931
+ #
932
+ # @return [Types::CreateVirtualGatewayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
933
+ #
934
+ # * {Types::CreateVirtualGatewayOutput#virtual_gateway #virtual_gateway} => Types::VirtualGatewayData
935
+ #
936
+ # @example Request syntax with placeholder values
937
+ #
938
+ # resp = client.create_virtual_gateway({
939
+ # client_token: "String",
940
+ # mesh_name: "ResourceName", # required
941
+ # mesh_owner: "AccountId",
942
+ # spec: { # required
943
+ # backend_defaults: {
944
+ # client_policy: {
945
+ # tls: {
946
+ # enforce: false,
947
+ # ports: [1],
948
+ # validation: { # required
949
+ # trust: { # required
950
+ # acm: {
951
+ # certificate_authority_arns: ["Arn"], # required
952
+ # },
953
+ # file: {
954
+ # certificate_chain: "FilePath", # required
955
+ # },
956
+ # },
957
+ # },
958
+ # },
959
+ # },
960
+ # },
961
+ # listeners: [ # required
962
+ # {
963
+ # health_check: {
964
+ # healthy_threshold: 1, # required
965
+ # interval_millis: 1, # required
966
+ # path: "String",
967
+ # port: 1,
968
+ # protocol: "grpc", # required, accepts grpc, http, http2
969
+ # timeout_millis: 1, # required
970
+ # unhealthy_threshold: 1, # required
971
+ # },
972
+ # port_mapping: { # required
973
+ # port: 1, # required
974
+ # protocol: "grpc", # required, accepts grpc, http, http2
975
+ # },
976
+ # tls: {
977
+ # certificate: { # required
978
+ # acm: {
979
+ # certificate_arn: "Arn", # required
980
+ # },
981
+ # file: {
982
+ # certificate_chain: "FilePath", # required
983
+ # private_key: "FilePath", # required
984
+ # },
985
+ # },
986
+ # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
987
+ # },
988
+ # },
989
+ # ],
990
+ # logging: {
991
+ # access_log: {
992
+ # file: {
993
+ # path: "FilePath", # required
994
+ # },
995
+ # },
996
+ # },
997
+ # },
998
+ # tags: [
999
+ # {
1000
+ # key: "TagKey", # required
1001
+ # value: "TagValue",
1002
+ # },
1003
+ # ],
1004
+ # virtual_gateway_name: "ResourceName", # required
1005
+ # })
1006
+ #
1007
+ # @example Response structure
1008
+ #
1009
+ # resp.virtual_gateway.mesh_name #=> String
1010
+ # resp.virtual_gateway.metadata.arn #=> String
1011
+ # resp.virtual_gateway.metadata.created_at #=> Time
1012
+ # resp.virtual_gateway.metadata.last_updated_at #=> Time
1013
+ # resp.virtual_gateway.metadata.mesh_owner #=> String
1014
+ # resp.virtual_gateway.metadata.resource_owner #=> String
1015
+ # resp.virtual_gateway.metadata.uid #=> String
1016
+ # resp.virtual_gateway.metadata.version #=> Integer
1017
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
1018
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
1019
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
1020
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1021
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1022
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
1023
+ # resp.virtual_gateway.spec.listeners #=> Array
1024
+ # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
1025
+ # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
1026
+ # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
1027
+ # resp.virtual_gateway.spec.listeners[0].health_check.port #=> Integer
1028
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2"
1029
+ # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
1030
+ # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1031
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.port #=> Integer
1032
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2"
1033
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1034
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1035
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.private_key #=> String
1036
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
1037
+ # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
1038
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1039
+ # resp.virtual_gateway.virtual_gateway_name #=> String
1040
+ #
1041
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualGateway AWS API Documentation
1042
+ #
1043
+ # @overload create_virtual_gateway(params = {})
1044
+ # @param [Hash] params ({})
1045
+ def create_virtual_gateway(params = {}, options = {})
1046
+ req = build_request(:create_virtual_gateway, params)
1047
+ req.send_request(options)
1048
+ end
1049
+
688
1050
  # Creates a virtual node within a service mesh.
689
1051
  #
690
1052
  # A virtual node acts as a logical pointer to a particular task group,
@@ -736,7 +1098,7 @@ module Aws::AppMesh
736
1098
  # not your own, then the account that you specify must share the mesh
737
1099
  # with your account before you can create the resource in the service
738
1100
  # mesh. For more information about mesh sharing, see [Working with
739
- # Shared Meshes][1].
1101
+ # shared meshes][1].
740
1102
  #
741
1103
  #
742
1104
  #
@@ -822,6 +1184,44 @@ module Aws::AppMesh
822
1184
  # port: 1, # required
823
1185
  # protocol: "grpc", # required, accepts grpc, http, http2, tcp
824
1186
  # },
1187
+ # timeout: {
1188
+ # grpc: {
1189
+ # idle: {
1190
+ # unit: "ms", # accepts ms, s
1191
+ # value: 1,
1192
+ # },
1193
+ # per_request: {
1194
+ # unit: "ms", # accepts ms, s
1195
+ # value: 1,
1196
+ # },
1197
+ # },
1198
+ # http: {
1199
+ # idle: {
1200
+ # unit: "ms", # accepts ms, s
1201
+ # value: 1,
1202
+ # },
1203
+ # per_request: {
1204
+ # unit: "ms", # accepts ms, s
1205
+ # value: 1,
1206
+ # },
1207
+ # },
1208
+ # http2: {
1209
+ # idle: {
1210
+ # unit: "ms", # accepts ms, s
1211
+ # value: 1,
1212
+ # },
1213
+ # per_request: {
1214
+ # unit: "ms", # accepts ms, s
1215
+ # value: 1,
1216
+ # },
1217
+ # },
1218
+ # tcp: {
1219
+ # idle: {
1220
+ # unit: "ms", # accepts ms, s
1221
+ # value: 1,
1222
+ # },
1223
+ # },
1224
+ # },
825
1225
  # tls: {
826
1226
  # certificate: { # required
827
1227
  # acm: {
@@ -902,6 +1302,20 @@ module Aws::AppMesh
902
1302
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
903
1303
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
904
1304
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
1305
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "ms", "s"
1306
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.value #=> Integer
1307
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "ms", "s"
1308
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.value #=> Integer
1309
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "ms", "s"
1310
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.value #=> Integer
1311
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "ms", "s"
1312
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.value #=> Integer
1313
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "ms", "s"
1314
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.value #=> Integer
1315
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "ms", "s"
1316
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.value #=> Integer
1317
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "ms", "s"
1318
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
905
1319
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
906
1320
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
907
1321
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
@@ -956,7 +1370,7 @@ module Aws::AppMesh
956
1370
  # not your own, then the account that you specify must share the mesh
957
1371
  # with your account before you can create the resource in the service
958
1372
  # mesh. For more information about mesh sharing, see [Working with
959
- # Shared Meshes][1].
1373
+ # shared meshes][1].
960
1374
  #
961
1375
  #
962
1376
  #
@@ -1061,7 +1475,7 @@ module Aws::AppMesh
1061
1475
  # not your own, then the account that you specify must share the mesh
1062
1476
  # with your account before you can create the resource in the service
1063
1477
  # mesh. For more information about mesh sharing, see [Working with
1064
- # Shared Meshes][1].
1478
+ # shared meshes][1].
1065
1479
  #
1066
1480
  #
1067
1481
  #
@@ -1133,33 +1547,96 @@ module Aws::AppMesh
1133
1547
  req.send_request(options)
1134
1548
  end
1135
1549
 
1136
- # Deletes an existing service mesh.
1550
+ # Deletes an existing gateway route.
1137
1551
  #
1138
- # You must delete all resources (virtual services, routes, virtual
1139
- # routers, and virtual nodes) in the service mesh before you can delete
1140
- # the mesh itself.
1552
+ # @option params [required, String] :gateway_route_name
1553
+ # The name of the gateway route to delete.
1141
1554
  #
1142
1555
  # @option params [required, String] :mesh_name
1143
- # The name of the service mesh to delete.
1556
+ # The name of the service mesh to delete the gateway route from.
1144
1557
  #
1145
- # @return [Types::DeleteMeshOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1558
+ # @option params [String] :mesh_owner
1559
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
1560
+ # not your own, then it's the ID of the account that shared the mesh
1561
+ # with your account. For more information about mesh sharing, see
1562
+ # [Working with shared meshes][1].
1146
1563
  #
1147
- # * {Types::DeleteMeshOutput#mesh #mesh} => Types::MeshData
1564
+ #
1565
+ #
1566
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
1567
+ #
1568
+ # @option params [required, String] :virtual_gateway_name
1569
+ # The name of the virtual gateway to delete the route from.
1570
+ #
1571
+ # @return [Types::DeleteGatewayRouteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1572
+ #
1573
+ # * {Types::DeleteGatewayRouteOutput#gateway_route #gateway_route} => Types::GatewayRouteData
1148
1574
  #
1149
1575
  # @example Request syntax with placeholder values
1150
1576
  #
1151
- # resp = client.delete_mesh({
1577
+ # resp = client.delete_gateway_route({
1578
+ # gateway_route_name: "ResourceName", # required
1152
1579
  # mesh_name: "ResourceName", # required
1580
+ # mesh_owner: "AccountId",
1581
+ # virtual_gateway_name: "ResourceName", # required
1153
1582
  # })
1154
1583
  #
1155
1584
  # @example Response structure
1156
1585
  #
1157
- # resp.mesh.mesh_name #=> String
1158
- # resp.mesh.metadata.arn #=> String
1159
- # resp.mesh.metadata.created_at #=> Time
1160
- # resp.mesh.metadata.last_updated_at #=> Time
1161
- # resp.mesh.metadata.mesh_owner #=> String
1162
- # resp.mesh.metadata.resource_owner #=> String
1586
+ # resp.gateway_route.gateway_route_name #=> String
1587
+ # resp.gateway_route.mesh_name #=> String
1588
+ # resp.gateway_route.metadata.arn #=> String
1589
+ # resp.gateway_route.metadata.created_at #=> Time
1590
+ # resp.gateway_route.metadata.last_updated_at #=> Time
1591
+ # resp.gateway_route.metadata.mesh_owner #=> String
1592
+ # resp.gateway_route.metadata.resource_owner #=> String
1593
+ # resp.gateway_route.metadata.uid #=> String
1594
+ # resp.gateway_route.metadata.version #=> Integer
1595
+ # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
1596
+ # resp.gateway_route.spec.grpc_route.match.service_name #=> String
1597
+ # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
1598
+ # resp.gateway_route.spec.http2_route.match.prefix #=> String
1599
+ # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
1600
+ # resp.gateway_route.spec.http_route.match.prefix #=> String
1601
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1602
+ # resp.gateway_route.virtual_gateway_name #=> String
1603
+ #
1604
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteGatewayRoute AWS API Documentation
1605
+ #
1606
+ # @overload delete_gateway_route(params = {})
1607
+ # @param [Hash] params ({})
1608
+ def delete_gateway_route(params = {}, options = {})
1609
+ req = build_request(:delete_gateway_route, params)
1610
+ req.send_request(options)
1611
+ end
1612
+
1613
+ # Deletes an existing service mesh.
1614
+ #
1615
+ # You must delete all resources (virtual services, routes, virtual
1616
+ # routers, and virtual nodes) in the service mesh before you can delete
1617
+ # the mesh itself.
1618
+ #
1619
+ # @option params [required, String] :mesh_name
1620
+ # The name of the service mesh to delete.
1621
+ #
1622
+ # @return [Types::DeleteMeshOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1623
+ #
1624
+ # * {Types::DeleteMeshOutput#mesh #mesh} => Types::MeshData
1625
+ #
1626
+ # @example Request syntax with placeholder values
1627
+ #
1628
+ # resp = client.delete_mesh({
1629
+ # mesh_name: "ResourceName", # required
1630
+ # })
1631
+ #
1632
+ # @example Response structure
1633
+ #
1634
+ # resp.mesh.mesh_name #=> String
1635
+ # resp.mesh.metadata.arn #=> String
1636
+ # resp.mesh.metadata.created_at #=> Time
1637
+ # resp.mesh.metadata.last_updated_at #=> Time
1638
+ # resp.mesh.metadata.mesh_owner #=> String
1639
+ # resp.mesh.metadata.resource_owner #=> String
1163
1640
  # resp.mesh.metadata.uid #=> String
1164
1641
  # resp.mesh.metadata.version #=> Integer
1165
1642
  # resp.mesh.spec.egress_filter.type #=> String, one of "ALLOW_ALL", "DROP_ALL"
@@ -1183,7 +1660,7 @@ module Aws::AppMesh
1183
1660
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1184
1661
  # not your own, then it's the ID of the account that shared the mesh
1185
1662
  # with your account. For more information about mesh sharing, see
1186
- # [Working with Shared Meshes][1].
1663
+ # [Working with shared meshes][1].
1187
1664
  #
1188
1665
  #
1189
1666
  #
@@ -1242,6 +1719,10 @@ module Aws::AppMesh
1242
1719
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
1243
1720
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
1244
1721
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
1722
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "ms", "s"
1723
+ # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
1724
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
1725
+ # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
1245
1726
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
1246
1727
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
1247
1728
  # resp.route.spec.http2_route.action.weighted_targets[0].weight #=> Integer
@@ -1264,6 +1745,10 @@ module Aws::AppMesh
1264
1745
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
1265
1746
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
1266
1747
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
1748
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "ms", "s"
1749
+ # resp.route.spec.http2_route.timeout.idle.value #=> Integer
1750
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
1751
+ # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
1267
1752
  # resp.route.spec.http_route.action.weighted_targets #=> Array
1268
1753
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
1269
1754
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
@@ -1286,10 +1771,16 @@ module Aws::AppMesh
1286
1771
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
1287
1772
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
1288
1773
  # resp.route.spec.http_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
1774
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "ms", "s"
1775
+ # resp.route.spec.http_route.timeout.idle.value #=> Integer
1776
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
1777
+ # resp.route.spec.http_route.timeout.per_request.value #=> Integer
1289
1778
  # resp.route.spec.priority #=> Integer
1290
1779
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
1291
1780
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
1292
1781
  # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
1782
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "ms", "s"
1783
+ # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
1293
1784
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1294
1785
  # resp.route.virtual_router_name #=> String
1295
1786
  #
@@ -1302,6 +1793,80 @@ module Aws::AppMesh
1302
1793
  req.send_request(options)
1303
1794
  end
1304
1795
 
1796
+ # Deletes an existing virtual gateway. You cannot delete a virtual
1797
+ # gateway if any gateway routes are associated to it.
1798
+ #
1799
+ # @option params [required, String] :mesh_name
1800
+ # The name of the service mesh to delete the virtual gateway from.
1801
+ #
1802
+ # @option params [String] :mesh_owner
1803
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
1804
+ # not your own, then it's the ID of the account that shared the mesh
1805
+ # with your account. For more information about mesh sharing, see
1806
+ # [Working with shared meshes][1].
1807
+ #
1808
+ #
1809
+ #
1810
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
1811
+ #
1812
+ # @option params [required, String] :virtual_gateway_name
1813
+ # The name of the virtual gateway to delete.
1814
+ #
1815
+ # @return [Types::DeleteVirtualGatewayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1816
+ #
1817
+ # * {Types::DeleteVirtualGatewayOutput#virtual_gateway #virtual_gateway} => Types::VirtualGatewayData
1818
+ #
1819
+ # @example Request syntax with placeholder values
1820
+ #
1821
+ # resp = client.delete_virtual_gateway({
1822
+ # mesh_name: "ResourceName", # required
1823
+ # mesh_owner: "AccountId",
1824
+ # virtual_gateway_name: "ResourceName", # required
1825
+ # })
1826
+ #
1827
+ # @example Response structure
1828
+ #
1829
+ # resp.virtual_gateway.mesh_name #=> String
1830
+ # resp.virtual_gateway.metadata.arn #=> String
1831
+ # resp.virtual_gateway.metadata.created_at #=> Time
1832
+ # resp.virtual_gateway.metadata.last_updated_at #=> Time
1833
+ # resp.virtual_gateway.metadata.mesh_owner #=> String
1834
+ # resp.virtual_gateway.metadata.resource_owner #=> String
1835
+ # resp.virtual_gateway.metadata.uid #=> String
1836
+ # resp.virtual_gateway.metadata.version #=> Integer
1837
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
1838
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
1839
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
1840
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1841
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1842
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
1843
+ # resp.virtual_gateway.spec.listeners #=> Array
1844
+ # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
1845
+ # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
1846
+ # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
1847
+ # resp.virtual_gateway.spec.listeners[0].health_check.port #=> Integer
1848
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2"
1849
+ # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
1850
+ # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1851
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.port #=> Integer
1852
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2"
1853
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1854
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1855
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.private_key #=> String
1856
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
1857
+ # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
1858
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1859
+ # resp.virtual_gateway.virtual_gateway_name #=> String
1860
+ #
1861
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualGateway AWS API Documentation
1862
+ #
1863
+ # @overload delete_virtual_gateway(params = {})
1864
+ # @param [Hash] params ({})
1865
+ def delete_virtual_gateway(params = {}, options = {})
1866
+ req = build_request(:delete_virtual_gateway, params)
1867
+ req.send_request(options)
1868
+ end
1869
+
1305
1870
  # Deletes an existing virtual node.
1306
1871
  #
1307
1872
  # You must delete any virtual services that list a virtual node as a
@@ -1314,7 +1879,7 @@ module Aws::AppMesh
1314
1879
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1315
1880
  # not your own, then it's the ID of the account that shared the mesh
1316
1881
  # with your account. For more information about mesh sharing, see
1317
- # [Working with Shared Meshes][1].
1882
+ # [Working with shared meshes][1].
1318
1883
  #
1319
1884
  #
1320
1885
  #
@@ -1369,6 +1934,20 @@ module Aws::AppMesh
1369
1934
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1370
1935
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
1371
1936
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
1937
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "ms", "s"
1938
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.value #=> Integer
1939
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "ms", "s"
1940
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.value #=> Integer
1941
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "ms", "s"
1942
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.value #=> Integer
1943
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "ms", "s"
1944
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.value #=> Integer
1945
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "ms", "s"
1946
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.value #=> Integer
1947
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "ms", "s"
1948
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.value #=> Integer
1949
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "ms", "s"
1950
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
1372
1951
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1373
1952
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1374
1953
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
@@ -1404,7 +1983,7 @@ module Aws::AppMesh
1404
1983
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1405
1984
  # not your own, then it's the ID of the account that shared the mesh
1406
1985
  # with your account. For more information about mesh sharing, see
1407
- # [Working with Shared Meshes][1].
1986
+ # [Working with shared meshes][1].
1408
1987
  #
1409
1988
  #
1410
1989
  #
@@ -1459,7 +2038,7 @@ module Aws::AppMesh
1459
2038
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1460
2039
  # not your own, then it's the ID of the account that shared the mesh
1461
2040
  # with your account. For more information about mesh sharing, see
1462
- # [Working with Shared Meshes][1].
2041
+ # [Working with shared meshes][1].
1463
2042
  #
1464
2043
  #
1465
2044
  #
@@ -1504,6 +2083,70 @@ module Aws::AppMesh
1504
2083
  req.send_request(options)
1505
2084
  end
1506
2085
 
2086
+ # Describes an existing gateway route.
2087
+ #
2088
+ # @option params [required, String] :gateway_route_name
2089
+ # The name of the gateway route to describe.
2090
+ #
2091
+ # @option params [required, String] :mesh_name
2092
+ # The name of the service mesh that the gateway route resides in.
2093
+ #
2094
+ # @option params [String] :mesh_owner
2095
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
2096
+ # not your own, then it's the ID of the account that shared the mesh
2097
+ # with your account. For more information about mesh sharing, see
2098
+ # [Working with shared meshes][1].
2099
+ #
2100
+ #
2101
+ #
2102
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2103
+ #
2104
+ # @option params [required, String] :virtual_gateway_name
2105
+ # The name of the virtual gateway that the gateway route is associated
2106
+ # with.
2107
+ #
2108
+ # @return [Types::DescribeGatewayRouteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2109
+ #
2110
+ # * {Types::DescribeGatewayRouteOutput#gateway_route #gateway_route} => Types::GatewayRouteData
2111
+ #
2112
+ # @example Request syntax with placeholder values
2113
+ #
2114
+ # resp = client.describe_gateway_route({
2115
+ # gateway_route_name: "ResourceName", # required
2116
+ # mesh_name: "ResourceName", # required
2117
+ # mesh_owner: "AccountId",
2118
+ # virtual_gateway_name: "ResourceName", # required
2119
+ # })
2120
+ #
2121
+ # @example Response structure
2122
+ #
2123
+ # resp.gateway_route.gateway_route_name #=> String
2124
+ # resp.gateway_route.mesh_name #=> String
2125
+ # resp.gateway_route.metadata.arn #=> String
2126
+ # resp.gateway_route.metadata.created_at #=> Time
2127
+ # resp.gateway_route.metadata.last_updated_at #=> Time
2128
+ # resp.gateway_route.metadata.mesh_owner #=> String
2129
+ # resp.gateway_route.metadata.resource_owner #=> String
2130
+ # resp.gateway_route.metadata.uid #=> String
2131
+ # resp.gateway_route.metadata.version #=> Integer
2132
+ # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
2133
+ # resp.gateway_route.spec.grpc_route.match.service_name #=> String
2134
+ # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
2135
+ # resp.gateway_route.spec.http2_route.match.prefix #=> String
2136
+ # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
2137
+ # resp.gateway_route.spec.http_route.match.prefix #=> String
2138
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2139
+ # resp.gateway_route.virtual_gateway_name #=> String
2140
+ #
2141
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeGatewayRoute AWS API Documentation
2142
+ #
2143
+ # @overload describe_gateway_route(params = {})
2144
+ # @param [Hash] params ({})
2145
+ def describe_gateway_route(params = {}, options = {})
2146
+ req = build_request(:describe_gateway_route, params)
2147
+ req.send_request(options)
2148
+ end
2149
+
1507
2150
  # Describes an existing service mesh.
1508
2151
  #
1509
2152
  # @option params [required, String] :mesh_name
@@ -1513,7 +2156,7 @@ module Aws::AppMesh
1513
2156
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1514
2157
  # not your own, then it's the ID of the account that shared the mesh
1515
2158
  # with your account. For more information about mesh sharing, see
1516
- # [Working with Shared Meshes][1].
2159
+ # [Working with shared meshes][1].
1517
2160
  #
1518
2161
  #
1519
2162
  #
@@ -1561,7 +2204,7 @@ module Aws::AppMesh
1561
2204
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1562
2205
  # not your own, then it's the ID of the account that shared the mesh
1563
2206
  # with your account. For more information about mesh sharing, see
1564
- # [Working with Shared Meshes][1].
2207
+ # [Working with shared meshes][1].
1565
2208
  #
1566
2209
  #
1567
2210
  #
@@ -1620,6 +2263,10 @@ module Aws::AppMesh
1620
2263
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
1621
2264
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
1622
2265
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
2266
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "ms", "s"
2267
+ # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
2268
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
2269
+ # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
1623
2270
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
1624
2271
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
1625
2272
  # resp.route.spec.http2_route.action.weighted_targets[0].weight #=> Integer
@@ -1642,6 +2289,10 @@ module Aws::AppMesh
1642
2289
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
1643
2290
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
1644
2291
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
2292
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "ms", "s"
2293
+ # resp.route.spec.http2_route.timeout.idle.value #=> Integer
2294
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
2295
+ # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
1645
2296
  # resp.route.spec.http_route.action.weighted_targets #=> Array
1646
2297
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
1647
2298
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
@@ -1664,10 +2315,16 @@ module Aws::AppMesh
1664
2315
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
1665
2316
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
1666
2317
  # resp.route.spec.http_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
2318
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "ms", "s"
2319
+ # resp.route.spec.http_route.timeout.idle.value #=> Integer
2320
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
2321
+ # resp.route.spec.http_route.timeout.per_request.value #=> Integer
1667
2322
  # resp.route.spec.priority #=> Integer
1668
2323
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
1669
2324
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
1670
2325
  # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
2326
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "ms", "s"
2327
+ # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
1671
2328
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1672
2329
  # resp.route.virtual_router_name #=> String
1673
2330
  #
@@ -1680,6 +2337,79 @@ module Aws::AppMesh
1680
2337
  req.send_request(options)
1681
2338
  end
1682
2339
 
2340
+ # Describes an existing virtual gateway.
2341
+ #
2342
+ # @option params [required, String] :mesh_name
2343
+ # The name of the service mesh that the gateway route resides in.
2344
+ #
2345
+ # @option params [String] :mesh_owner
2346
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
2347
+ # not your own, then it's the ID of the account that shared the mesh
2348
+ # with your account. For more information about mesh sharing, see
2349
+ # [Working with shared meshes][1].
2350
+ #
2351
+ #
2352
+ #
2353
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2354
+ #
2355
+ # @option params [required, String] :virtual_gateway_name
2356
+ # The name of the virtual gateway to describe.
2357
+ #
2358
+ # @return [Types::DescribeVirtualGatewayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2359
+ #
2360
+ # * {Types::DescribeVirtualGatewayOutput#virtual_gateway #virtual_gateway} => Types::VirtualGatewayData
2361
+ #
2362
+ # @example Request syntax with placeholder values
2363
+ #
2364
+ # resp = client.describe_virtual_gateway({
2365
+ # mesh_name: "ResourceName", # required
2366
+ # mesh_owner: "AccountId",
2367
+ # virtual_gateway_name: "ResourceName", # required
2368
+ # })
2369
+ #
2370
+ # @example Response structure
2371
+ #
2372
+ # resp.virtual_gateway.mesh_name #=> String
2373
+ # resp.virtual_gateway.metadata.arn #=> String
2374
+ # resp.virtual_gateway.metadata.created_at #=> Time
2375
+ # resp.virtual_gateway.metadata.last_updated_at #=> Time
2376
+ # resp.virtual_gateway.metadata.mesh_owner #=> String
2377
+ # resp.virtual_gateway.metadata.resource_owner #=> String
2378
+ # resp.virtual_gateway.metadata.uid #=> String
2379
+ # resp.virtual_gateway.metadata.version #=> Integer
2380
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
2381
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
2382
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
2383
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
2384
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
2385
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
2386
+ # resp.virtual_gateway.spec.listeners #=> Array
2387
+ # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
2388
+ # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
2389
+ # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
2390
+ # resp.virtual_gateway.spec.listeners[0].health_check.port #=> Integer
2391
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2"
2392
+ # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
2393
+ # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
2394
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.port #=> Integer
2395
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2"
2396
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
2397
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
2398
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.private_key #=> String
2399
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
2400
+ # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
2401
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2402
+ # resp.virtual_gateway.virtual_gateway_name #=> String
2403
+ #
2404
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualGateway AWS API Documentation
2405
+ #
2406
+ # @overload describe_virtual_gateway(params = {})
2407
+ # @param [Hash] params ({})
2408
+ def describe_virtual_gateway(params = {}, options = {})
2409
+ req = build_request(:describe_virtual_gateway, params)
2410
+ req.send_request(options)
2411
+ end
2412
+
1683
2413
  # Describes an existing virtual node.
1684
2414
  #
1685
2415
  # @option params [required, String] :mesh_name
@@ -1689,7 +2419,7 @@ module Aws::AppMesh
1689
2419
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1690
2420
  # not your own, then it's the ID of the account that shared the mesh
1691
2421
  # with your account. For more information about mesh sharing, see
1692
- # [Working with Shared Meshes][1].
2422
+ # [Working with shared meshes][1].
1693
2423
  #
1694
2424
  #
1695
2425
  #
@@ -1744,6 +2474,20 @@ module Aws::AppMesh
1744
2474
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1745
2475
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
1746
2476
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
2477
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "ms", "s"
2478
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.value #=> Integer
2479
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "ms", "s"
2480
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.value #=> Integer
2481
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "ms", "s"
2482
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.value #=> Integer
2483
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "ms", "s"
2484
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.value #=> Integer
2485
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "ms", "s"
2486
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.value #=> Integer
2487
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "ms", "s"
2488
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.value #=> Integer
2489
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "ms", "s"
2490
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
1747
2491
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1748
2492
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1749
2493
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
@@ -1776,7 +2520,7 @@ module Aws::AppMesh
1776
2520
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1777
2521
  # not your own, then it's the ID of the account that shared the mesh
1778
2522
  # with your account. For more information about mesh sharing, see
1779
- # [Working with Shared Meshes][1].
2523
+ # [Working with shared meshes][1].
1780
2524
  #
1781
2525
  #
1782
2526
  #
@@ -1831,7 +2575,7 @@ module Aws::AppMesh
1831
2575
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1832
2576
  # not your own, then it's the ID of the account that shared the mesh
1833
2577
  # with your account. For more information about mesh sharing, see
1834
- # [Working with Shared Meshes][1].
2578
+ # [Working with shared meshes][1].
1835
2579
  #
1836
2580
  #
1837
2581
  #
@@ -1876,6 +2620,81 @@ module Aws::AppMesh
1876
2620
  req.send_request(options)
1877
2621
  end
1878
2622
 
2623
+ # Returns a list of existing gateway routes that are associated to a
2624
+ # virtual gateway.
2625
+ #
2626
+ # @option params [Integer] :limit
2627
+ # The maximum number of results returned by `ListGatewayRoutes` in
2628
+ # paginated output. When you use this parameter, `ListGatewayRoutes`
2629
+ # returns only `limit` results in a single page along with a `nextToken`
2630
+ # response element. You can see the remaining results of the initial
2631
+ # request by sending another `ListGatewayRoutes` request with the
2632
+ # returned `nextToken` value. This value can be between 1 and 100. If
2633
+ # you don't use this parameter, `ListGatewayRoutes` returns up to 100
2634
+ # results and a `nextToken` value if applicable.
2635
+ #
2636
+ # @option params [required, String] :mesh_name
2637
+ # The name of the service mesh to list gateway routes in.
2638
+ #
2639
+ # @option params [String] :mesh_owner
2640
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
2641
+ # not your own, then it's the ID of the account that shared the mesh
2642
+ # with your account. For more information about mesh sharing, see
2643
+ # [Working with shared meshes][1].
2644
+ #
2645
+ #
2646
+ #
2647
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2648
+ #
2649
+ # @option params [String] :next_token
2650
+ # The `nextToken` value returned from a previous paginated
2651
+ # `ListGatewayRoutes` request where `limit` was used and the results
2652
+ # exceeded the value of that parameter. Pagination continues from the
2653
+ # end of the previous results that returned the `nextToken` value.
2654
+ #
2655
+ # @option params [required, String] :virtual_gateway_name
2656
+ # The name of the virtual gateway to list gateway routes in.
2657
+ #
2658
+ # @return [Types::ListGatewayRoutesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2659
+ #
2660
+ # * {Types::ListGatewayRoutesOutput#gateway_routes #gateway_routes} => Array&lt;Types::GatewayRouteRef&gt;
2661
+ # * {Types::ListGatewayRoutesOutput#next_token #next_token} => String
2662
+ #
2663
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2664
+ #
2665
+ # @example Request syntax with placeholder values
2666
+ #
2667
+ # resp = client.list_gateway_routes({
2668
+ # limit: 1,
2669
+ # mesh_name: "ResourceName", # required
2670
+ # mesh_owner: "AccountId",
2671
+ # next_token: "String",
2672
+ # virtual_gateway_name: "ResourceName", # required
2673
+ # })
2674
+ #
2675
+ # @example Response structure
2676
+ #
2677
+ # resp.gateway_routes #=> Array
2678
+ # resp.gateway_routes[0].arn #=> String
2679
+ # resp.gateway_routes[0].created_at #=> Time
2680
+ # resp.gateway_routes[0].gateway_route_name #=> String
2681
+ # resp.gateway_routes[0].last_updated_at #=> Time
2682
+ # resp.gateway_routes[0].mesh_name #=> String
2683
+ # resp.gateway_routes[0].mesh_owner #=> String
2684
+ # resp.gateway_routes[0].resource_owner #=> String
2685
+ # resp.gateway_routes[0].version #=> Integer
2686
+ # resp.gateway_routes[0].virtual_gateway_name #=> String
2687
+ # resp.next_token #=> String
2688
+ #
2689
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListGatewayRoutes AWS API Documentation
2690
+ #
2691
+ # @overload list_gateway_routes(params = {})
2692
+ # @param [Hash] params ({})
2693
+ def list_gateway_routes(params = {}, options = {})
2694
+ req = build_request(:list_gateway_routes, params)
2695
+ req.send_request(options)
2696
+ end
2697
+
1879
2698
  # Returns a list of existing service meshes.
1880
2699
  #
1881
2700
  # @option params [Integer] :limit
@@ -1954,7 +2773,7 @@ module Aws::AppMesh
1954
2773
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1955
2774
  # not your own, then it's the ID of the account that shared the mesh
1956
2775
  # with your account. For more information about mesh sharing, see
1957
- # [Working with Shared Meshes][1].
2776
+ # [Working with shared meshes][1].
1958
2777
  #
1959
2778
  #
1960
2779
  #
@@ -2062,6 +2881,75 @@ module Aws::AppMesh
2062
2881
  req.send_request(options)
2063
2882
  end
2064
2883
 
2884
+ # Returns a list of existing virtual gateways in a service mesh.
2885
+ #
2886
+ # @option params [Integer] :limit
2887
+ # The maximum number of results returned by `ListVirtualGateways` in
2888
+ # paginated output. When you use this parameter, `ListVirtualGateways`
2889
+ # returns only `limit` results in a single page along with a `nextToken`
2890
+ # response element. You can see the remaining results of the initial
2891
+ # request by sending another `ListVirtualGateways` request with the
2892
+ # returned `nextToken` value. This value can be between 1 and 100. If
2893
+ # you don't use this parameter, `ListVirtualGateways` returns up to 100
2894
+ # results and a `nextToken` value if applicable.
2895
+ #
2896
+ # @option params [required, String] :mesh_name
2897
+ # The name of the service mesh to list virtual gateways in.
2898
+ #
2899
+ # @option params [String] :mesh_owner
2900
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
2901
+ # not your own, then it's the ID of the account that shared the mesh
2902
+ # with your account. For more information about mesh sharing, see
2903
+ # [Working with shared meshes][1].
2904
+ #
2905
+ #
2906
+ #
2907
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2908
+ #
2909
+ # @option params [String] :next_token
2910
+ # The `nextToken` value returned from a previous paginated
2911
+ # `ListVirtualGateways` request where `limit` was used and the results
2912
+ # exceeded the value of that parameter. Pagination continues from the
2913
+ # end of the previous results that returned the `nextToken` value.
2914
+ #
2915
+ # @return [Types::ListVirtualGatewaysOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2916
+ #
2917
+ # * {Types::ListVirtualGatewaysOutput#next_token #next_token} => String
2918
+ # * {Types::ListVirtualGatewaysOutput#virtual_gateways #virtual_gateways} => Array&lt;Types::VirtualGatewayRef&gt;
2919
+ #
2920
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2921
+ #
2922
+ # @example Request syntax with placeholder values
2923
+ #
2924
+ # resp = client.list_virtual_gateways({
2925
+ # limit: 1,
2926
+ # mesh_name: "ResourceName", # required
2927
+ # mesh_owner: "AccountId",
2928
+ # next_token: "String",
2929
+ # })
2930
+ #
2931
+ # @example Response structure
2932
+ #
2933
+ # resp.next_token #=> String
2934
+ # resp.virtual_gateways #=> Array
2935
+ # resp.virtual_gateways[0].arn #=> String
2936
+ # resp.virtual_gateways[0].created_at #=> Time
2937
+ # resp.virtual_gateways[0].last_updated_at #=> Time
2938
+ # resp.virtual_gateways[0].mesh_name #=> String
2939
+ # resp.virtual_gateways[0].mesh_owner #=> String
2940
+ # resp.virtual_gateways[0].resource_owner #=> String
2941
+ # resp.virtual_gateways[0].version #=> Integer
2942
+ # resp.virtual_gateways[0].virtual_gateway_name #=> String
2943
+ #
2944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualGateways AWS API Documentation
2945
+ #
2946
+ # @overload list_virtual_gateways(params = {})
2947
+ # @param [Hash] params ({})
2948
+ def list_virtual_gateways(params = {}, options = {})
2949
+ req = build_request(:list_virtual_gateways, params)
2950
+ req.send_request(options)
2951
+ end
2952
+
2065
2953
  # Returns a list of existing virtual nodes.
2066
2954
  #
2067
2955
  # @option params [Integer] :limit
@@ -2081,7 +2969,7 @@ module Aws::AppMesh
2081
2969
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2082
2970
  # not your own, then it's the ID of the account that shared the mesh
2083
2971
  # with your account. For more information about mesh sharing, see
2084
- # [Working with Shared Meshes][1].
2972
+ # [Working with shared meshes][1].
2085
2973
  #
2086
2974
  #
2087
2975
  #
@@ -2150,7 +3038,7 @@ module Aws::AppMesh
2150
3038
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2151
3039
  # not your own, then it's the ID of the account that shared the mesh
2152
3040
  # with your account. For more information about mesh sharing, see
2153
- # [Working with Shared Meshes][1].
3041
+ # [Working with shared meshes][1].
2154
3042
  #
2155
3043
  #
2156
3044
  #
@@ -2219,7 +3107,7 @@ module Aws::AppMesh
2219
3107
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2220
3108
  # not your own, then it's the ID of the account that shared the mesh
2221
3109
  # with your account. For more information about mesh sharing, see
2222
- # [Working with Shared Meshes][1].
3110
+ # [Working with shared meshes][1].
2223
3111
  #
2224
3112
  #
2225
3113
  #
@@ -2331,6 +3219,122 @@ module Aws::AppMesh
2331
3219
  req.send_request(options)
2332
3220
  end
2333
3221
 
3222
+ # Updates an existing gateway route that is associated to a specified
3223
+ # virtual gateway in a service mesh.
3224
+ #
3225
+ # @option params [String] :client_token
3226
+ # Unique, case-sensitive identifier that you provide to ensure the
3227
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
3228
+ # underscores are allowed.
3229
+ #
3230
+ # **A suitable default value is auto-generated.** You should normally
3231
+ # not need to pass this option.**
3232
+ #
3233
+ # @option params [required, String] :gateway_route_name
3234
+ # The name of the gateway route to update.
3235
+ #
3236
+ # @option params [required, String] :mesh_name
3237
+ # The name of the service mesh that the gateway route resides in.
3238
+ #
3239
+ # @option params [String] :mesh_owner
3240
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
3241
+ # not your own, then it's the ID of the account that shared the mesh
3242
+ # with your account. For more information about mesh sharing, see
3243
+ # [Working with shared meshes][1].
3244
+ #
3245
+ #
3246
+ #
3247
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
3248
+ #
3249
+ # @option params [required, Types::GatewayRouteSpec] :spec
3250
+ # The new gateway route specification to apply. This overwrites the
3251
+ # existing data.
3252
+ #
3253
+ # @option params [required, String] :virtual_gateway_name
3254
+ # The name of the virtual gateway that the gateway route is associated
3255
+ # with.
3256
+ #
3257
+ # @return [Types::UpdateGatewayRouteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3258
+ #
3259
+ # * {Types::UpdateGatewayRouteOutput#gateway_route #gateway_route} => Types::GatewayRouteData
3260
+ #
3261
+ # @example Request syntax with placeholder values
3262
+ #
3263
+ # resp = client.update_gateway_route({
3264
+ # client_token: "String",
3265
+ # gateway_route_name: "ResourceName", # required
3266
+ # mesh_name: "ResourceName", # required
3267
+ # mesh_owner: "AccountId",
3268
+ # spec: { # required
3269
+ # grpc_route: {
3270
+ # action: { # required
3271
+ # target: { # required
3272
+ # virtual_service: { # required
3273
+ # virtual_service_name: "ResourceName", # required
3274
+ # },
3275
+ # },
3276
+ # },
3277
+ # match: { # required
3278
+ # service_name: "ServiceName",
3279
+ # },
3280
+ # },
3281
+ # http2_route: {
3282
+ # action: { # required
3283
+ # target: { # required
3284
+ # virtual_service: { # required
3285
+ # virtual_service_name: "ResourceName", # required
3286
+ # },
3287
+ # },
3288
+ # },
3289
+ # match: { # required
3290
+ # prefix: "String", # required
3291
+ # },
3292
+ # },
3293
+ # http_route: {
3294
+ # action: { # required
3295
+ # target: { # required
3296
+ # virtual_service: { # required
3297
+ # virtual_service_name: "ResourceName", # required
3298
+ # },
3299
+ # },
3300
+ # },
3301
+ # match: { # required
3302
+ # prefix: "String", # required
3303
+ # },
3304
+ # },
3305
+ # },
3306
+ # virtual_gateway_name: "ResourceName", # required
3307
+ # })
3308
+ #
3309
+ # @example Response structure
3310
+ #
3311
+ # resp.gateway_route.gateway_route_name #=> String
3312
+ # resp.gateway_route.mesh_name #=> String
3313
+ # resp.gateway_route.metadata.arn #=> String
3314
+ # resp.gateway_route.metadata.created_at #=> Time
3315
+ # resp.gateway_route.metadata.last_updated_at #=> Time
3316
+ # resp.gateway_route.metadata.mesh_owner #=> String
3317
+ # resp.gateway_route.metadata.resource_owner #=> String
3318
+ # resp.gateway_route.metadata.uid #=> String
3319
+ # resp.gateway_route.metadata.version #=> Integer
3320
+ # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
3321
+ # resp.gateway_route.spec.grpc_route.match.service_name #=> String
3322
+ # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
3323
+ # resp.gateway_route.spec.http2_route.match.prefix #=> String
3324
+ # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
3325
+ # resp.gateway_route.spec.http_route.match.prefix #=> String
3326
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
3327
+ # resp.gateway_route.virtual_gateway_name #=> String
3328
+ #
3329
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateGatewayRoute AWS API Documentation
3330
+ #
3331
+ # @overload update_gateway_route(params = {})
3332
+ # @param [Hash] params ({})
3333
+ def update_gateway_route(params = {}, options = {})
3334
+ req = build_request(:update_gateway_route, params)
3335
+ req.send_request(options)
3336
+ end
3337
+
2334
3338
  # Updates an existing service mesh.
2335
3339
  #
2336
3340
  # @option params [String] :client_token
@@ -2403,7 +3407,7 @@ module Aws::AppMesh
2403
3407
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2404
3408
  # not your own, then it's the ID of the account that shared the mesh
2405
3409
  # with your account. For more information about mesh sharing, see
2406
- # [Working with Shared Meshes][1].
3410
+ # [Working with shared meshes][1].
2407
3411
  #
2408
3412
  #
2409
3413
  #
@@ -2470,6 +3474,16 @@ module Aws::AppMesh
2470
3474
  # },
2471
3475
  # tcp_retry_events: ["connection-error"], # accepts connection-error
2472
3476
  # },
3477
+ # timeout: {
3478
+ # idle: {
3479
+ # unit: "ms", # accepts ms, s
3480
+ # value: 1,
3481
+ # },
3482
+ # per_request: {
3483
+ # unit: "ms", # accepts ms, s
3484
+ # value: 1,
3485
+ # },
3486
+ # },
2473
3487
  # },
2474
3488
  # http2_route: {
2475
3489
  # action: { # required
@@ -2510,6 +3524,16 @@ module Aws::AppMesh
2510
3524
  # },
2511
3525
  # tcp_retry_events: ["connection-error"], # accepts connection-error
2512
3526
  # },
3527
+ # timeout: {
3528
+ # idle: {
3529
+ # unit: "ms", # accepts ms, s
3530
+ # value: 1,
3531
+ # },
3532
+ # per_request: {
3533
+ # unit: "ms", # accepts ms, s
3534
+ # value: 1,
3535
+ # },
3536
+ # },
2513
3537
  # },
2514
3538
  # http_route: {
2515
3539
  # action: { # required
@@ -2550,6 +3574,16 @@ module Aws::AppMesh
2550
3574
  # },
2551
3575
  # tcp_retry_events: ["connection-error"], # accepts connection-error
2552
3576
  # },
3577
+ # timeout: {
3578
+ # idle: {
3579
+ # unit: "ms", # accepts ms, s
3580
+ # value: 1,
3581
+ # },
3582
+ # per_request: {
3583
+ # unit: "ms", # accepts ms, s
3584
+ # value: 1,
3585
+ # },
3586
+ # },
2553
3587
  # },
2554
3588
  # priority: 1,
2555
3589
  # tcp_route: {
@@ -2561,6 +3595,12 @@ module Aws::AppMesh
2561
3595
  # },
2562
3596
  # ],
2563
3597
  # },
3598
+ # timeout: {
3599
+ # idle: {
3600
+ # unit: "ms", # accepts ms, s
3601
+ # value: 1,
3602
+ # },
3603
+ # },
2564
3604
  # },
2565
3605
  # },
2566
3606
  # virtual_router_name: "ResourceName", # required
@@ -2600,6 +3640,10 @@ module Aws::AppMesh
2600
3640
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
2601
3641
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
2602
3642
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
3643
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "ms", "s"
3644
+ # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
3645
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
3646
+ # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
2603
3647
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
2604
3648
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
2605
3649
  # resp.route.spec.http2_route.action.weighted_targets[0].weight #=> Integer
@@ -2622,6 +3666,10 @@ module Aws::AppMesh
2622
3666
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
2623
3667
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
2624
3668
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
3669
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "ms", "s"
3670
+ # resp.route.spec.http2_route.timeout.idle.value #=> Integer
3671
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
3672
+ # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
2625
3673
  # resp.route.spec.http_route.action.weighted_targets #=> Array
2626
3674
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
2627
3675
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
@@ -2644,10 +3692,16 @@ module Aws::AppMesh
2644
3692
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
2645
3693
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
2646
3694
  # resp.route.spec.http_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
3695
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "ms", "s"
3696
+ # resp.route.spec.http_route.timeout.idle.value #=> Integer
3697
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
3698
+ # resp.route.spec.http_route.timeout.per_request.value #=> Integer
2647
3699
  # resp.route.spec.priority #=> Integer
2648
3700
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
2649
3701
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
2650
3702
  # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
3703
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "ms", "s"
3704
+ # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
2651
3705
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2652
3706
  # resp.route.virtual_router_name #=> String
2653
3707
  #
@@ -2660,6 +3714,148 @@ module Aws::AppMesh
2660
3714
  req.send_request(options)
2661
3715
  end
2662
3716
 
3717
+ # Updates an existing virtual gateway in a specified service mesh.
3718
+ #
3719
+ # @option params [String] :client_token
3720
+ # Unique, case-sensitive identifier that you provide to ensure the
3721
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
3722
+ # underscores are allowed.
3723
+ #
3724
+ # **A suitable default value is auto-generated.** You should normally
3725
+ # not need to pass this option.**
3726
+ #
3727
+ # @option params [required, String] :mesh_name
3728
+ # The name of the service mesh that the virtual gateway resides in.
3729
+ #
3730
+ # @option params [String] :mesh_owner
3731
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
3732
+ # not your own, then it's the ID of the account that shared the mesh
3733
+ # with your account. For more information about mesh sharing, see
3734
+ # [Working with shared meshes][1].
3735
+ #
3736
+ #
3737
+ #
3738
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
3739
+ #
3740
+ # @option params [required, Types::VirtualGatewaySpec] :spec
3741
+ # The new virtual gateway specification to apply. This overwrites the
3742
+ # existing data.
3743
+ #
3744
+ # @option params [required, String] :virtual_gateway_name
3745
+ # The name of the virtual gateway to update.
3746
+ #
3747
+ # @return [Types::UpdateVirtualGatewayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3748
+ #
3749
+ # * {Types::UpdateVirtualGatewayOutput#virtual_gateway #virtual_gateway} => Types::VirtualGatewayData
3750
+ #
3751
+ # @example Request syntax with placeholder values
3752
+ #
3753
+ # resp = client.update_virtual_gateway({
3754
+ # client_token: "String",
3755
+ # mesh_name: "ResourceName", # required
3756
+ # mesh_owner: "AccountId",
3757
+ # spec: { # required
3758
+ # backend_defaults: {
3759
+ # client_policy: {
3760
+ # tls: {
3761
+ # enforce: false,
3762
+ # ports: [1],
3763
+ # validation: { # required
3764
+ # trust: { # required
3765
+ # acm: {
3766
+ # certificate_authority_arns: ["Arn"], # required
3767
+ # },
3768
+ # file: {
3769
+ # certificate_chain: "FilePath", # required
3770
+ # },
3771
+ # },
3772
+ # },
3773
+ # },
3774
+ # },
3775
+ # },
3776
+ # listeners: [ # required
3777
+ # {
3778
+ # health_check: {
3779
+ # healthy_threshold: 1, # required
3780
+ # interval_millis: 1, # required
3781
+ # path: "String",
3782
+ # port: 1,
3783
+ # protocol: "grpc", # required, accepts grpc, http, http2
3784
+ # timeout_millis: 1, # required
3785
+ # unhealthy_threshold: 1, # required
3786
+ # },
3787
+ # port_mapping: { # required
3788
+ # port: 1, # required
3789
+ # protocol: "grpc", # required, accepts grpc, http, http2
3790
+ # },
3791
+ # tls: {
3792
+ # certificate: { # required
3793
+ # acm: {
3794
+ # certificate_arn: "Arn", # required
3795
+ # },
3796
+ # file: {
3797
+ # certificate_chain: "FilePath", # required
3798
+ # private_key: "FilePath", # required
3799
+ # },
3800
+ # },
3801
+ # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
3802
+ # },
3803
+ # },
3804
+ # ],
3805
+ # logging: {
3806
+ # access_log: {
3807
+ # file: {
3808
+ # path: "FilePath", # required
3809
+ # },
3810
+ # },
3811
+ # },
3812
+ # },
3813
+ # virtual_gateway_name: "ResourceName", # required
3814
+ # })
3815
+ #
3816
+ # @example Response structure
3817
+ #
3818
+ # resp.virtual_gateway.mesh_name #=> String
3819
+ # resp.virtual_gateway.metadata.arn #=> String
3820
+ # resp.virtual_gateway.metadata.created_at #=> Time
3821
+ # resp.virtual_gateway.metadata.last_updated_at #=> Time
3822
+ # resp.virtual_gateway.metadata.mesh_owner #=> String
3823
+ # resp.virtual_gateway.metadata.resource_owner #=> String
3824
+ # resp.virtual_gateway.metadata.uid #=> String
3825
+ # resp.virtual_gateway.metadata.version #=> Integer
3826
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
3827
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
3828
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
3829
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
3830
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
3831
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
3832
+ # resp.virtual_gateway.spec.listeners #=> Array
3833
+ # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
3834
+ # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
3835
+ # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
3836
+ # resp.virtual_gateway.spec.listeners[0].health_check.port #=> Integer
3837
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2"
3838
+ # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
3839
+ # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
3840
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.port #=> Integer
3841
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2"
3842
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
3843
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
3844
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.private_key #=> String
3845
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
3846
+ # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
3847
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
3848
+ # resp.virtual_gateway.virtual_gateway_name #=> String
3849
+ #
3850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGateway AWS API Documentation
3851
+ #
3852
+ # @overload update_virtual_gateway(params = {})
3853
+ # @param [Hash] params ({})
3854
+ def update_virtual_gateway(params = {}, options = {})
3855
+ req = build_request(:update_virtual_gateway, params)
3856
+ req.send_request(options)
3857
+ end
3858
+
2663
3859
  # Updates an existing virtual node in a specified service mesh.
2664
3860
  #
2665
3861
  # @option params [String] :client_token
@@ -2677,7 +3873,7 @@ module Aws::AppMesh
2677
3873
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2678
3874
  # not your own, then it's the ID of the account that shared the mesh
2679
3875
  # with your account. For more information about mesh sharing, see
2680
- # [Working with Shared Meshes][1].
3876
+ # [Working with shared meshes][1].
2681
3877
  #
2682
3878
  #
2683
3879
  #
@@ -2757,6 +3953,44 @@ module Aws::AppMesh
2757
3953
  # port: 1, # required
2758
3954
  # protocol: "grpc", # required, accepts grpc, http, http2, tcp
2759
3955
  # },
3956
+ # timeout: {
3957
+ # grpc: {
3958
+ # idle: {
3959
+ # unit: "ms", # accepts ms, s
3960
+ # value: 1,
3961
+ # },
3962
+ # per_request: {
3963
+ # unit: "ms", # accepts ms, s
3964
+ # value: 1,
3965
+ # },
3966
+ # },
3967
+ # http: {
3968
+ # idle: {
3969
+ # unit: "ms", # accepts ms, s
3970
+ # value: 1,
3971
+ # },
3972
+ # per_request: {
3973
+ # unit: "ms", # accepts ms, s
3974
+ # value: 1,
3975
+ # },
3976
+ # },
3977
+ # http2: {
3978
+ # idle: {
3979
+ # unit: "ms", # accepts ms, s
3980
+ # value: 1,
3981
+ # },
3982
+ # per_request: {
3983
+ # unit: "ms", # accepts ms, s
3984
+ # value: 1,
3985
+ # },
3986
+ # },
3987
+ # tcp: {
3988
+ # idle: {
3989
+ # unit: "ms", # accepts ms, s
3990
+ # value: 1,
3991
+ # },
3992
+ # },
3993
+ # },
2760
3994
  # tls: {
2761
3995
  # certificate: { # required
2762
3996
  # acm: {
@@ -2831,6 +4065,20 @@ module Aws::AppMesh
2831
4065
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
2832
4066
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
2833
4067
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
4068
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "ms", "s"
4069
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.value #=> Integer
4070
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "ms", "s"
4071
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.value #=> Integer
4072
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "ms", "s"
4073
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.value #=> Integer
4074
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "ms", "s"
4075
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.value #=> Integer
4076
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "ms", "s"
4077
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.value #=> Integer
4078
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "ms", "s"
4079
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.value #=> Integer
4080
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "ms", "s"
4081
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
2834
4082
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
2835
4083
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
2836
4084
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
@@ -2871,7 +4119,7 @@ module Aws::AppMesh
2871
4119
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2872
4120
  # not your own, then it's the ID of the account that shared the mesh
2873
4121
  # with your account. For more information about mesh sharing, see
2874
- # [Working with Shared Meshes][1].
4122
+ # [Working with shared meshes][1].
2875
4123
  #
2876
4124
  #
2877
4125
  #
@@ -2949,7 +4197,7 @@ module Aws::AppMesh
2949
4197
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2950
4198
  # not your own, then it's the ID of the account that shared the mesh
2951
4199
  # with your account. For more information about mesh sharing, see
2952
- # [Working with Shared Meshes][1].
4200
+ # [Working with shared meshes][1].
2953
4201
  #
2954
4202
  #
2955
4203
  #
@@ -3022,7 +4270,7 @@ module Aws::AppMesh
3022
4270
  params: params,
3023
4271
  config: config)
3024
4272
  context[:gem_name] = 'aws-sdk-appmesh'
3025
- context[:gem_version] = '1.23.0'
4273
+ context[:gem_version] = '1.28.0'
3026
4274
  Seahorse::Client::Request.new(handlers, context)
3027
4275
  end
3028
4276