aws-sdk-appmesh 1.25.1 → 1.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 59eee3f413ada4736dc1464cfaf939a693a975cd850ac94385de252d0be2067e
4
- data.tar.gz: 31fcd3bae754aa2c11e1a1ebb70bb8ab2e075f08587166326ba757062fe9adbe
3
+ metadata.gz: 4cbaf5b739f4075e83eb12bd1f8a3d99b15ee439ccad50d57c8e675fea67b888
4
+ data.tar.gz: 795234dacfd3020e2d37388b59e1ff4ad6d1d95231da07d6800c40dad3c66dbf
5
5
  SHA512:
6
- metadata.gz: ab6d8f3fd9e91f87e5932971970e3022d593a8694ff4736ddad80469e0e5d60fc3664c95f5e8ddb151e8dedd2e5260cce4597713cc753b2184b7eb801e832fca
7
- data.tar.gz: 522da79f8a8e262cc4ebf823279281d3a2aeb692330eadd9db3fd79f2d5b44837cae1f6cb7fbcc6511c3938578687cae04df111a1e1df62157fdf242ace42629
6
+ metadata.gz: 1f87cfb5e1c7616f12c21545240ba2d3a4b05ab754b60049c14e39a5f771396fe8c9c84a6efcdff95e23283ad08291eb350352db9458c22aaa4957064d5182c9
7
+ data.tar.gz: f97fa6fa79adbd394c8b137cf7db5c2c1f781e7d20395de0d4cdaba2410d278f99d0ea3fa2262561a0f235e0cf89e5d9237e28f54eb3386543d63e129484012f
@@ -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:
@@ -5,6 +7,7 @@
5
7
  #
6
8
  # WARNING ABOUT GENERATED CODE
7
9
 
10
+
8
11
  require 'aws-sdk-core'
9
12
  require 'aws-sigv4'
10
13
 
@@ -25,7 +28,7 @@ require_relative 'aws-sdk-appmesh/customizations'
25
28
  # structure.
26
29
  #
27
30
  # app_mesh = Aws::AppMesh::Client.new
28
- # resp = app_mesh.create_mesh(params)
31
+ # resp = app_mesh.create_gateway_route(params)
29
32
  #
30
33
  # See {Client} for more information.
31
34
  #
@@ -42,9 +45,9 @@ require_relative 'aws-sdk-appmesh/customizations'
42
45
  #
43
46
  # See {Errors} for more information.
44
47
  #
45
- # @service
48
+ # @!group service
46
49
  module Aws::AppMesh
47
50
 
48
- GEM_VERSION = '1.25.1'
51
+ GEM_VERSION = '1.30.0'
49
52
 
50
53
  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:
@@ -83,13 +85,28 @@ module Aws::AppMesh
83
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
84
86
  # credentials.
85
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
86
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
87
103
  # from an EC2 IMDS on an EC2 instance.
88
104
  #
89
- # * `Aws::SharedCredentials` - Used for loading credentials from a
90
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
91
107
  #
92
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
93
110
  #
94
111
  # When `:credentials` are not configured directly, the following
95
112
  # locations will be searched for credentials:
@@ -99,10 +116,10 @@ module Aws::AppMesh
99
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
100
117
  # * `~/.aws/credentials`
101
118
  # * `~/.aws/config`
102
- # * EC2 IMDS instance profile - When used by default, the timeouts are
103
- # very aggressive. Construct and pass an instance of
104
- # `Aws::InstanceProfileCredentails` to enable retries and extended
105
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
106
123
  #
107
124
  # @option options [required, String] :region
108
125
  # The AWS region to connect to. The configured `:region` is
@@ -310,6 +327,145 @@ module Aws::AppMesh
310
327
 
311
328
  # @!group API Operations
312
329
 
330
+ # Creates a gateway route.
331
+ #
332
+ # A gateway route is attached to a virtual gateway and routes traffic to
333
+ # an existing virtual service. If a route matches a request, it can
334
+ # distribute traffic to a target virtual service.
335
+ #
336
+ # For more information about gateway routes, see [Gateway routes][1].
337
+ #
338
+ #
339
+ #
340
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/gateway-routes.html
341
+ #
342
+ # @option params [String] :client_token
343
+ # Unique, case-sensitive identifier that you provide to ensure the
344
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
345
+ # underscores are allowed.
346
+ #
347
+ # **A suitable default value is auto-generated.** You should normally
348
+ # not need to pass this option.**
349
+ #
350
+ # @option params [required, String] :gateway_route_name
351
+ # The name to use for the gateway route.
352
+ #
353
+ # @option params [required, String] :mesh_name
354
+ # The name of the service mesh to create the gateway route in.
355
+ #
356
+ # @option params [String] :mesh_owner
357
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
358
+ # not your own, then the account that you specify must share the mesh
359
+ # with your account before you can create the resource in the service
360
+ # mesh. For more information about mesh sharing, see [Working with
361
+ # shared meshes][1].
362
+ #
363
+ #
364
+ #
365
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
366
+ #
367
+ # @option params [required, Types::GatewayRouteSpec] :spec
368
+ # The gateway route specification to apply.
369
+ #
370
+ # @option params [Array<Types::TagRef>] :tags
371
+ # Optional metadata that you can apply to the gateway route to assist
372
+ # with categorization and organization. Each tag consists of a key and
373
+ # an optional value, both of which you define. Tag keys can have a
374
+ # maximum character length of 128 characters, and tag values can have a
375
+ # maximum length of 256 characters.
376
+ #
377
+ # @option params [required, String] :virtual_gateway_name
378
+ # The name of the virtual gateway to associate the gateway route with.
379
+ # If the virtual gateway is in a shared mesh, then you must be the owner
380
+ # of the virtual gateway resource.
381
+ #
382
+ # @return [Types::CreateGatewayRouteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
383
+ #
384
+ # * {Types::CreateGatewayRouteOutput#gateway_route #gateway_route} => Types::GatewayRouteData
385
+ #
386
+ # @example Request syntax with placeholder values
387
+ #
388
+ # resp = client.create_gateway_route({
389
+ # client_token: "String",
390
+ # gateway_route_name: "ResourceName", # required
391
+ # mesh_name: "ResourceName", # required
392
+ # mesh_owner: "AccountId",
393
+ # spec: { # required
394
+ # grpc_route: {
395
+ # action: { # required
396
+ # target: { # required
397
+ # virtual_service: { # required
398
+ # virtual_service_name: "ResourceName", # required
399
+ # },
400
+ # },
401
+ # },
402
+ # match: { # required
403
+ # service_name: "ServiceName",
404
+ # },
405
+ # },
406
+ # http2_route: {
407
+ # action: { # required
408
+ # target: { # required
409
+ # virtual_service: { # required
410
+ # virtual_service_name: "ResourceName", # required
411
+ # },
412
+ # },
413
+ # },
414
+ # match: { # required
415
+ # prefix: "String", # required
416
+ # },
417
+ # },
418
+ # http_route: {
419
+ # action: { # required
420
+ # target: { # required
421
+ # virtual_service: { # required
422
+ # virtual_service_name: "ResourceName", # required
423
+ # },
424
+ # },
425
+ # },
426
+ # match: { # required
427
+ # prefix: "String", # required
428
+ # },
429
+ # },
430
+ # },
431
+ # tags: [
432
+ # {
433
+ # key: "TagKey", # required
434
+ # value: "TagValue",
435
+ # },
436
+ # ],
437
+ # virtual_gateway_name: "ResourceName", # required
438
+ # })
439
+ #
440
+ # @example Response structure
441
+ #
442
+ # resp.gateway_route.gateway_route_name #=> String
443
+ # resp.gateway_route.mesh_name #=> String
444
+ # resp.gateway_route.metadata.arn #=> String
445
+ # resp.gateway_route.metadata.created_at #=> Time
446
+ # resp.gateway_route.metadata.last_updated_at #=> Time
447
+ # resp.gateway_route.metadata.mesh_owner #=> String
448
+ # resp.gateway_route.metadata.resource_owner #=> String
449
+ # resp.gateway_route.metadata.uid #=> String
450
+ # resp.gateway_route.metadata.version #=> Integer
451
+ # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
452
+ # resp.gateway_route.spec.grpc_route.match.service_name #=> String
453
+ # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
454
+ # resp.gateway_route.spec.http2_route.match.prefix #=> String
455
+ # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
456
+ # resp.gateway_route.spec.http_route.match.prefix #=> String
457
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
458
+ # resp.gateway_route.virtual_gateway_name #=> String
459
+ #
460
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateGatewayRoute AWS API Documentation
461
+ #
462
+ # @overload create_gateway_route(params = {})
463
+ # @param [Hash] params ({})
464
+ def create_gateway_route(params = {}, options = {})
465
+ req = build_request(:create_gateway_route, params)
466
+ req.send_request(options)
467
+ end
468
+
313
469
  # Creates a service mesh.
314
470
  #
315
471
  # A service mesh is a logical boundary for network traffic between
@@ -416,7 +572,7 @@ module Aws::AppMesh
416
572
  # not your own, then the account that you specify must share the mesh
417
573
  # with your account before you can create the resource in the service
418
574
  # mesh. For more information about mesh sharing, see [Working with
419
- # Shared Meshes][1].
575
+ # shared meshes][1].
420
576
  #
421
577
  #
422
578
  #
@@ -491,6 +647,16 @@ module Aws::AppMesh
491
647
  # },
492
648
  # tcp_retry_events: ["connection-error"], # accepts connection-error
493
649
  # },
650
+ # timeout: {
651
+ # idle: {
652
+ # unit: "ms", # accepts ms, s
653
+ # value: 1,
654
+ # },
655
+ # per_request: {
656
+ # unit: "ms", # accepts ms, s
657
+ # value: 1,
658
+ # },
659
+ # },
494
660
  # },
495
661
  # http2_route: {
496
662
  # action: { # required
@@ -531,6 +697,16 @@ module Aws::AppMesh
531
697
  # },
532
698
  # tcp_retry_events: ["connection-error"], # accepts connection-error
533
699
  # },
700
+ # timeout: {
701
+ # idle: {
702
+ # unit: "ms", # accepts ms, s
703
+ # value: 1,
704
+ # },
705
+ # per_request: {
706
+ # unit: "ms", # accepts ms, s
707
+ # value: 1,
708
+ # },
709
+ # },
534
710
  # },
535
711
  # http_route: {
536
712
  # action: { # required
@@ -571,6 +747,16 @@ module Aws::AppMesh
571
747
  # },
572
748
  # tcp_retry_events: ["connection-error"], # accepts connection-error
573
749
  # },
750
+ # timeout: {
751
+ # idle: {
752
+ # unit: "ms", # accepts ms, s
753
+ # value: 1,
754
+ # },
755
+ # per_request: {
756
+ # unit: "ms", # accepts ms, s
757
+ # value: 1,
758
+ # },
759
+ # },
574
760
  # },
575
761
  # priority: 1,
576
762
  # tcp_route: {
@@ -582,6 +768,12 @@ module Aws::AppMesh
582
768
  # },
583
769
  # ],
584
770
  # },
771
+ # timeout: {
772
+ # idle: {
773
+ # unit: "ms", # accepts ms, s
774
+ # value: 1,
775
+ # },
776
+ # },
585
777
  # },
586
778
  # },
587
779
  # tags: [
@@ -627,6 +819,10 @@ module Aws::AppMesh
627
819
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
628
820
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
629
821
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
822
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "ms", "s"
823
+ # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
824
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
825
+ # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
630
826
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
631
827
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
632
828
  # resp.route.spec.http2_route.action.weighted_targets[0].weight #=> Integer
@@ -649,6 +845,10 @@ module Aws::AppMesh
649
845
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
650
846
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
651
847
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
848
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "ms", "s"
849
+ # resp.route.spec.http2_route.timeout.idle.value #=> Integer
850
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
851
+ # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
652
852
  # resp.route.spec.http_route.action.weighted_targets #=> Array
653
853
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
654
854
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
@@ -671,10 +871,16 @@ module Aws::AppMesh
671
871
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
672
872
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
673
873
  # resp.route.spec.http_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
874
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "ms", "s"
875
+ # resp.route.spec.http_route.timeout.idle.value #=> Integer
876
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
877
+ # resp.route.spec.http_route.timeout.per_request.value #=> Integer
674
878
  # resp.route.spec.priority #=> Integer
675
879
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
676
880
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
677
881
  # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
882
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "ms", "s"
883
+ # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
678
884
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
679
885
  # resp.route.virtual_router_name #=> String
680
886
  #
@@ -687,6 +893,175 @@ module Aws::AppMesh
687
893
  req.send_request(options)
688
894
  end
689
895
 
896
+ # Creates a virtual gateway.
897
+ #
898
+ # A virtual gateway allows resources outside your mesh to communicate to
899
+ # resources that are inside your mesh. The virtual gateway represents an
900
+ # Envoy proxy running in an Amazon ECS task, in a Kubernetes service, or
901
+ # on an Amazon EC2 instance. Unlike a virtual node, which represents an
902
+ # Envoy running with an application, a virtual gateway represents Envoy
903
+ # deployed by itself.
904
+ #
905
+ # For more information about virtual gateways, see [Virtual
906
+ # gateways][1].
907
+ #
908
+ #
909
+ #
910
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html
911
+ #
912
+ # @option params [String] :client_token
913
+ # Unique, case-sensitive identifier that you provide to ensure the
914
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
915
+ # underscores are allowed.
916
+ #
917
+ # **A suitable default value is auto-generated.** You should normally
918
+ # not need to pass this option.**
919
+ #
920
+ # @option params [required, String] :mesh_name
921
+ # The name of the service mesh to create the virtual gateway in.
922
+ #
923
+ # @option params [String] :mesh_owner
924
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
925
+ # not your own, then the account that you specify must share the mesh
926
+ # with your account before you can create the resource in the service
927
+ # mesh. For more information about mesh sharing, see [Working with
928
+ # shared meshes][1].
929
+ #
930
+ #
931
+ #
932
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
933
+ #
934
+ # @option params [required, Types::VirtualGatewaySpec] :spec
935
+ # The virtual gateway specification to apply.
936
+ #
937
+ # @option params [Array<Types::TagRef>] :tags
938
+ # Optional metadata that you can apply to the virtual gateway to assist
939
+ # with categorization and organization. Each tag consists of a key and
940
+ # an optional value, both of which you define. Tag keys can have a
941
+ # maximum character length of 128 characters, and tag values can have a
942
+ # maximum length of 256 characters.
943
+ #
944
+ # @option params [required, String] :virtual_gateway_name
945
+ # The name to use for the virtual gateway.
946
+ #
947
+ # @return [Types::CreateVirtualGatewayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
948
+ #
949
+ # * {Types::CreateVirtualGatewayOutput#virtual_gateway #virtual_gateway} => Types::VirtualGatewayData
950
+ #
951
+ # @example Request syntax with placeholder values
952
+ #
953
+ # resp = client.create_virtual_gateway({
954
+ # client_token: "String",
955
+ # mesh_name: "ResourceName", # required
956
+ # mesh_owner: "AccountId",
957
+ # spec: { # required
958
+ # backend_defaults: {
959
+ # client_policy: {
960
+ # tls: {
961
+ # enforce: false,
962
+ # ports: [1],
963
+ # validation: { # required
964
+ # trust: { # required
965
+ # acm: {
966
+ # certificate_authority_arns: ["Arn"], # required
967
+ # },
968
+ # file: {
969
+ # certificate_chain: "FilePath", # required
970
+ # },
971
+ # },
972
+ # },
973
+ # },
974
+ # },
975
+ # },
976
+ # listeners: [ # required
977
+ # {
978
+ # health_check: {
979
+ # healthy_threshold: 1, # required
980
+ # interval_millis: 1, # required
981
+ # path: "String",
982
+ # port: 1,
983
+ # protocol: "grpc", # required, accepts grpc, http, http2
984
+ # timeout_millis: 1, # required
985
+ # unhealthy_threshold: 1, # required
986
+ # },
987
+ # port_mapping: { # required
988
+ # port: 1, # required
989
+ # protocol: "grpc", # required, accepts grpc, http, http2
990
+ # },
991
+ # tls: {
992
+ # certificate: { # required
993
+ # acm: {
994
+ # certificate_arn: "Arn", # required
995
+ # },
996
+ # file: {
997
+ # certificate_chain: "FilePath", # required
998
+ # private_key: "FilePath", # required
999
+ # },
1000
+ # },
1001
+ # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
1002
+ # },
1003
+ # },
1004
+ # ],
1005
+ # logging: {
1006
+ # access_log: {
1007
+ # file: {
1008
+ # path: "FilePath", # required
1009
+ # },
1010
+ # },
1011
+ # },
1012
+ # },
1013
+ # tags: [
1014
+ # {
1015
+ # key: "TagKey", # required
1016
+ # value: "TagValue",
1017
+ # },
1018
+ # ],
1019
+ # virtual_gateway_name: "ResourceName", # required
1020
+ # })
1021
+ #
1022
+ # @example Response structure
1023
+ #
1024
+ # resp.virtual_gateway.mesh_name #=> String
1025
+ # resp.virtual_gateway.metadata.arn #=> String
1026
+ # resp.virtual_gateway.metadata.created_at #=> Time
1027
+ # resp.virtual_gateway.metadata.last_updated_at #=> Time
1028
+ # resp.virtual_gateway.metadata.mesh_owner #=> String
1029
+ # resp.virtual_gateway.metadata.resource_owner #=> String
1030
+ # resp.virtual_gateway.metadata.uid #=> String
1031
+ # resp.virtual_gateway.metadata.version #=> Integer
1032
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
1033
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
1034
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
1035
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1036
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1037
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
1038
+ # resp.virtual_gateway.spec.listeners #=> Array
1039
+ # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
1040
+ # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
1041
+ # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
1042
+ # resp.virtual_gateway.spec.listeners[0].health_check.port #=> Integer
1043
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2"
1044
+ # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
1045
+ # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1046
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.port #=> Integer
1047
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2"
1048
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1049
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1050
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.private_key #=> String
1051
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
1052
+ # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
1053
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1054
+ # resp.virtual_gateway.virtual_gateway_name #=> String
1055
+ #
1056
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualGateway AWS API Documentation
1057
+ #
1058
+ # @overload create_virtual_gateway(params = {})
1059
+ # @param [Hash] params ({})
1060
+ def create_virtual_gateway(params = {}, options = {})
1061
+ req = build_request(:create_virtual_gateway, params)
1062
+ req.send_request(options)
1063
+ end
1064
+
690
1065
  # Creates a virtual node within a service mesh.
691
1066
  #
692
1067
  # A virtual node acts as a logical pointer to a particular task group,
@@ -738,7 +1113,7 @@ module Aws::AppMesh
738
1113
  # not your own, then the account that you specify must share the mesh
739
1114
  # with your account before you can create the resource in the service
740
1115
  # mesh. For more information about mesh sharing, see [Working with
741
- # Shared Meshes][1].
1116
+ # shared meshes][1].
742
1117
  #
743
1118
  #
744
1119
  #
@@ -824,6 +1199,44 @@ module Aws::AppMesh
824
1199
  # port: 1, # required
825
1200
  # protocol: "grpc", # required, accepts grpc, http, http2, tcp
826
1201
  # },
1202
+ # timeout: {
1203
+ # grpc: {
1204
+ # idle: {
1205
+ # unit: "ms", # accepts ms, s
1206
+ # value: 1,
1207
+ # },
1208
+ # per_request: {
1209
+ # unit: "ms", # accepts ms, s
1210
+ # value: 1,
1211
+ # },
1212
+ # },
1213
+ # http: {
1214
+ # idle: {
1215
+ # unit: "ms", # accepts ms, s
1216
+ # value: 1,
1217
+ # },
1218
+ # per_request: {
1219
+ # unit: "ms", # accepts ms, s
1220
+ # value: 1,
1221
+ # },
1222
+ # },
1223
+ # http2: {
1224
+ # idle: {
1225
+ # unit: "ms", # accepts ms, s
1226
+ # value: 1,
1227
+ # },
1228
+ # per_request: {
1229
+ # unit: "ms", # accepts ms, s
1230
+ # value: 1,
1231
+ # },
1232
+ # },
1233
+ # tcp: {
1234
+ # idle: {
1235
+ # unit: "ms", # accepts ms, s
1236
+ # value: 1,
1237
+ # },
1238
+ # },
1239
+ # },
827
1240
  # tls: {
828
1241
  # certificate: { # required
829
1242
  # acm: {
@@ -904,6 +1317,20 @@ module Aws::AppMesh
904
1317
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
905
1318
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
906
1319
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
1320
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "ms", "s"
1321
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.value #=> Integer
1322
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "ms", "s"
1323
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.value #=> Integer
1324
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "ms", "s"
1325
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.value #=> Integer
1326
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "ms", "s"
1327
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.value #=> Integer
1328
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "ms", "s"
1329
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.value #=> Integer
1330
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "ms", "s"
1331
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.value #=> Integer
1332
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "ms", "s"
1333
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
907
1334
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
908
1335
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
909
1336
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
@@ -958,7 +1385,7 @@ module Aws::AppMesh
958
1385
  # not your own, then the account that you specify must share the mesh
959
1386
  # with your account before you can create the resource in the service
960
1387
  # mesh. For more information about mesh sharing, see [Working with
961
- # Shared Meshes][1].
1388
+ # shared meshes][1].
962
1389
  #
963
1390
  #
964
1391
  #
@@ -1063,7 +1490,7 @@ module Aws::AppMesh
1063
1490
  # not your own, then the account that you specify must share the mesh
1064
1491
  # with your account before you can create the resource in the service
1065
1492
  # mesh. For more information about mesh sharing, see [Working with
1066
- # Shared Meshes][1].
1493
+ # shared meshes][1].
1067
1494
  #
1068
1495
  #
1069
1496
  #
@@ -1135,24 +1562,87 @@ module Aws::AppMesh
1135
1562
  req.send_request(options)
1136
1563
  end
1137
1564
 
1138
- # Deletes an existing service mesh.
1565
+ # Deletes an existing gateway route.
1139
1566
  #
1140
- # You must delete all resources (virtual services, routes, virtual
1141
- # routers, and virtual nodes) in the service mesh before you can delete
1142
- # the mesh itself.
1567
+ # @option params [required, String] :gateway_route_name
1568
+ # The name of the gateway route to delete.
1143
1569
  #
1144
1570
  # @option params [required, String] :mesh_name
1145
- # The name of the service mesh to delete.
1571
+ # The name of the service mesh to delete the gateway route from.
1146
1572
  #
1147
- # @return [Types::DeleteMeshOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1573
+ # @option params [String] :mesh_owner
1574
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
1575
+ # not your own, then it's the ID of the account that shared the mesh
1576
+ # with your account. For more information about mesh sharing, see
1577
+ # [Working with shared meshes][1].
1148
1578
  #
1149
- # * {Types::DeleteMeshOutput#mesh #mesh} => Types::MeshData
1150
1579
  #
1151
- # @example Request syntax with placeholder values
1152
1580
  #
1153
- # resp = client.delete_mesh({
1154
- # mesh_name: "ResourceName", # required
1155
- # })
1581
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
1582
+ #
1583
+ # @option params [required, String] :virtual_gateway_name
1584
+ # The name of the virtual gateway to delete the route from.
1585
+ #
1586
+ # @return [Types::DeleteGatewayRouteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1587
+ #
1588
+ # * {Types::DeleteGatewayRouteOutput#gateway_route #gateway_route} => Types::GatewayRouteData
1589
+ #
1590
+ # @example Request syntax with placeholder values
1591
+ #
1592
+ # resp = client.delete_gateway_route({
1593
+ # gateway_route_name: "ResourceName", # required
1594
+ # mesh_name: "ResourceName", # required
1595
+ # mesh_owner: "AccountId",
1596
+ # virtual_gateway_name: "ResourceName", # required
1597
+ # })
1598
+ #
1599
+ # @example Response structure
1600
+ #
1601
+ # resp.gateway_route.gateway_route_name #=> String
1602
+ # resp.gateway_route.mesh_name #=> String
1603
+ # resp.gateway_route.metadata.arn #=> String
1604
+ # resp.gateway_route.metadata.created_at #=> Time
1605
+ # resp.gateway_route.metadata.last_updated_at #=> Time
1606
+ # resp.gateway_route.metadata.mesh_owner #=> String
1607
+ # resp.gateway_route.metadata.resource_owner #=> String
1608
+ # resp.gateway_route.metadata.uid #=> String
1609
+ # resp.gateway_route.metadata.version #=> Integer
1610
+ # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
1611
+ # resp.gateway_route.spec.grpc_route.match.service_name #=> String
1612
+ # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
1613
+ # resp.gateway_route.spec.http2_route.match.prefix #=> String
1614
+ # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
1615
+ # resp.gateway_route.spec.http_route.match.prefix #=> String
1616
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1617
+ # resp.gateway_route.virtual_gateway_name #=> String
1618
+ #
1619
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteGatewayRoute AWS API Documentation
1620
+ #
1621
+ # @overload delete_gateway_route(params = {})
1622
+ # @param [Hash] params ({})
1623
+ def delete_gateway_route(params = {}, options = {})
1624
+ req = build_request(:delete_gateway_route, params)
1625
+ req.send_request(options)
1626
+ end
1627
+
1628
+ # Deletes an existing service mesh.
1629
+ #
1630
+ # You must delete all resources (virtual services, routes, virtual
1631
+ # routers, and virtual nodes) in the service mesh before you can delete
1632
+ # the mesh itself.
1633
+ #
1634
+ # @option params [required, String] :mesh_name
1635
+ # The name of the service mesh to delete.
1636
+ #
1637
+ # @return [Types::DeleteMeshOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1638
+ #
1639
+ # * {Types::DeleteMeshOutput#mesh #mesh} => Types::MeshData
1640
+ #
1641
+ # @example Request syntax with placeholder values
1642
+ #
1643
+ # resp = client.delete_mesh({
1644
+ # mesh_name: "ResourceName", # required
1645
+ # })
1156
1646
  #
1157
1647
  # @example Response structure
1158
1648
  #
@@ -1185,7 +1675,7 @@ module Aws::AppMesh
1185
1675
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1186
1676
  # not your own, then it's the ID of the account that shared the mesh
1187
1677
  # with your account. For more information about mesh sharing, see
1188
- # [Working with Shared Meshes][1].
1678
+ # [Working with shared meshes][1].
1189
1679
  #
1190
1680
  #
1191
1681
  #
@@ -1244,6 +1734,10 @@ module Aws::AppMesh
1244
1734
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
1245
1735
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
1246
1736
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
1737
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "ms", "s"
1738
+ # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
1739
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
1740
+ # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
1247
1741
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
1248
1742
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
1249
1743
  # resp.route.spec.http2_route.action.weighted_targets[0].weight #=> Integer
@@ -1266,6 +1760,10 @@ module Aws::AppMesh
1266
1760
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
1267
1761
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
1268
1762
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
1763
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "ms", "s"
1764
+ # resp.route.spec.http2_route.timeout.idle.value #=> Integer
1765
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
1766
+ # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
1269
1767
  # resp.route.spec.http_route.action.weighted_targets #=> Array
1270
1768
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
1271
1769
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
@@ -1288,10 +1786,16 @@ module Aws::AppMesh
1288
1786
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
1289
1787
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
1290
1788
  # resp.route.spec.http_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
1789
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "ms", "s"
1790
+ # resp.route.spec.http_route.timeout.idle.value #=> Integer
1791
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
1792
+ # resp.route.spec.http_route.timeout.per_request.value #=> Integer
1291
1793
  # resp.route.spec.priority #=> Integer
1292
1794
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
1293
1795
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
1294
1796
  # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
1797
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "ms", "s"
1798
+ # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
1295
1799
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1296
1800
  # resp.route.virtual_router_name #=> String
1297
1801
  #
@@ -1304,6 +1808,80 @@ module Aws::AppMesh
1304
1808
  req.send_request(options)
1305
1809
  end
1306
1810
 
1811
+ # Deletes an existing virtual gateway. You cannot delete a virtual
1812
+ # gateway if any gateway routes are associated to it.
1813
+ #
1814
+ # @option params [required, String] :mesh_name
1815
+ # The name of the service mesh to delete the virtual gateway from.
1816
+ #
1817
+ # @option params [String] :mesh_owner
1818
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
1819
+ # not your own, then it's the ID of the account that shared the mesh
1820
+ # with your account. For more information about mesh sharing, see
1821
+ # [Working with shared meshes][1].
1822
+ #
1823
+ #
1824
+ #
1825
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
1826
+ #
1827
+ # @option params [required, String] :virtual_gateway_name
1828
+ # The name of the virtual gateway to delete.
1829
+ #
1830
+ # @return [Types::DeleteVirtualGatewayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1831
+ #
1832
+ # * {Types::DeleteVirtualGatewayOutput#virtual_gateway #virtual_gateway} => Types::VirtualGatewayData
1833
+ #
1834
+ # @example Request syntax with placeholder values
1835
+ #
1836
+ # resp = client.delete_virtual_gateway({
1837
+ # mesh_name: "ResourceName", # required
1838
+ # mesh_owner: "AccountId",
1839
+ # virtual_gateway_name: "ResourceName", # required
1840
+ # })
1841
+ #
1842
+ # @example Response structure
1843
+ #
1844
+ # resp.virtual_gateway.mesh_name #=> String
1845
+ # resp.virtual_gateway.metadata.arn #=> String
1846
+ # resp.virtual_gateway.metadata.created_at #=> Time
1847
+ # resp.virtual_gateway.metadata.last_updated_at #=> Time
1848
+ # resp.virtual_gateway.metadata.mesh_owner #=> String
1849
+ # resp.virtual_gateway.metadata.resource_owner #=> String
1850
+ # resp.virtual_gateway.metadata.uid #=> String
1851
+ # resp.virtual_gateway.metadata.version #=> Integer
1852
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
1853
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
1854
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
1855
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1856
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1857
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
1858
+ # resp.virtual_gateway.spec.listeners #=> Array
1859
+ # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
1860
+ # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
1861
+ # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
1862
+ # resp.virtual_gateway.spec.listeners[0].health_check.port #=> Integer
1863
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2"
1864
+ # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
1865
+ # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1866
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.port #=> Integer
1867
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2"
1868
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1869
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1870
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.private_key #=> String
1871
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
1872
+ # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
1873
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1874
+ # resp.virtual_gateway.virtual_gateway_name #=> String
1875
+ #
1876
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualGateway AWS API Documentation
1877
+ #
1878
+ # @overload delete_virtual_gateway(params = {})
1879
+ # @param [Hash] params ({})
1880
+ def delete_virtual_gateway(params = {}, options = {})
1881
+ req = build_request(:delete_virtual_gateway, params)
1882
+ req.send_request(options)
1883
+ end
1884
+
1307
1885
  # Deletes an existing virtual node.
1308
1886
  #
1309
1887
  # You must delete any virtual services that list a virtual node as a
@@ -1316,7 +1894,7 @@ module Aws::AppMesh
1316
1894
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1317
1895
  # not your own, then it's the ID of the account that shared the mesh
1318
1896
  # with your account. For more information about mesh sharing, see
1319
- # [Working with Shared Meshes][1].
1897
+ # [Working with shared meshes][1].
1320
1898
  #
1321
1899
  #
1322
1900
  #
@@ -1371,6 +1949,20 @@ module Aws::AppMesh
1371
1949
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1372
1950
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
1373
1951
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
1952
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "ms", "s"
1953
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.value #=> Integer
1954
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "ms", "s"
1955
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.value #=> Integer
1956
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "ms", "s"
1957
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.value #=> Integer
1958
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "ms", "s"
1959
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.value #=> Integer
1960
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "ms", "s"
1961
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.value #=> Integer
1962
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "ms", "s"
1963
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.value #=> Integer
1964
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "ms", "s"
1965
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
1374
1966
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1375
1967
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1376
1968
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
@@ -1406,7 +1998,7 @@ module Aws::AppMesh
1406
1998
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1407
1999
  # not your own, then it's the ID of the account that shared the mesh
1408
2000
  # with your account. For more information about mesh sharing, see
1409
- # [Working with Shared Meshes][1].
2001
+ # [Working with shared meshes][1].
1410
2002
  #
1411
2003
  #
1412
2004
  #
@@ -1461,7 +2053,7 @@ module Aws::AppMesh
1461
2053
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1462
2054
  # not your own, then it's the ID of the account that shared the mesh
1463
2055
  # with your account. For more information about mesh sharing, see
1464
- # [Working with Shared Meshes][1].
2056
+ # [Working with shared meshes][1].
1465
2057
  #
1466
2058
  #
1467
2059
  #
@@ -1506,6 +2098,70 @@ module Aws::AppMesh
1506
2098
  req.send_request(options)
1507
2099
  end
1508
2100
 
2101
+ # Describes an existing gateway route.
2102
+ #
2103
+ # @option params [required, String] :gateway_route_name
2104
+ # The name of the gateway route to describe.
2105
+ #
2106
+ # @option params [required, String] :mesh_name
2107
+ # The name of the service mesh that the gateway route resides in.
2108
+ #
2109
+ # @option params [String] :mesh_owner
2110
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
2111
+ # not your own, then it's the ID of the account that shared the mesh
2112
+ # with your account. For more information about mesh sharing, see
2113
+ # [Working with shared meshes][1].
2114
+ #
2115
+ #
2116
+ #
2117
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2118
+ #
2119
+ # @option params [required, String] :virtual_gateway_name
2120
+ # The name of the virtual gateway that the gateway route is associated
2121
+ # with.
2122
+ #
2123
+ # @return [Types::DescribeGatewayRouteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2124
+ #
2125
+ # * {Types::DescribeGatewayRouteOutput#gateway_route #gateway_route} => Types::GatewayRouteData
2126
+ #
2127
+ # @example Request syntax with placeholder values
2128
+ #
2129
+ # resp = client.describe_gateway_route({
2130
+ # gateway_route_name: "ResourceName", # required
2131
+ # mesh_name: "ResourceName", # required
2132
+ # mesh_owner: "AccountId",
2133
+ # virtual_gateway_name: "ResourceName", # required
2134
+ # })
2135
+ #
2136
+ # @example Response structure
2137
+ #
2138
+ # resp.gateway_route.gateway_route_name #=> String
2139
+ # resp.gateway_route.mesh_name #=> String
2140
+ # resp.gateway_route.metadata.arn #=> String
2141
+ # resp.gateway_route.metadata.created_at #=> Time
2142
+ # resp.gateway_route.metadata.last_updated_at #=> Time
2143
+ # resp.gateway_route.metadata.mesh_owner #=> String
2144
+ # resp.gateway_route.metadata.resource_owner #=> String
2145
+ # resp.gateway_route.metadata.uid #=> String
2146
+ # resp.gateway_route.metadata.version #=> Integer
2147
+ # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
2148
+ # resp.gateway_route.spec.grpc_route.match.service_name #=> String
2149
+ # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
2150
+ # resp.gateway_route.spec.http2_route.match.prefix #=> String
2151
+ # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
2152
+ # resp.gateway_route.spec.http_route.match.prefix #=> String
2153
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2154
+ # resp.gateway_route.virtual_gateway_name #=> String
2155
+ #
2156
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeGatewayRoute AWS API Documentation
2157
+ #
2158
+ # @overload describe_gateway_route(params = {})
2159
+ # @param [Hash] params ({})
2160
+ def describe_gateway_route(params = {}, options = {})
2161
+ req = build_request(:describe_gateway_route, params)
2162
+ req.send_request(options)
2163
+ end
2164
+
1509
2165
  # Describes an existing service mesh.
1510
2166
  #
1511
2167
  # @option params [required, String] :mesh_name
@@ -1515,7 +2171,7 @@ module Aws::AppMesh
1515
2171
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1516
2172
  # not your own, then it's the ID of the account that shared the mesh
1517
2173
  # with your account. For more information about mesh sharing, see
1518
- # [Working with Shared Meshes][1].
2174
+ # [Working with shared meshes][1].
1519
2175
  #
1520
2176
  #
1521
2177
  #
@@ -1563,7 +2219,7 @@ module Aws::AppMesh
1563
2219
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1564
2220
  # not your own, then it's the ID of the account that shared the mesh
1565
2221
  # with your account. For more information about mesh sharing, see
1566
- # [Working with Shared Meshes][1].
2222
+ # [Working with shared meshes][1].
1567
2223
  #
1568
2224
  #
1569
2225
  #
@@ -1622,6 +2278,10 @@ module Aws::AppMesh
1622
2278
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
1623
2279
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
1624
2280
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
2281
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "ms", "s"
2282
+ # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
2283
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
2284
+ # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
1625
2285
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
1626
2286
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
1627
2287
  # resp.route.spec.http2_route.action.weighted_targets[0].weight #=> Integer
@@ -1644,6 +2304,10 @@ module Aws::AppMesh
1644
2304
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
1645
2305
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
1646
2306
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
2307
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "ms", "s"
2308
+ # resp.route.spec.http2_route.timeout.idle.value #=> Integer
2309
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
2310
+ # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
1647
2311
  # resp.route.spec.http_route.action.weighted_targets #=> Array
1648
2312
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
1649
2313
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
@@ -1666,10 +2330,16 @@ module Aws::AppMesh
1666
2330
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
1667
2331
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
1668
2332
  # resp.route.spec.http_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
2333
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "ms", "s"
2334
+ # resp.route.spec.http_route.timeout.idle.value #=> Integer
2335
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
2336
+ # resp.route.spec.http_route.timeout.per_request.value #=> Integer
1669
2337
  # resp.route.spec.priority #=> Integer
1670
2338
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
1671
2339
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
1672
2340
  # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
2341
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "ms", "s"
2342
+ # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
1673
2343
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1674
2344
  # resp.route.virtual_router_name #=> String
1675
2345
  #
@@ -1682,6 +2352,79 @@ module Aws::AppMesh
1682
2352
  req.send_request(options)
1683
2353
  end
1684
2354
 
2355
+ # Describes an existing virtual gateway.
2356
+ #
2357
+ # @option params [required, String] :mesh_name
2358
+ # The name of the service mesh that the gateway route resides in.
2359
+ #
2360
+ # @option params [String] :mesh_owner
2361
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
2362
+ # not your own, then it's the ID of the account that shared the mesh
2363
+ # with your account. For more information about mesh sharing, see
2364
+ # [Working with shared meshes][1].
2365
+ #
2366
+ #
2367
+ #
2368
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2369
+ #
2370
+ # @option params [required, String] :virtual_gateway_name
2371
+ # The name of the virtual gateway to describe.
2372
+ #
2373
+ # @return [Types::DescribeVirtualGatewayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2374
+ #
2375
+ # * {Types::DescribeVirtualGatewayOutput#virtual_gateway #virtual_gateway} => Types::VirtualGatewayData
2376
+ #
2377
+ # @example Request syntax with placeholder values
2378
+ #
2379
+ # resp = client.describe_virtual_gateway({
2380
+ # mesh_name: "ResourceName", # required
2381
+ # mesh_owner: "AccountId",
2382
+ # virtual_gateway_name: "ResourceName", # required
2383
+ # })
2384
+ #
2385
+ # @example Response structure
2386
+ #
2387
+ # resp.virtual_gateway.mesh_name #=> String
2388
+ # resp.virtual_gateway.metadata.arn #=> String
2389
+ # resp.virtual_gateway.metadata.created_at #=> Time
2390
+ # resp.virtual_gateway.metadata.last_updated_at #=> Time
2391
+ # resp.virtual_gateway.metadata.mesh_owner #=> String
2392
+ # resp.virtual_gateway.metadata.resource_owner #=> String
2393
+ # resp.virtual_gateway.metadata.uid #=> String
2394
+ # resp.virtual_gateway.metadata.version #=> Integer
2395
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
2396
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
2397
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
2398
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
2399
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
2400
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
2401
+ # resp.virtual_gateway.spec.listeners #=> Array
2402
+ # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
2403
+ # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
2404
+ # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
2405
+ # resp.virtual_gateway.spec.listeners[0].health_check.port #=> Integer
2406
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2"
2407
+ # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
2408
+ # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
2409
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.port #=> Integer
2410
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2"
2411
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
2412
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
2413
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.private_key #=> String
2414
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
2415
+ # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
2416
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2417
+ # resp.virtual_gateway.virtual_gateway_name #=> String
2418
+ #
2419
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualGateway AWS API Documentation
2420
+ #
2421
+ # @overload describe_virtual_gateway(params = {})
2422
+ # @param [Hash] params ({})
2423
+ def describe_virtual_gateway(params = {}, options = {})
2424
+ req = build_request(:describe_virtual_gateway, params)
2425
+ req.send_request(options)
2426
+ end
2427
+
1685
2428
  # Describes an existing virtual node.
1686
2429
  #
1687
2430
  # @option params [required, String] :mesh_name
@@ -1691,7 +2434,7 @@ module Aws::AppMesh
1691
2434
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1692
2435
  # not your own, then it's the ID of the account that shared the mesh
1693
2436
  # with your account. For more information about mesh sharing, see
1694
- # [Working with Shared Meshes][1].
2437
+ # [Working with shared meshes][1].
1695
2438
  #
1696
2439
  #
1697
2440
  #
@@ -1746,6 +2489,20 @@ module Aws::AppMesh
1746
2489
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1747
2490
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
1748
2491
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
2492
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "ms", "s"
2493
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.value #=> Integer
2494
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "ms", "s"
2495
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.value #=> Integer
2496
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "ms", "s"
2497
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.value #=> Integer
2498
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "ms", "s"
2499
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.value #=> Integer
2500
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "ms", "s"
2501
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.value #=> Integer
2502
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "ms", "s"
2503
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.value #=> Integer
2504
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "ms", "s"
2505
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
1749
2506
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1750
2507
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1751
2508
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
@@ -1778,7 +2535,7 @@ module Aws::AppMesh
1778
2535
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1779
2536
  # not your own, then it's the ID of the account that shared the mesh
1780
2537
  # with your account. For more information about mesh sharing, see
1781
- # [Working with Shared Meshes][1].
2538
+ # [Working with shared meshes][1].
1782
2539
  #
1783
2540
  #
1784
2541
  #
@@ -1833,7 +2590,7 @@ module Aws::AppMesh
1833
2590
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1834
2591
  # not your own, then it's the ID of the account that shared the mesh
1835
2592
  # with your account. For more information about mesh sharing, see
1836
- # [Working with Shared Meshes][1].
2593
+ # [Working with shared meshes][1].
1837
2594
  #
1838
2595
  #
1839
2596
  #
@@ -1878,6 +2635,81 @@ module Aws::AppMesh
1878
2635
  req.send_request(options)
1879
2636
  end
1880
2637
 
2638
+ # Returns a list of existing gateway routes that are associated to a
2639
+ # virtual gateway.
2640
+ #
2641
+ # @option params [Integer] :limit
2642
+ # The maximum number of results returned by `ListGatewayRoutes` in
2643
+ # paginated output. When you use this parameter, `ListGatewayRoutes`
2644
+ # returns only `limit` results in a single page along with a `nextToken`
2645
+ # response element. You can see the remaining results of the initial
2646
+ # request by sending another `ListGatewayRoutes` request with the
2647
+ # returned `nextToken` value. This value can be between 1 and 100. If
2648
+ # you don't use this parameter, `ListGatewayRoutes` returns up to 100
2649
+ # results and a `nextToken` value if applicable.
2650
+ #
2651
+ # @option params [required, String] :mesh_name
2652
+ # The name of the service mesh to list gateway routes in.
2653
+ #
2654
+ # @option params [String] :mesh_owner
2655
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
2656
+ # not your own, then it's the ID of the account that shared the mesh
2657
+ # with your account. For more information about mesh sharing, see
2658
+ # [Working with shared meshes][1].
2659
+ #
2660
+ #
2661
+ #
2662
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2663
+ #
2664
+ # @option params [String] :next_token
2665
+ # The `nextToken` value returned from a previous paginated
2666
+ # `ListGatewayRoutes` request where `limit` was used and the results
2667
+ # exceeded the value of that parameter. Pagination continues from the
2668
+ # end of the previous results that returned the `nextToken` value.
2669
+ #
2670
+ # @option params [required, String] :virtual_gateway_name
2671
+ # The name of the virtual gateway to list gateway routes in.
2672
+ #
2673
+ # @return [Types::ListGatewayRoutesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2674
+ #
2675
+ # * {Types::ListGatewayRoutesOutput#gateway_routes #gateway_routes} => Array&lt;Types::GatewayRouteRef&gt;
2676
+ # * {Types::ListGatewayRoutesOutput#next_token #next_token} => String
2677
+ #
2678
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2679
+ #
2680
+ # @example Request syntax with placeholder values
2681
+ #
2682
+ # resp = client.list_gateway_routes({
2683
+ # limit: 1,
2684
+ # mesh_name: "ResourceName", # required
2685
+ # mesh_owner: "AccountId",
2686
+ # next_token: "String",
2687
+ # virtual_gateway_name: "ResourceName", # required
2688
+ # })
2689
+ #
2690
+ # @example Response structure
2691
+ #
2692
+ # resp.gateway_routes #=> Array
2693
+ # resp.gateway_routes[0].arn #=> String
2694
+ # resp.gateway_routes[0].created_at #=> Time
2695
+ # resp.gateway_routes[0].gateway_route_name #=> String
2696
+ # resp.gateway_routes[0].last_updated_at #=> Time
2697
+ # resp.gateway_routes[0].mesh_name #=> String
2698
+ # resp.gateway_routes[0].mesh_owner #=> String
2699
+ # resp.gateway_routes[0].resource_owner #=> String
2700
+ # resp.gateway_routes[0].version #=> Integer
2701
+ # resp.gateway_routes[0].virtual_gateway_name #=> String
2702
+ # resp.next_token #=> String
2703
+ #
2704
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListGatewayRoutes AWS API Documentation
2705
+ #
2706
+ # @overload list_gateway_routes(params = {})
2707
+ # @param [Hash] params ({})
2708
+ def list_gateway_routes(params = {}, options = {})
2709
+ req = build_request(:list_gateway_routes, params)
2710
+ req.send_request(options)
2711
+ end
2712
+
1881
2713
  # Returns a list of existing service meshes.
1882
2714
  #
1883
2715
  # @option params [Integer] :limit
@@ -1956,7 +2788,7 @@ module Aws::AppMesh
1956
2788
  # The AWS IAM account ID of the service mesh owner. If the account ID is
1957
2789
  # not your own, then it's the ID of the account that shared the mesh
1958
2790
  # with your account. For more information about mesh sharing, see
1959
- # [Working with Shared Meshes][1].
2791
+ # [Working with shared meshes][1].
1960
2792
  #
1961
2793
  #
1962
2794
  #
@@ -2064,6 +2896,75 @@ module Aws::AppMesh
2064
2896
  req.send_request(options)
2065
2897
  end
2066
2898
 
2899
+ # Returns a list of existing virtual gateways in a service mesh.
2900
+ #
2901
+ # @option params [Integer] :limit
2902
+ # The maximum number of results returned by `ListVirtualGateways` in
2903
+ # paginated output. When you use this parameter, `ListVirtualGateways`
2904
+ # returns only `limit` results in a single page along with a `nextToken`
2905
+ # response element. You can see the remaining results of the initial
2906
+ # request by sending another `ListVirtualGateways` request with the
2907
+ # returned `nextToken` value. This value can be between 1 and 100. If
2908
+ # you don't use this parameter, `ListVirtualGateways` returns up to 100
2909
+ # results and a `nextToken` value if applicable.
2910
+ #
2911
+ # @option params [required, String] :mesh_name
2912
+ # The name of the service mesh to list virtual gateways in.
2913
+ #
2914
+ # @option params [String] :mesh_owner
2915
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
2916
+ # not your own, then it's the ID of the account that shared the mesh
2917
+ # with your account. For more information about mesh sharing, see
2918
+ # [Working with shared meshes][1].
2919
+ #
2920
+ #
2921
+ #
2922
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
2923
+ #
2924
+ # @option params [String] :next_token
2925
+ # The `nextToken` value returned from a previous paginated
2926
+ # `ListVirtualGateways` request where `limit` was used and the results
2927
+ # exceeded the value of that parameter. Pagination continues from the
2928
+ # end of the previous results that returned the `nextToken` value.
2929
+ #
2930
+ # @return [Types::ListVirtualGatewaysOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2931
+ #
2932
+ # * {Types::ListVirtualGatewaysOutput#next_token #next_token} => String
2933
+ # * {Types::ListVirtualGatewaysOutput#virtual_gateways #virtual_gateways} => Array&lt;Types::VirtualGatewayRef&gt;
2934
+ #
2935
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2936
+ #
2937
+ # @example Request syntax with placeholder values
2938
+ #
2939
+ # resp = client.list_virtual_gateways({
2940
+ # limit: 1,
2941
+ # mesh_name: "ResourceName", # required
2942
+ # mesh_owner: "AccountId",
2943
+ # next_token: "String",
2944
+ # })
2945
+ #
2946
+ # @example Response structure
2947
+ #
2948
+ # resp.next_token #=> String
2949
+ # resp.virtual_gateways #=> Array
2950
+ # resp.virtual_gateways[0].arn #=> String
2951
+ # resp.virtual_gateways[0].created_at #=> Time
2952
+ # resp.virtual_gateways[0].last_updated_at #=> Time
2953
+ # resp.virtual_gateways[0].mesh_name #=> String
2954
+ # resp.virtual_gateways[0].mesh_owner #=> String
2955
+ # resp.virtual_gateways[0].resource_owner #=> String
2956
+ # resp.virtual_gateways[0].version #=> Integer
2957
+ # resp.virtual_gateways[0].virtual_gateway_name #=> String
2958
+ #
2959
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListVirtualGateways AWS API Documentation
2960
+ #
2961
+ # @overload list_virtual_gateways(params = {})
2962
+ # @param [Hash] params ({})
2963
+ def list_virtual_gateways(params = {}, options = {})
2964
+ req = build_request(:list_virtual_gateways, params)
2965
+ req.send_request(options)
2966
+ end
2967
+
2067
2968
  # Returns a list of existing virtual nodes.
2068
2969
  #
2069
2970
  # @option params [Integer] :limit
@@ -2083,7 +2984,7 @@ module Aws::AppMesh
2083
2984
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2084
2985
  # not your own, then it's the ID of the account that shared the mesh
2085
2986
  # with your account. For more information about mesh sharing, see
2086
- # [Working with Shared Meshes][1].
2987
+ # [Working with shared meshes][1].
2087
2988
  #
2088
2989
  #
2089
2990
  #
@@ -2152,7 +3053,7 @@ module Aws::AppMesh
2152
3053
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2153
3054
  # not your own, then it's the ID of the account that shared the mesh
2154
3055
  # with your account. For more information about mesh sharing, see
2155
- # [Working with Shared Meshes][1].
3056
+ # [Working with shared meshes][1].
2156
3057
  #
2157
3058
  #
2158
3059
  #
@@ -2221,7 +3122,7 @@ module Aws::AppMesh
2221
3122
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2222
3123
  # not your own, then it's the ID of the account that shared the mesh
2223
3124
  # with your account. For more information about mesh sharing, see
2224
- # [Working with Shared Meshes][1].
3125
+ # [Working with shared meshes][1].
2225
3126
  #
2226
3127
  #
2227
3128
  #
@@ -2333,6 +3234,122 @@ module Aws::AppMesh
2333
3234
  req.send_request(options)
2334
3235
  end
2335
3236
 
3237
+ # Updates an existing gateway route that is associated to a specified
3238
+ # virtual gateway in a service mesh.
3239
+ #
3240
+ # @option params [String] :client_token
3241
+ # Unique, case-sensitive identifier that you provide to ensure the
3242
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
3243
+ # underscores are allowed.
3244
+ #
3245
+ # **A suitable default value is auto-generated.** You should normally
3246
+ # not need to pass this option.**
3247
+ #
3248
+ # @option params [required, String] :gateway_route_name
3249
+ # The name of the gateway route to update.
3250
+ #
3251
+ # @option params [required, String] :mesh_name
3252
+ # The name of the service mesh that the gateway route resides in.
3253
+ #
3254
+ # @option params [String] :mesh_owner
3255
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
3256
+ # not your own, then it's the ID of the account that shared the mesh
3257
+ # with your account. For more information about mesh sharing, see
3258
+ # [Working with shared meshes][1].
3259
+ #
3260
+ #
3261
+ #
3262
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
3263
+ #
3264
+ # @option params [required, Types::GatewayRouteSpec] :spec
3265
+ # The new gateway route specification to apply. This overwrites the
3266
+ # existing data.
3267
+ #
3268
+ # @option params [required, String] :virtual_gateway_name
3269
+ # The name of the virtual gateway that the gateway route is associated
3270
+ # with.
3271
+ #
3272
+ # @return [Types::UpdateGatewayRouteOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3273
+ #
3274
+ # * {Types::UpdateGatewayRouteOutput#gateway_route #gateway_route} => Types::GatewayRouteData
3275
+ #
3276
+ # @example Request syntax with placeholder values
3277
+ #
3278
+ # resp = client.update_gateway_route({
3279
+ # client_token: "String",
3280
+ # gateway_route_name: "ResourceName", # required
3281
+ # mesh_name: "ResourceName", # required
3282
+ # mesh_owner: "AccountId",
3283
+ # spec: { # required
3284
+ # grpc_route: {
3285
+ # action: { # required
3286
+ # target: { # required
3287
+ # virtual_service: { # required
3288
+ # virtual_service_name: "ResourceName", # required
3289
+ # },
3290
+ # },
3291
+ # },
3292
+ # match: { # required
3293
+ # service_name: "ServiceName",
3294
+ # },
3295
+ # },
3296
+ # http2_route: {
3297
+ # action: { # required
3298
+ # target: { # required
3299
+ # virtual_service: { # required
3300
+ # virtual_service_name: "ResourceName", # required
3301
+ # },
3302
+ # },
3303
+ # },
3304
+ # match: { # required
3305
+ # prefix: "String", # required
3306
+ # },
3307
+ # },
3308
+ # http_route: {
3309
+ # action: { # required
3310
+ # target: { # required
3311
+ # virtual_service: { # required
3312
+ # virtual_service_name: "ResourceName", # required
3313
+ # },
3314
+ # },
3315
+ # },
3316
+ # match: { # required
3317
+ # prefix: "String", # required
3318
+ # },
3319
+ # },
3320
+ # },
3321
+ # virtual_gateway_name: "ResourceName", # required
3322
+ # })
3323
+ #
3324
+ # @example Response structure
3325
+ #
3326
+ # resp.gateway_route.gateway_route_name #=> String
3327
+ # resp.gateway_route.mesh_name #=> String
3328
+ # resp.gateway_route.metadata.arn #=> String
3329
+ # resp.gateway_route.metadata.created_at #=> Time
3330
+ # resp.gateway_route.metadata.last_updated_at #=> Time
3331
+ # resp.gateway_route.metadata.mesh_owner #=> String
3332
+ # resp.gateway_route.metadata.resource_owner #=> String
3333
+ # resp.gateway_route.metadata.uid #=> String
3334
+ # resp.gateway_route.metadata.version #=> Integer
3335
+ # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
3336
+ # resp.gateway_route.spec.grpc_route.match.service_name #=> String
3337
+ # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
3338
+ # resp.gateway_route.spec.http2_route.match.prefix #=> String
3339
+ # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
3340
+ # resp.gateway_route.spec.http_route.match.prefix #=> String
3341
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
3342
+ # resp.gateway_route.virtual_gateway_name #=> String
3343
+ #
3344
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateGatewayRoute AWS API Documentation
3345
+ #
3346
+ # @overload update_gateway_route(params = {})
3347
+ # @param [Hash] params ({})
3348
+ def update_gateway_route(params = {}, options = {})
3349
+ req = build_request(:update_gateway_route, params)
3350
+ req.send_request(options)
3351
+ end
3352
+
2336
3353
  # Updates an existing service mesh.
2337
3354
  #
2338
3355
  # @option params [String] :client_token
@@ -2405,7 +3422,7 @@ module Aws::AppMesh
2405
3422
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2406
3423
  # not your own, then it's the ID of the account that shared the mesh
2407
3424
  # with your account. For more information about mesh sharing, see
2408
- # [Working with Shared Meshes][1].
3425
+ # [Working with shared meshes][1].
2409
3426
  #
2410
3427
  #
2411
3428
  #
@@ -2472,6 +3489,16 @@ module Aws::AppMesh
2472
3489
  # },
2473
3490
  # tcp_retry_events: ["connection-error"], # accepts connection-error
2474
3491
  # },
3492
+ # timeout: {
3493
+ # idle: {
3494
+ # unit: "ms", # accepts ms, s
3495
+ # value: 1,
3496
+ # },
3497
+ # per_request: {
3498
+ # unit: "ms", # accepts ms, s
3499
+ # value: 1,
3500
+ # },
3501
+ # },
2475
3502
  # },
2476
3503
  # http2_route: {
2477
3504
  # action: { # required
@@ -2512,6 +3539,16 @@ module Aws::AppMesh
2512
3539
  # },
2513
3540
  # tcp_retry_events: ["connection-error"], # accepts connection-error
2514
3541
  # },
3542
+ # timeout: {
3543
+ # idle: {
3544
+ # unit: "ms", # accepts ms, s
3545
+ # value: 1,
3546
+ # },
3547
+ # per_request: {
3548
+ # unit: "ms", # accepts ms, s
3549
+ # value: 1,
3550
+ # },
3551
+ # },
2515
3552
  # },
2516
3553
  # http_route: {
2517
3554
  # action: { # required
@@ -2552,6 +3589,16 @@ module Aws::AppMesh
2552
3589
  # },
2553
3590
  # tcp_retry_events: ["connection-error"], # accepts connection-error
2554
3591
  # },
3592
+ # timeout: {
3593
+ # idle: {
3594
+ # unit: "ms", # accepts ms, s
3595
+ # value: 1,
3596
+ # },
3597
+ # per_request: {
3598
+ # unit: "ms", # accepts ms, s
3599
+ # value: 1,
3600
+ # },
3601
+ # },
2555
3602
  # },
2556
3603
  # priority: 1,
2557
3604
  # tcp_route: {
@@ -2563,6 +3610,12 @@ module Aws::AppMesh
2563
3610
  # },
2564
3611
  # ],
2565
3612
  # },
3613
+ # timeout: {
3614
+ # idle: {
3615
+ # unit: "ms", # accepts ms, s
3616
+ # value: 1,
3617
+ # },
3618
+ # },
2566
3619
  # },
2567
3620
  # },
2568
3621
  # virtual_router_name: "ResourceName", # required
@@ -2602,6 +3655,10 @@ module Aws::AppMesh
2602
3655
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
2603
3656
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
2604
3657
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
3658
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "ms", "s"
3659
+ # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
3660
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
3661
+ # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
2605
3662
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
2606
3663
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
2607
3664
  # resp.route.spec.http2_route.action.weighted_targets[0].weight #=> Integer
@@ -2624,6 +3681,10 @@ module Aws::AppMesh
2624
3681
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
2625
3682
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
2626
3683
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
3684
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "ms", "s"
3685
+ # resp.route.spec.http2_route.timeout.idle.value #=> Integer
3686
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
3687
+ # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
2627
3688
  # resp.route.spec.http_route.action.weighted_targets #=> Array
2628
3689
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
2629
3690
  # resp.route.spec.http_route.action.weighted_targets[0].weight #=> Integer
@@ -2646,10 +3707,16 @@ module Aws::AppMesh
2646
3707
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
2647
3708
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
2648
3709
  # resp.route.spec.http_route.retry_policy.tcp_retry_events[0] #=> String, one of "connection-error"
3710
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "ms", "s"
3711
+ # resp.route.spec.http_route.timeout.idle.value #=> Integer
3712
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
3713
+ # resp.route.spec.http_route.timeout.per_request.value #=> Integer
2649
3714
  # resp.route.spec.priority #=> Integer
2650
3715
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
2651
3716
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
2652
3717
  # resp.route.spec.tcp_route.action.weighted_targets[0].weight #=> Integer
3718
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "ms", "s"
3719
+ # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
2653
3720
  # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2654
3721
  # resp.route.virtual_router_name #=> String
2655
3722
  #
@@ -2662,6 +3729,148 @@ module Aws::AppMesh
2662
3729
  req.send_request(options)
2663
3730
  end
2664
3731
 
3732
+ # Updates an existing virtual gateway in a specified service mesh.
3733
+ #
3734
+ # @option params [String] :client_token
3735
+ # Unique, case-sensitive identifier that you provide to ensure the
3736
+ # idempotency of the request. Up to 36 letters, numbers, hyphens, and
3737
+ # underscores are allowed.
3738
+ #
3739
+ # **A suitable default value is auto-generated.** You should normally
3740
+ # not need to pass this option.**
3741
+ #
3742
+ # @option params [required, String] :mesh_name
3743
+ # The name of the service mesh that the virtual gateway resides in.
3744
+ #
3745
+ # @option params [String] :mesh_owner
3746
+ # The AWS IAM account ID of the service mesh owner. If the account ID is
3747
+ # not your own, then it's the ID of the account that shared the mesh
3748
+ # with your account. For more information about mesh sharing, see
3749
+ # [Working with shared meshes][1].
3750
+ #
3751
+ #
3752
+ #
3753
+ # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
3754
+ #
3755
+ # @option params [required, Types::VirtualGatewaySpec] :spec
3756
+ # The new virtual gateway specification to apply. This overwrites the
3757
+ # existing data.
3758
+ #
3759
+ # @option params [required, String] :virtual_gateway_name
3760
+ # The name of the virtual gateway to update.
3761
+ #
3762
+ # @return [Types::UpdateVirtualGatewayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3763
+ #
3764
+ # * {Types::UpdateVirtualGatewayOutput#virtual_gateway #virtual_gateway} => Types::VirtualGatewayData
3765
+ #
3766
+ # @example Request syntax with placeholder values
3767
+ #
3768
+ # resp = client.update_virtual_gateway({
3769
+ # client_token: "String",
3770
+ # mesh_name: "ResourceName", # required
3771
+ # mesh_owner: "AccountId",
3772
+ # spec: { # required
3773
+ # backend_defaults: {
3774
+ # client_policy: {
3775
+ # tls: {
3776
+ # enforce: false,
3777
+ # ports: [1],
3778
+ # validation: { # required
3779
+ # trust: { # required
3780
+ # acm: {
3781
+ # certificate_authority_arns: ["Arn"], # required
3782
+ # },
3783
+ # file: {
3784
+ # certificate_chain: "FilePath", # required
3785
+ # },
3786
+ # },
3787
+ # },
3788
+ # },
3789
+ # },
3790
+ # },
3791
+ # listeners: [ # required
3792
+ # {
3793
+ # health_check: {
3794
+ # healthy_threshold: 1, # required
3795
+ # interval_millis: 1, # required
3796
+ # path: "String",
3797
+ # port: 1,
3798
+ # protocol: "grpc", # required, accepts grpc, http, http2
3799
+ # timeout_millis: 1, # required
3800
+ # unhealthy_threshold: 1, # required
3801
+ # },
3802
+ # port_mapping: { # required
3803
+ # port: 1, # required
3804
+ # protocol: "grpc", # required, accepts grpc, http, http2
3805
+ # },
3806
+ # tls: {
3807
+ # certificate: { # required
3808
+ # acm: {
3809
+ # certificate_arn: "Arn", # required
3810
+ # },
3811
+ # file: {
3812
+ # certificate_chain: "FilePath", # required
3813
+ # private_key: "FilePath", # required
3814
+ # },
3815
+ # },
3816
+ # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
3817
+ # },
3818
+ # },
3819
+ # ],
3820
+ # logging: {
3821
+ # access_log: {
3822
+ # file: {
3823
+ # path: "FilePath", # required
3824
+ # },
3825
+ # },
3826
+ # },
3827
+ # },
3828
+ # virtual_gateway_name: "ResourceName", # required
3829
+ # })
3830
+ #
3831
+ # @example Response structure
3832
+ #
3833
+ # resp.virtual_gateway.mesh_name #=> String
3834
+ # resp.virtual_gateway.metadata.arn #=> String
3835
+ # resp.virtual_gateway.metadata.created_at #=> Time
3836
+ # resp.virtual_gateway.metadata.last_updated_at #=> Time
3837
+ # resp.virtual_gateway.metadata.mesh_owner #=> String
3838
+ # resp.virtual_gateway.metadata.resource_owner #=> String
3839
+ # resp.virtual_gateway.metadata.uid #=> String
3840
+ # resp.virtual_gateway.metadata.version #=> Integer
3841
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
3842
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
3843
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
3844
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
3845
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
3846
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
3847
+ # resp.virtual_gateway.spec.listeners #=> Array
3848
+ # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
3849
+ # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
3850
+ # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
3851
+ # resp.virtual_gateway.spec.listeners[0].health_check.port #=> Integer
3852
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2"
3853
+ # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
3854
+ # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
3855
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.port #=> Integer
3856
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2"
3857
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
3858
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
3859
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.private_key #=> String
3860
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
3861
+ # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
3862
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
3863
+ # resp.virtual_gateway.virtual_gateway_name #=> String
3864
+ #
3865
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGateway AWS API Documentation
3866
+ #
3867
+ # @overload update_virtual_gateway(params = {})
3868
+ # @param [Hash] params ({})
3869
+ def update_virtual_gateway(params = {}, options = {})
3870
+ req = build_request(:update_virtual_gateway, params)
3871
+ req.send_request(options)
3872
+ end
3873
+
2665
3874
  # Updates an existing virtual node in a specified service mesh.
2666
3875
  #
2667
3876
  # @option params [String] :client_token
@@ -2679,7 +3888,7 @@ module Aws::AppMesh
2679
3888
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2680
3889
  # not your own, then it's the ID of the account that shared the mesh
2681
3890
  # with your account. For more information about mesh sharing, see
2682
- # [Working with Shared Meshes][1].
3891
+ # [Working with shared meshes][1].
2683
3892
  #
2684
3893
  #
2685
3894
  #
@@ -2759,6 +3968,44 @@ module Aws::AppMesh
2759
3968
  # port: 1, # required
2760
3969
  # protocol: "grpc", # required, accepts grpc, http, http2, tcp
2761
3970
  # },
3971
+ # timeout: {
3972
+ # grpc: {
3973
+ # idle: {
3974
+ # unit: "ms", # accepts ms, s
3975
+ # value: 1,
3976
+ # },
3977
+ # per_request: {
3978
+ # unit: "ms", # accepts ms, s
3979
+ # value: 1,
3980
+ # },
3981
+ # },
3982
+ # http: {
3983
+ # idle: {
3984
+ # unit: "ms", # accepts ms, s
3985
+ # value: 1,
3986
+ # },
3987
+ # per_request: {
3988
+ # unit: "ms", # accepts ms, s
3989
+ # value: 1,
3990
+ # },
3991
+ # },
3992
+ # http2: {
3993
+ # idle: {
3994
+ # unit: "ms", # accepts ms, s
3995
+ # value: 1,
3996
+ # },
3997
+ # per_request: {
3998
+ # unit: "ms", # accepts ms, s
3999
+ # value: 1,
4000
+ # },
4001
+ # },
4002
+ # tcp: {
4003
+ # idle: {
4004
+ # unit: "ms", # accepts ms, s
4005
+ # value: 1,
4006
+ # },
4007
+ # },
4008
+ # },
2762
4009
  # tls: {
2763
4010
  # certificate: { # required
2764
4011
  # acm: {
@@ -2833,6 +4080,20 @@ module Aws::AppMesh
2833
4080
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
2834
4081
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
2835
4082
  # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
4083
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "ms", "s"
4084
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.value #=> Integer
4085
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "ms", "s"
4086
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.value #=> Integer
4087
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "ms", "s"
4088
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.value #=> Integer
4089
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "ms", "s"
4090
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.value #=> Integer
4091
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "ms", "s"
4092
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.value #=> Integer
4093
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "ms", "s"
4094
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.value #=> Integer
4095
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "ms", "s"
4096
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
2836
4097
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
2837
4098
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
2838
4099
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
@@ -2873,7 +4134,7 @@ module Aws::AppMesh
2873
4134
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2874
4135
  # not your own, then it's the ID of the account that shared the mesh
2875
4136
  # with your account. For more information about mesh sharing, see
2876
- # [Working with Shared Meshes][1].
4137
+ # [Working with shared meshes][1].
2877
4138
  #
2878
4139
  #
2879
4140
  #
@@ -2951,7 +4212,7 @@ module Aws::AppMesh
2951
4212
  # The AWS IAM account ID of the service mesh owner. If the account ID is
2952
4213
  # not your own, then it's the ID of the account that shared the mesh
2953
4214
  # with your account. For more information about mesh sharing, see
2954
- # [Working with Shared Meshes][1].
4215
+ # [Working with shared meshes][1].
2955
4216
  #
2956
4217
  #
2957
4218
  #
@@ -3024,7 +4285,7 @@ module Aws::AppMesh
3024
4285
  params: params,
3025
4286
  config: config)
3026
4287
  context[:gem_name] = 'aws-sdk-appmesh'
3027
- context[:gem_version] = '1.25.1'
4288
+ context[:gem_version] = '1.30.0'
3028
4289
  Seahorse::Client::Request.new(handlers, context)
3029
4290
  end
3030
4291