aws-sdk-appmesh 1.31.0 → 1.36.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: d247b7a17307cd14d92aec4614a31f67dc2b53effdad895d8dec9b9083ffa3aa
4
- data.tar.gz: 10a9730af8dbfb14ebd8f224094d3bdcc68d6d47bf4f39216f7d8b48ea4559f3
3
+ metadata.gz: 3e117632a953b2d47016b9a79f238ab18c1e2be91458db38546a03a6d230e334
4
+ data.tar.gz: f0210dd1eb9a5969e2d61081607c68754422da9a648d139074fb65859eae4a49
5
5
  SHA512:
6
- metadata.gz: aaaa031f54a9aae38ab0947bc496884e63aeb5fad77c531e26f8de8605bede88d967084c3615d837f53597be451f5e7f1b36ac8634bac8a2d72293ea30e8884e
7
- data.tar.gz: 9f7cdc529d46714a1c509105f489785c18f060680bb07b34ad2b71df9778bcc4701d5f104ec1a51f7b4de1253dbc79b36f051389083fae1616d35496b81d4c2f
6
+ metadata.gz: 946b0c63739d4448cd3f80bb9a480f2866e125c81dadde58b86fce46bfee3969951fc2918701655d460f241c9bda4246681cfffdea5a036281dfa3906c8a935c
7
+ data.tar.gz: 48bf8239924d9da9424aff2692a365dad9e43dc217d3bdde8ed10527da738ef2a2eed44aa3ab44d1d07e8b469c22a8b5d295be0d7d65b7432b5e6174e62e69d3
data/CHANGELOG.md ADDED
@@ -0,0 +1,199 @@
1
+ Unreleased Changes
2
+ ------------------
3
+
4
+ 1.36.0 (2021-06-10)
5
+ ------------------
6
+
7
+ * Feature - AppMesh now supports additional routing capabilities in match and rewrites for Gateway Routes and Routes. Additionally, App Mesh also supports specifying DNS Response Types in Virtual Nodes.
8
+
9
+ 1.35.0 (2021-03-10)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.34.0 (2021-02-02)
15
+ ------------------
16
+
17
+ * Feature - App Mesh now supports mutual TLS with two-way peer authentication. You can specify client certificates, server-side TLS validation, and matching of Subject Alternative Names.
18
+
19
+ 1.33.0 (2020-11-20)
20
+ ------------------
21
+
22
+ * Feature - This release makes tag value a required attribute of the tag's key-value pair.
23
+
24
+ 1.32.0 (2020-11-05)
25
+ ------------------
26
+
27
+ * Feature - This release adds circuit breaking capabilities to your mesh with connection pooling and outlier detection support.
28
+
29
+ 1.31.0 (2020-09-30)
30
+ ------------------
31
+
32
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
33
+
34
+ 1.30.0 (2020-09-15)
35
+ ------------------
36
+
37
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
38
+
39
+ 1.29.0 (2020-08-25)
40
+ ------------------
41
+
42
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
43
+
44
+ 1.28.0 (2020-07-09)
45
+ ------------------
46
+
47
+ * Feature - AppMesh now supports Ingress which allows resources outside a mesh to communicate to resources that are inside the mesh. See https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html
48
+
49
+ 1.27.0 (2020-06-23)
50
+ ------------------
51
+
52
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
53
+
54
+ 1.26.0 (2020-06-17)
55
+ ------------------
56
+
57
+ * Feature - Adds support for route and virtual node listener timeouts.
58
+
59
+ 1.25.1 (2020-06-11)
60
+ ------------------
61
+
62
+ * Issue - Republish previous version with correct dependency on `aws-sdk-core`.
63
+
64
+ 1.25.0 (2020-06-10)
65
+ ------------------
66
+
67
+ * Issue - This version has been yanked. (#2327).
68
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
69
+
70
+ 1.24.0 (2020-05-28)
71
+ ------------------
72
+
73
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
74
+
75
+ 1.23.0 (2020-05-20)
76
+ ------------------
77
+
78
+ * Feature - List APIs for all resources now contain additional information: when a resource was created, last updated, and its current version number.
79
+
80
+ 1.22.0 (2020-05-07)
81
+ ------------------
82
+
83
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
84
+
85
+ 1.21.0 (2020-03-09)
86
+ ------------------
87
+
88
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
89
+
90
+ 1.20.0 (2020-03-06)
91
+ ------------------
92
+
93
+ * Feature - App Mesh now supports sharing a Mesh with other AWS accounts. Customers can use AWS Resource Access Manager to share their Mesh with other accounts in their organization to connection applications within a single service mesh. See https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html for details.
94
+
95
+ 1.19.1 (2020-03-02)
96
+ ------------------
97
+
98
+ * Issue - Republish the previously yanked version.
99
+
100
+ 1.19.0 (2020-02-28)
101
+ ------------------
102
+
103
+ * Issue - This version has been yanked. (#2239)
104
+ * Feature - App Mesh now supports Transport Layer Security (TLS) between Virtual Nodes in a Mesh. Customers can use managed certificates from an AWS Certificate Manager Private Certificate Authority or bring their own certificates from the local file system to encrypt traffic between their workloads. See https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual-node-tls.html for details.
105
+
106
+ 1.18.0 (2019-10-24)
107
+ ------------------
108
+
109
+ * Feature - This release adds support for the gRPC and HTTP/2 protocols.
110
+
111
+ 1.17.0 (2019-10-23)
112
+ ------------------
113
+
114
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
115
+
116
+ 1.16.0 (2019-09-09)
117
+ ------------------
118
+
119
+ * Feature - This release adds support for http retry policies.
120
+
121
+ 1.15.0 (2019-08-19)
122
+ ------------------
123
+
124
+ * Feature - Fix for HttpMethod enum
125
+
126
+ 1.14.0 (2019-08-15)
127
+ ------------------
128
+
129
+ * Feature - This release adds support for http header based routing and route prioritization.
130
+
131
+ 1.13.0 (2019-07-25)
132
+ ------------------
133
+
134
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
135
+
136
+ 1.12.0 (2019-07-01)
137
+ ------------------
138
+
139
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
140
+
141
+ 1.11.0 (2019-06-17)
142
+ ------------------
143
+
144
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
145
+
146
+ 1.10.0 (2019-06-13)
147
+ ------------------
148
+
149
+ * Feature - This release adds support for AWS Cloud Map as a service discovery method for virtual nodes.
150
+
151
+ 1.9.0 (2019-05-21)
152
+ ------------------
153
+
154
+ * Feature - API update.
155
+
156
+ 1.8.0 (2019-05-15)
157
+ ------------------
158
+
159
+ * Feature - API update.
160
+
161
+ 1.7.0 (2019-05-14)
162
+ ------------------
163
+
164
+ * Feature - API update.
165
+
166
+ 1.6.0 (2019-03-27)
167
+ ------------------
168
+
169
+ * Feature - API update.
170
+
171
+ 1.5.0 (2019-03-21)
172
+ ------------------
173
+
174
+ * Feature - API update.
175
+
176
+ 1.4.0 (2019-03-18)
177
+ ------------------
178
+
179
+ * Feature - API update.
180
+
181
+ 1.3.0 (2019-03-14)
182
+ ------------------
183
+
184
+ * Feature - API update.
185
+
186
+ 1.2.0 (2019-03-07)
187
+ ------------------
188
+
189
+ * Feature - API update.
190
+
191
+ 1.1.0 (2019-01-07)
192
+ ------------------
193
+
194
+ * Feature - API update.
195
+
196
+ 1.0.0 (2018-11-29)
197
+ ------------------
198
+
199
+ * Feature - Initial release of `aws-sdk-appmesh`.
data/LICENSE.txt ADDED
@@ -0,0 +1,202 @@
1
+
2
+ Apache License
3
+ Version 2.0, January 2004
4
+ http://www.apache.org/licenses/
5
+
6
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
+
8
+ 1. Definitions.
9
+
10
+ "License" shall mean the terms and conditions for use, reproduction,
11
+ and distribution as defined by Sections 1 through 9 of this document.
12
+
13
+ "Licensor" shall mean the copyright owner or entity authorized by
14
+ the copyright owner that is granting the License.
15
+
16
+ "Legal Entity" shall mean the union of the acting entity and all
17
+ other entities that control, are controlled by, or are under common
18
+ control with that entity. For the purposes of this definition,
19
+ "control" means (i) the power, direct or indirect, to cause the
20
+ direction or management of such entity, whether by contract or
21
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
+ outstanding shares, or (iii) beneficial ownership of such entity.
23
+
24
+ "You" (or "Your") shall mean an individual or Legal Entity
25
+ exercising permissions granted by this License.
26
+
27
+ "Source" form shall mean the preferred form for making modifications,
28
+ including but not limited to software source code, documentation
29
+ source, and configuration files.
30
+
31
+ "Object" form shall mean any form resulting from mechanical
32
+ transformation or translation of a Source form, including but
33
+ not limited to compiled object code, generated documentation,
34
+ and conversions to other media types.
35
+
36
+ "Work" shall mean the work of authorship, whether in Source or
37
+ Object form, made available under the License, as indicated by a
38
+ copyright notice that is included in or attached to the work
39
+ (an example is provided in the Appendix below).
40
+
41
+ "Derivative Works" shall mean any work, whether in Source or Object
42
+ form, that is based on (or derived from) the Work and for which the
43
+ editorial revisions, annotations, elaborations, or other modifications
44
+ represent, as a whole, an original work of authorship. For the purposes
45
+ of this License, Derivative Works shall not include works that remain
46
+ separable from, or merely link (or bind by name) to the interfaces of,
47
+ the Work and Derivative Works thereof.
48
+
49
+ "Contribution" shall mean any work of authorship, including
50
+ the original version of the Work and any modifications or additions
51
+ to that Work or Derivative Works thereof, that is intentionally
52
+ submitted to Licensor for inclusion in the Work by the copyright owner
53
+ or by an individual or Legal Entity authorized to submit on behalf of
54
+ the copyright owner. For the purposes of this definition, "submitted"
55
+ means any form of electronic, verbal, or written communication sent
56
+ to the Licensor or its representatives, including but not limited to
57
+ communication on electronic mailing lists, source code control systems,
58
+ and issue tracking systems that are managed by, or on behalf of, the
59
+ Licensor for the purpose of discussing and improving the Work, but
60
+ excluding communication that is conspicuously marked or otherwise
61
+ designated in writing by the copyright owner as "Not a Contribution."
62
+
63
+ "Contributor" shall mean Licensor and any individual or Legal Entity
64
+ on behalf of whom a Contribution has been received by Licensor and
65
+ subsequently incorporated within the Work.
66
+
67
+ 2. Grant of Copyright License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ copyright license to reproduce, prepare Derivative Works of,
71
+ publicly display, publicly perform, sublicense, and distribute the
72
+ Work and such Derivative Works in Source or Object form.
73
+
74
+ 3. Grant of Patent License. Subject to the terms and conditions of
75
+ this License, each Contributor hereby grants to You a perpetual,
76
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
+ (except as stated in this section) patent license to make, have made,
78
+ use, offer to sell, sell, import, and otherwise transfer the Work,
79
+ where such license applies only to those patent claims licensable
80
+ by such Contributor that are necessarily infringed by their
81
+ Contribution(s) alone or by combination of their Contribution(s)
82
+ with the Work to which such Contribution(s) was submitted. If You
83
+ institute patent litigation against any entity (including a
84
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
85
+ or a Contribution incorporated within the Work constitutes direct
86
+ or contributory patent infringement, then any patent licenses
87
+ granted to You under this License for that Work shall terminate
88
+ as of the date such litigation is filed.
89
+
90
+ 4. Redistribution. You may reproduce and distribute copies of the
91
+ Work or Derivative Works thereof in any medium, with or without
92
+ modifications, and in Source or Object form, provided that You
93
+ meet the following conditions:
94
+
95
+ (a) You must give any other recipients of the Work or
96
+ Derivative Works a copy of this License; and
97
+
98
+ (b) You must cause any modified files to carry prominent notices
99
+ stating that You changed the files; and
100
+
101
+ (c) You must retain, in the Source form of any Derivative Works
102
+ that You distribute, all copyright, patent, trademark, and
103
+ attribution notices from the Source form of the Work,
104
+ excluding those notices that do not pertain to any part of
105
+ the Derivative Works; and
106
+
107
+ (d) If the Work includes a "NOTICE" text file as part of its
108
+ distribution, then any Derivative Works that You distribute must
109
+ include a readable copy of the attribution notices contained
110
+ within such NOTICE file, excluding those notices that do not
111
+ pertain to any part of the Derivative Works, in at least one
112
+ of the following places: within a NOTICE text file distributed
113
+ as part of the Derivative Works; within the Source form or
114
+ documentation, if provided along with the Derivative Works; or,
115
+ within a display generated by the Derivative Works, if and
116
+ wherever such third-party notices normally appear. The contents
117
+ of the NOTICE file are for informational purposes only and
118
+ do not modify the License. You may add Your own attribution
119
+ notices within Derivative Works that You distribute, alongside
120
+ or as an addendum to the NOTICE text from the Work, provided
121
+ that such additional attribution notices cannot be construed
122
+ as modifying the License.
123
+
124
+ You may add Your own copyright statement to Your modifications and
125
+ may provide additional or different license terms and conditions
126
+ for use, reproduction, or distribution of Your modifications, or
127
+ for any such Derivative Works as a whole, provided Your use,
128
+ reproduction, and distribution of the Work otherwise complies with
129
+ the conditions stated in this License.
130
+
131
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
132
+ any Contribution intentionally submitted for inclusion in the Work
133
+ by You to the Licensor shall be under the terms and conditions of
134
+ this License, without any additional terms or conditions.
135
+ Notwithstanding the above, nothing herein shall supersede or modify
136
+ the terms of any separate license agreement you may have executed
137
+ with Licensor regarding such Contributions.
138
+
139
+ 6. Trademarks. This License does not grant permission to use the trade
140
+ names, trademarks, service marks, or product names of the Licensor,
141
+ except as required for reasonable and customary use in describing the
142
+ origin of the Work and reproducing the content of the NOTICE file.
143
+
144
+ 7. Disclaimer of Warranty. Unless required by applicable law or
145
+ agreed to in writing, Licensor provides the Work (and each
146
+ Contributor provides its Contributions) on an "AS IS" BASIS,
147
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
+ implied, including, without limitation, any warranties or conditions
149
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
+ PARTICULAR PURPOSE. You are solely responsible for determining the
151
+ appropriateness of using or redistributing the Work and assume any
152
+ risks associated with Your exercise of permissions under this License.
153
+
154
+ 8. Limitation of Liability. In no event and under no legal theory,
155
+ whether in tort (including negligence), contract, or otherwise,
156
+ unless required by applicable law (such as deliberate and grossly
157
+ negligent acts) or agreed to in writing, shall any Contributor be
158
+ liable to You for damages, including any direct, indirect, special,
159
+ incidental, or consequential damages of any character arising as a
160
+ result of this License or out of the use or inability to use the
161
+ Work (including but not limited to damages for loss of goodwill,
162
+ work stoppage, computer failure or malfunction, or any and all
163
+ other commercial damages or losses), even if such Contributor
164
+ has been advised of the possibility of such damages.
165
+
166
+ 9. Accepting Warranty or Additional Liability. While redistributing
167
+ the Work or Derivative Works thereof, You may choose to offer,
168
+ and charge a fee for, acceptance of support, warranty, indemnity,
169
+ or other liability obligations and/or rights consistent with this
170
+ License. However, in accepting such obligations, You may act only
171
+ on Your own behalf and on Your sole responsibility, not on behalf
172
+ of any other Contributor, and only if You agree to indemnify,
173
+ defend, and hold each Contributor harmless for any liability
174
+ incurred by, or claims asserted against, such Contributor by reason
175
+ of your accepting any such warranty or additional liability.
176
+
177
+ END OF TERMS AND CONDITIONS
178
+
179
+ APPENDIX: How to apply the Apache License to your work.
180
+
181
+ To apply the Apache License to your work, attach the following
182
+ boilerplate notice, with the fields enclosed by brackets "[]"
183
+ replaced with your own identifying information. (Don't include
184
+ the brackets!) The text should be enclosed in the appropriate
185
+ comment syntax for the file format. We also recommend that a
186
+ file or class name and description of purpose be included on the
187
+ same "printed page" as the copyright notice for easier
188
+ identification within third-party archives.
189
+
190
+ Copyright [yyyy] [name of copyright owner]
191
+
192
+ Licensed under the Apache License, Version 2.0 (the "License");
193
+ you may not use this file except in compliance with the License.
194
+ You may obtain a copy of the License at
195
+
196
+ http://www.apache.org/licenses/LICENSE-2.0
197
+
198
+ Unless required by applicable law or agreed to in writing, software
199
+ distributed under the License is distributed on an "AS IS" BASIS,
200
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201
+ See the License for the specific language governing permissions and
202
+ limitations under the License.
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.36.0
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-appmesh/customizations'
48
48
  # @!group service
49
49
  module Aws::AppMesh
50
50
 
51
- GEM_VERSION = '1.31.0'
51
+ GEM_VERSION = '1.36.0'
52
52
 
53
53
  end
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -393,6 +393,11 @@ module Aws::AppMesh
393
393
  # spec: { # required
394
394
  # grpc_route: {
395
395
  # action: { # required
396
+ # rewrite: {
397
+ # hostname: {
398
+ # default_target_hostname: "ENABLED", # accepts ENABLED, DISABLED
399
+ # },
400
+ # },
396
401
  # target: { # required
397
402
  # virtual_service: { # required
398
403
  # virtual_service_name: "ResourceName", # required
@@ -400,11 +405,43 @@ module Aws::AppMesh
400
405
  # },
401
406
  # },
402
407
  # match: { # required
408
+ # hostname: {
409
+ # exact: "ExactHostName",
410
+ # suffix: "SuffixHostname",
411
+ # },
412
+ # metadata: [
413
+ # {
414
+ # invert: false,
415
+ # match: {
416
+ # exact: "HeaderMatch",
417
+ # prefix: "HeaderMatch",
418
+ # range: {
419
+ # end: 1, # required
420
+ # start: 1, # required
421
+ # },
422
+ # regex: "HeaderMatch",
423
+ # suffix: "HeaderMatch",
424
+ # },
425
+ # name: "HeaderName", # required
426
+ # },
427
+ # ],
403
428
  # service_name: "ServiceName",
404
429
  # },
405
430
  # },
406
431
  # http2_route: {
407
432
  # action: { # required
433
+ # rewrite: {
434
+ # hostname: {
435
+ # default_target_hostname: "ENABLED", # accepts ENABLED, DISABLED
436
+ # },
437
+ # path: {
438
+ # exact: "HttpPathExact",
439
+ # },
440
+ # prefix: {
441
+ # default_prefix: "ENABLED", # accepts ENABLED, DISABLED
442
+ # value: "HttpGatewayRoutePrefix",
443
+ # },
444
+ # },
408
445
  # target: { # required
409
446
  # virtual_service: { # required
410
447
  # virtual_service_name: "ResourceName", # required
@@ -412,11 +449,56 @@ module Aws::AppMesh
412
449
  # },
413
450
  # },
414
451
  # match: { # required
415
- # prefix: "String", # required
452
+ # headers: [
453
+ # {
454
+ # invert: false,
455
+ # match: {
456
+ # exact: "HeaderMatch",
457
+ # prefix: "HeaderMatch",
458
+ # range: {
459
+ # end: 1, # required
460
+ # start: 1, # required
461
+ # },
462
+ # regex: "HeaderMatch",
463
+ # suffix: "HeaderMatch",
464
+ # },
465
+ # name: "HeaderName", # required
466
+ # },
467
+ # ],
468
+ # hostname: {
469
+ # exact: "ExactHostName",
470
+ # suffix: "SuffixHostname",
471
+ # },
472
+ # method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
473
+ # path: {
474
+ # exact: "HttpPathExact",
475
+ # regex: "HttpPathRegex",
476
+ # },
477
+ # prefix: "String",
478
+ # query_parameters: [
479
+ # {
480
+ # match: {
481
+ # exact: "String",
482
+ # },
483
+ # name: "QueryParameterName", # required
484
+ # },
485
+ # ],
416
486
  # },
417
487
  # },
418
488
  # http_route: {
419
489
  # action: { # required
490
+ # rewrite: {
491
+ # hostname: {
492
+ # default_target_hostname: "ENABLED", # accepts ENABLED, DISABLED
493
+ # },
494
+ # path: {
495
+ # exact: "HttpPathExact",
496
+ # },
497
+ # prefix: {
498
+ # default_prefix: "ENABLED", # accepts ENABLED, DISABLED
499
+ # value: "HttpGatewayRoutePrefix",
500
+ # },
501
+ # },
420
502
  # target: { # required
421
503
  # virtual_service: { # required
422
504
  # virtual_service_name: "ResourceName", # required
@@ -424,14 +506,48 @@ module Aws::AppMesh
424
506
  # },
425
507
  # },
426
508
  # match: { # required
427
- # prefix: "String", # required
509
+ # headers: [
510
+ # {
511
+ # invert: false,
512
+ # match: {
513
+ # exact: "HeaderMatch",
514
+ # prefix: "HeaderMatch",
515
+ # range: {
516
+ # end: 1, # required
517
+ # start: 1, # required
518
+ # },
519
+ # regex: "HeaderMatch",
520
+ # suffix: "HeaderMatch",
521
+ # },
522
+ # name: "HeaderName", # required
523
+ # },
524
+ # ],
525
+ # hostname: {
526
+ # exact: "ExactHostName",
527
+ # suffix: "SuffixHostname",
528
+ # },
529
+ # method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
530
+ # path: {
531
+ # exact: "HttpPathExact",
532
+ # regex: "HttpPathRegex",
533
+ # },
534
+ # prefix: "String",
535
+ # query_parameters: [
536
+ # {
537
+ # match: {
538
+ # exact: "String",
539
+ # },
540
+ # name: "QueryParameterName", # required
541
+ # },
542
+ # ],
428
543
  # },
429
544
  # },
545
+ # priority: 1,
430
546
  # },
431
547
  # tags: [
432
548
  # {
433
549
  # key: "TagKey", # required
434
- # value: "TagValue",
550
+ # value: "TagValue", # required
435
551
  # },
436
552
  # ],
437
553
  # virtual_gateway_name: "ResourceName", # required
@@ -448,13 +564,68 @@ module Aws::AppMesh
448
564
  # resp.gateway_route.metadata.resource_owner #=> String
449
565
  # resp.gateway_route.metadata.uid #=> String
450
566
  # resp.gateway_route.metadata.version #=> Integer
567
+ # resp.gateway_route.spec.grpc_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
451
568
  # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
569
+ # resp.gateway_route.spec.grpc_route.match.hostname.exact #=> String
570
+ # resp.gateway_route.spec.grpc_route.match.hostname.suffix #=> String
571
+ # resp.gateway_route.spec.grpc_route.match.metadata #=> Array
572
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].invert #=> Boolean
573
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.exact #=> String
574
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.prefix #=> String
575
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.range.end #=> Integer
576
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.range.start #=> Integer
577
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.regex #=> String
578
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.suffix #=> String
579
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].name #=> String
452
580
  # resp.gateway_route.spec.grpc_route.match.service_name #=> String
581
+ # resp.gateway_route.spec.http2_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
582
+ # resp.gateway_route.spec.http2_route.action.rewrite.path.exact #=> String
583
+ # resp.gateway_route.spec.http2_route.action.rewrite.prefix.default_prefix #=> String, one of "ENABLED", "DISABLED"
584
+ # resp.gateway_route.spec.http2_route.action.rewrite.prefix.value #=> String
453
585
  # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
586
+ # resp.gateway_route.spec.http2_route.match.headers #=> Array
587
+ # resp.gateway_route.spec.http2_route.match.headers[0].invert #=> Boolean
588
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.exact #=> String
589
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.prefix #=> String
590
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.range.end #=> Integer
591
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.range.start #=> Integer
592
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.regex #=> String
593
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.suffix #=> String
594
+ # resp.gateway_route.spec.http2_route.match.headers[0].name #=> String
595
+ # resp.gateway_route.spec.http2_route.match.hostname.exact #=> String
596
+ # resp.gateway_route.spec.http2_route.match.hostname.suffix #=> String
597
+ # resp.gateway_route.spec.http2_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
598
+ # resp.gateway_route.spec.http2_route.match.path.exact #=> String
599
+ # resp.gateway_route.spec.http2_route.match.path.regex #=> String
454
600
  # resp.gateway_route.spec.http2_route.match.prefix #=> String
601
+ # resp.gateway_route.spec.http2_route.match.query_parameters #=> Array
602
+ # resp.gateway_route.spec.http2_route.match.query_parameters[0].match.exact #=> String
603
+ # resp.gateway_route.spec.http2_route.match.query_parameters[0].name #=> String
604
+ # resp.gateway_route.spec.http_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
605
+ # resp.gateway_route.spec.http_route.action.rewrite.path.exact #=> String
606
+ # resp.gateway_route.spec.http_route.action.rewrite.prefix.default_prefix #=> String, one of "ENABLED", "DISABLED"
607
+ # resp.gateway_route.spec.http_route.action.rewrite.prefix.value #=> String
455
608
  # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
609
+ # resp.gateway_route.spec.http_route.match.headers #=> Array
610
+ # resp.gateway_route.spec.http_route.match.headers[0].invert #=> Boolean
611
+ # resp.gateway_route.spec.http_route.match.headers[0].match.exact #=> String
612
+ # resp.gateway_route.spec.http_route.match.headers[0].match.prefix #=> String
613
+ # resp.gateway_route.spec.http_route.match.headers[0].match.range.end #=> Integer
614
+ # resp.gateway_route.spec.http_route.match.headers[0].match.range.start #=> Integer
615
+ # resp.gateway_route.spec.http_route.match.headers[0].match.regex #=> String
616
+ # resp.gateway_route.spec.http_route.match.headers[0].match.suffix #=> String
617
+ # resp.gateway_route.spec.http_route.match.headers[0].name #=> String
618
+ # resp.gateway_route.spec.http_route.match.hostname.exact #=> String
619
+ # resp.gateway_route.spec.http_route.match.hostname.suffix #=> String
620
+ # resp.gateway_route.spec.http_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
621
+ # resp.gateway_route.spec.http_route.match.path.exact #=> String
622
+ # resp.gateway_route.spec.http_route.match.path.regex #=> String
456
623
  # resp.gateway_route.spec.http_route.match.prefix #=> String
457
- # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
624
+ # resp.gateway_route.spec.http_route.match.query_parameters #=> Array
625
+ # resp.gateway_route.spec.http_route.match.query_parameters[0].match.exact #=> String
626
+ # resp.gateway_route.spec.http_route.match.query_parameters[0].name #=> String
627
+ # resp.gateway_route.spec.priority #=> Integer
628
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
458
629
  # resp.gateway_route.virtual_gateway_name #=> String
459
630
  #
460
631
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateGatewayRoute AWS API Documentation
@@ -518,7 +689,7 @@ module Aws::AppMesh
518
689
  # tags: [
519
690
  # {
520
691
  # key: "TagKey", # required
521
- # value: "TagValue",
692
+ # value: "TagValue", # required
522
693
  # },
523
694
  # ],
524
695
  # })
@@ -534,7 +705,7 @@ module Aws::AppMesh
534
705
  # resp.mesh.metadata.uid #=> String
535
706
  # resp.mesh.metadata.version #=> Integer
536
707
  # resp.mesh.spec.egress_filter.type #=> String, one of "ALLOW_ALL", "DROP_ALL"
537
- # resp.mesh.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
708
+ # resp.mesh.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
538
709
  #
539
710
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateMesh AWS API Documentation
540
711
  #
@@ -642,18 +813,18 @@ module Aws::AppMesh
642
813
  # http_retry_events: ["HttpRetryPolicyEvent"],
643
814
  # max_retries: 1, # required
644
815
  # per_retry_timeout: { # required
645
- # unit: "ms", # accepts ms, s
816
+ # unit: "s", # accepts s, ms
646
817
  # value: 1,
647
818
  # },
648
819
  # tcp_retry_events: ["connection-error"], # accepts connection-error
649
820
  # },
650
821
  # timeout: {
651
822
  # idle: {
652
- # unit: "ms", # accepts ms, s
823
+ # unit: "s", # accepts s, ms
653
824
  # value: 1,
654
825
  # },
655
826
  # per_request: {
656
- # unit: "ms", # accepts ms, s
827
+ # unit: "s", # accepts s, ms
657
828
  # value: 1,
658
829
  # },
659
830
  # },
@@ -684,26 +855,38 @@ module Aws::AppMesh
684
855
  # name: "HeaderName", # required
685
856
  # },
686
857
  # ],
687
- # method: "CONNECT", # accepts CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT, TRACE
688
- # prefix: "String", # required
858
+ # method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
859
+ # path: {
860
+ # exact: "HttpPathExact",
861
+ # regex: "HttpPathRegex",
862
+ # },
863
+ # prefix: "String",
864
+ # query_parameters: [
865
+ # {
866
+ # match: {
867
+ # exact: "String",
868
+ # },
869
+ # name: "QueryParameterName", # required
870
+ # },
871
+ # ],
689
872
  # scheme: "http", # accepts http, https
690
873
  # },
691
874
  # retry_policy: {
692
875
  # http_retry_events: ["HttpRetryPolicyEvent"],
693
876
  # max_retries: 1, # required
694
877
  # per_retry_timeout: { # required
695
- # unit: "ms", # accepts ms, s
878
+ # unit: "s", # accepts s, ms
696
879
  # value: 1,
697
880
  # },
698
881
  # tcp_retry_events: ["connection-error"], # accepts connection-error
699
882
  # },
700
883
  # timeout: {
701
884
  # idle: {
702
- # unit: "ms", # accepts ms, s
885
+ # unit: "s", # accepts s, ms
703
886
  # value: 1,
704
887
  # },
705
888
  # per_request: {
706
- # unit: "ms", # accepts ms, s
889
+ # unit: "s", # accepts s, ms
707
890
  # value: 1,
708
891
  # },
709
892
  # },
@@ -734,26 +917,38 @@ module Aws::AppMesh
734
917
  # name: "HeaderName", # required
735
918
  # },
736
919
  # ],
737
- # method: "CONNECT", # accepts CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT, TRACE
738
- # prefix: "String", # required
920
+ # method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
921
+ # path: {
922
+ # exact: "HttpPathExact",
923
+ # regex: "HttpPathRegex",
924
+ # },
925
+ # prefix: "String",
926
+ # query_parameters: [
927
+ # {
928
+ # match: {
929
+ # exact: "String",
930
+ # },
931
+ # name: "QueryParameterName", # required
932
+ # },
933
+ # ],
739
934
  # scheme: "http", # accepts http, https
740
935
  # },
741
936
  # retry_policy: {
742
937
  # http_retry_events: ["HttpRetryPolicyEvent"],
743
938
  # max_retries: 1, # required
744
939
  # per_retry_timeout: { # required
745
- # unit: "ms", # accepts ms, s
940
+ # unit: "s", # accepts s, ms
746
941
  # value: 1,
747
942
  # },
748
943
  # tcp_retry_events: ["connection-error"], # accepts connection-error
749
944
  # },
750
945
  # timeout: {
751
946
  # idle: {
752
- # unit: "ms", # accepts ms, s
947
+ # unit: "s", # accepts s, ms
753
948
  # value: 1,
754
949
  # },
755
950
  # per_request: {
756
- # unit: "ms", # accepts ms, s
951
+ # unit: "s", # accepts s, ms
757
952
  # value: 1,
758
953
  # },
759
954
  # },
@@ -770,7 +965,7 @@ module Aws::AppMesh
770
965
  # },
771
966
  # timeout: {
772
967
  # idle: {
773
- # unit: "ms", # accepts ms, s
968
+ # unit: "s", # accepts s, ms
774
969
  # value: 1,
775
970
  # },
776
971
  # },
@@ -779,7 +974,7 @@ module Aws::AppMesh
779
974
  # tags: [
780
975
  # {
781
976
  # key: "TagKey", # required
782
- # value: "TagValue",
977
+ # value: "TagValue", # required
783
978
  # },
784
979
  # ],
785
980
  # virtual_router_name: "ResourceName", # required
@@ -815,13 +1010,13 @@ module Aws::AppMesh
815
1010
  # resp.route.spec.grpc_route.retry_policy.http_retry_events #=> Array
816
1011
  # resp.route.spec.grpc_route.retry_policy.http_retry_events[0] #=> String
817
1012
  # resp.route.spec.grpc_route.retry_policy.max_retries #=> Integer
818
- # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
1013
+ # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
819
1014
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
820
1015
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
821
1016
  # 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"
1017
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "s", "ms"
823
1018
  # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
824
- # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
1019
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "s", "ms"
825
1020
  # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
826
1021
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
827
1022
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
@@ -835,19 +1030,24 @@ module Aws::AppMesh
835
1030
  # resp.route.spec.http2_route.match.headers[0].match.regex #=> String
836
1031
  # resp.route.spec.http2_route.match.headers[0].match.suffix #=> String
837
1032
  # resp.route.spec.http2_route.match.headers[0].name #=> String
838
- # resp.route.spec.http2_route.match.method #=> String, one of "CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"
1033
+ # resp.route.spec.http2_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
1034
+ # resp.route.spec.http2_route.match.path.exact #=> String
1035
+ # resp.route.spec.http2_route.match.path.regex #=> String
839
1036
  # resp.route.spec.http2_route.match.prefix #=> String
1037
+ # resp.route.spec.http2_route.match.query_parameters #=> Array
1038
+ # resp.route.spec.http2_route.match.query_parameters[0].match.exact #=> String
1039
+ # resp.route.spec.http2_route.match.query_parameters[0].name #=> String
840
1040
  # resp.route.spec.http2_route.match.scheme #=> String, one of "http", "https"
841
1041
  # resp.route.spec.http2_route.retry_policy.http_retry_events #=> Array
842
1042
  # resp.route.spec.http2_route.retry_policy.http_retry_events[0] #=> String
843
1043
  # resp.route.spec.http2_route.retry_policy.max_retries #=> Integer
844
- # resp.route.spec.http2_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
1044
+ # resp.route.spec.http2_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
845
1045
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
846
1046
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
847
1047
  # 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"
1048
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "s", "ms"
849
1049
  # resp.route.spec.http2_route.timeout.idle.value #=> Integer
850
- # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
1050
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "s", "ms"
851
1051
  # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
852
1052
  # resp.route.spec.http_route.action.weighted_targets #=> Array
853
1053
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
@@ -861,27 +1061,32 @@ module Aws::AppMesh
861
1061
  # resp.route.spec.http_route.match.headers[0].match.regex #=> String
862
1062
  # resp.route.spec.http_route.match.headers[0].match.suffix #=> String
863
1063
  # resp.route.spec.http_route.match.headers[0].name #=> String
864
- # resp.route.spec.http_route.match.method #=> String, one of "CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"
1064
+ # resp.route.spec.http_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
1065
+ # resp.route.spec.http_route.match.path.exact #=> String
1066
+ # resp.route.spec.http_route.match.path.regex #=> String
865
1067
  # resp.route.spec.http_route.match.prefix #=> String
1068
+ # resp.route.spec.http_route.match.query_parameters #=> Array
1069
+ # resp.route.spec.http_route.match.query_parameters[0].match.exact #=> String
1070
+ # resp.route.spec.http_route.match.query_parameters[0].name #=> String
866
1071
  # resp.route.spec.http_route.match.scheme #=> String, one of "http", "https"
867
1072
  # resp.route.spec.http_route.retry_policy.http_retry_events #=> Array
868
1073
  # resp.route.spec.http_route.retry_policy.http_retry_events[0] #=> String
869
1074
  # resp.route.spec.http_route.retry_policy.max_retries #=> Integer
870
- # resp.route.spec.http_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
1075
+ # resp.route.spec.http_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
871
1076
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
872
1077
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
873
1078
  # 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"
1079
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "s", "ms"
875
1080
  # resp.route.spec.http_route.timeout.idle.value #=> Integer
876
- # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
1081
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "s", "ms"
877
1082
  # resp.route.spec.http_route.timeout.per_request.value #=> Integer
878
1083
  # resp.route.spec.priority #=> Integer
879
1084
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
880
1085
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
881
1086
  # 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"
1087
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "s", "ms"
883
1088
  # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
884
- # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1089
+ # resp.route.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
885
1090
  # resp.route.virtual_router_name #=> String
886
1091
  #
887
1092
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateRoute AWS API Documentation
@@ -958,9 +1163,23 @@ module Aws::AppMesh
958
1163
  # backend_defaults: {
959
1164
  # client_policy: {
960
1165
  # tls: {
1166
+ # certificate: {
1167
+ # file: {
1168
+ # certificate_chain: "FilePath", # required
1169
+ # private_key: "FilePath", # required
1170
+ # },
1171
+ # sds: {
1172
+ # secret_name: "VirtualGatewaySdsSecretName", # required
1173
+ # },
1174
+ # },
961
1175
  # enforce: false,
962
1176
  # ports: [1],
963
1177
  # validation: { # required
1178
+ # subject_alternative_names: {
1179
+ # match: { # required
1180
+ # exact: ["SubjectAlternativeName"], # required
1181
+ # },
1182
+ # },
964
1183
  # trust: { # required
965
1184
  # acm: {
966
1185
  # certificate_authority_arns: ["Arn"], # required
@@ -968,6 +1187,9 @@ module Aws::AppMesh
968
1187
  # file: {
969
1188
  # certificate_chain: "FilePath", # required
970
1189
  # },
1190
+ # sds: {
1191
+ # secret_name: "VirtualGatewaySdsSecretName", # required
1192
+ # },
971
1193
  # },
972
1194
  # },
973
1195
  # },
@@ -975,18 +1197,30 @@ module Aws::AppMesh
975
1197
  # },
976
1198
  # listeners: [ # required
977
1199
  # {
1200
+ # connection_pool: {
1201
+ # grpc: {
1202
+ # max_requests: 1, # required
1203
+ # },
1204
+ # http: {
1205
+ # max_connections: 1, # required
1206
+ # max_pending_requests: 1,
1207
+ # },
1208
+ # http2: {
1209
+ # max_requests: 1, # required
1210
+ # },
1211
+ # },
978
1212
  # health_check: {
979
1213
  # healthy_threshold: 1, # required
980
1214
  # interval_millis: 1, # required
981
1215
  # path: "String",
982
1216
  # port: 1,
983
- # protocol: "grpc", # required, accepts grpc, http, http2
1217
+ # protocol: "http", # required, accepts http, http2, grpc
984
1218
  # timeout_millis: 1, # required
985
1219
  # unhealthy_threshold: 1, # required
986
1220
  # },
987
1221
  # port_mapping: { # required
988
1222
  # port: 1, # required
989
- # protocol: "grpc", # required, accepts grpc, http, http2
1223
+ # protocol: "http", # required, accepts http, http2, grpc
990
1224
  # },
991
1225
  # tls: {
992
1226
  # certificate: { # required
@@ -997,8 +1231,26 @@ module Aws::AppMesh
997
1231
  # certificate_chain: "FilePath", # required
998
1232
  # private_key: "FilePath", # required
999
1233
  # },
1234
+ # sds: {
1235
+ # secret_name: "VirtualGatewaySdsSecretName", # required
1236
+ # },
1237
+ # },
1238
+ # mode: "STRICT", # required, accepts STRICT, PERMISSIVE, DISABLED
1239
+ # validation: {
1240
+ # subject_alternative_names: {
1241
+ # match: { # required
1242
+ # exact: ["SubjectAlternativeName"], # required
1243
+ # },
1244
+ # },
1245
+ # trust: { # required
1246
+ # file: {
1247
+ # certificate_chain: "FilePath", # required
1248
+ # },
1249
+ # sds: {
1250
+ # secret_name: "VirtualGatewaySdsSecretName", # required
1251
+ # },
1252
+ # },
1000
1253
  # },
1001
- # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
1002
1254
  # },
1003
1255
  # },
1004
1256
  # ],
@@ -1013,7 +1265,7 @@ module Aws::AppMesh
1013
1265
  # tags: [
1014
1266
  # {
1015
1267
  # key: "TagKey", # required
1016
- # value: "TagValue",
1268
+ # value: "TagValue", # required
1017
1269
  # },
1018
1270
  # ],
1019
1271
  # virtual_gateway_name: "ResourceName", # required
@@ -1029,28 +1281,43 @@ module Aws::AppMesh
1029
1281
  # resp.virtual_gateway.metadata.resource_owner #=> String
1030
1282
  # resp.virtual_gateway.metadata.uid #=> String
1031
1283
  # resp.virtual_gateway.metadata.version #=> Integer
1284
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.file.certificate_chain #=> String
1285
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.file.private_key #=> String
1286
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.sds.secret_name #=> String
1032
1287
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
1033
1288
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
1034
1289
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
1290
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
1291
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
1035
1292
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1036
1293
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1037
1294
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
1295
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.sds.secret_name #=> String
1038
1296
  # resp.virtual_gateway.spec.listeners #=> Array
1297
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.grpc.max_requests #=> Integer
1298
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http.max_connections #=> Integer
1299
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http.max_pending_requests #=> Integer
1300
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http2.max_requests #=> Integer
1039
1301
  # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
1040
1302
  # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
1041
1303
  # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
1042
1304
  # 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"
1305
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "http", "http2", "grpc"
1044
1306
  # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
1045
1307
  # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1046
1308
  # 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"
1309
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "http2", "grpc"
1048
1310
  # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1049
1311
  # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1050
1312
  # 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"
1313
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.sds.secret_name #=> String
1314
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "STRICT", "PERMISSIVE", "DISABLED"
1315
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.subject_alternative_names.match.exact #=> Array
1316
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.subject_alternative_names.match.exact[0] #=> String
1317
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.trust.file.certificate_chain #=> String
1318
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.trust.sds.secret_name #=> String
1052
1319
  # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
1053
- # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1320
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
1054
1321
  # resp.virtual_gateway.virtual_gateway_name #=> String
1055
1322
  #
1056
1323
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualGateway AWS API Documentation
@@ -1076,26 +1343,30 @@ module Aws::AppMesh
1076
1343
  # communicate to is specified as a `backend`.
1077
1344
  #
1078
1345
  # The response metadata for your new virtual node contains the `arn`
1079
- # that is associated with the virtual node. Set this value (either the
1080
- # full ARN or the truncated resource name: for example,
1081
- # `mesh/default/virtualNode/simpleapp`) as the
1082
- # `APPMESH_VIRTUAL_NODE_NAME` environment variable for your task
1346
+ # that is associated with the virtual node. Set this value to the full
1347
+ # ARN; for example,
1348
+ # `arn:aws:appmesh:us-west-2:123456789012:myMesh/default/virtualNode/myApp`)
1349
+ # as the `APPMESH_RESOURCE_ARN` environment variable for your task
1083
1350
  # group's Envoy proxy container in your task definition or pod spec.
1084
1351
  # This is then mapped to the `node.id` and `node.cluster` Envoy
1085
1352
  # parameters.
1086
1353
  #
1087
- # <note markdown="1"> If you require your Envoy stats or tracing to use a different name,
1088
- # you can override the `node.cluster` value that is set by
1089
- # `APPMESH_VIRTUAL_NODE_NAME` with the `APPMESH_VIRTUAL_NODE_CLUSTER`
1090
- # environment variable.
1354
+ # <note markdown="1"> By default, App Mesh uses the name of the resource you specified in
1355
+ # `APPMESH_RESOURCE_ARN` when Envoy is referring to itself in metrics
1356
+ # and traces. You can override this behavior by setting the
1357
+ # `APPMESH_RESOURCE_CLUSTER` environment variable with your own name.
1091
1358
  #
1092
1359
  # </note>
1093
1360
  #
1094
- # For more information about virtual nodes, see [Virtual nodes][1].
1361
+ # For more information about virtual nodes, see [Virtual nodes][1]. You
1362
+ # must be using `1.15.0` or later of the Envoy image when setting these
1363
+ # variables. For more information aboutApp Mesh Envoy variables, see
1364
+ # [Envoy image][2] in the AWS App Mesh User Guide.
1095
1365
  #
1096
1366
  #
1097
1367
  #
1098
1368
  # [1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_nodes.html
1369
+ # [2]: https://docs.aws.amazon.com/app-mesh/latest/userguide/envoy.html
1099
1370
  #
1100
1371
  # @option params [String] :client_token
1101
1372
  # Unique, case-sensitive identifier that you provide to ensure the
@@ -1146,9 +1417,23 @@ module Aws::AppMesh
1146
1417
  # backend_defaults: {
1147
1418
  # client_policy: {
1148
1419
  # tls: {
1420
+ # certificate: {
1421
+ # file: {
1422
+ # certificate_chain: "FilePath", # required
1423
+ # private_key: "FilePath", # required
1424
+ # },
1425
+ # sds: {
1426
+ # secret_name: "SdsSecretName", # required
1427
+ # },
1428
+ # },
1149
1429
  # enforce: false,
1150
1430
  # ports: [1],
1151
1431
  # validation: { # required
1432
+ # subject_alternative_names: {
1433
+ # match: { # required
1434
+ # exact: ["SubjectAlternativeName"], # required
1435
+ # },
1436
+ # },
1152
1437
  # trust: { # required
1153
1438
  # acm: {
1154
1439
  # certificate_authority_arns: ["Arn"], # required
@@ -1156,6 +1441,9 @@ module Aws::AppMesh
1156
1441
  # file: {
1157
1442
  # certificate_chain: "FilePath", # required
1158
1443
  # },
1444
+ # sds: {
1445
+ # secret_name: "SdsSecretName", # required
1446
+ # },
1159
1447
  # },
1160
1448
  # },
1161
1449
  # },
@@ -1166,9 +1454,23 @@ module Aws::AppMesh
1166
1454
  # virtual_service: {
1167
1455
  # client_policy: {
1168
1456
  # tls: {
1457
+ # certificate: {
1458
+ # file: {
1459
+ # certificate_chain: "FilePath", # required
1460
+ # private_key: "FilePath", # required
1461
+ # },
1462
+ # sds: {
1463
+ # secret_name: "SdsSecretName", # required
1464
+ # },
1465
+ # },
1169
1466
  # enforce: false,
1170
1467
  # ports: [1],
1171
1468
  # validation: { # required
1469
+ # subject_alternative_names: {
1470
+ # match: { # required
1471
+ # exact: ["SubjectAlternativeName"], # required
1472
+ # },
1473
+ # },
1172
1474
  # trust: { # required
1173
1475
  # acm: {
1174
1476
  # certificate_authority_arns: ["Arn"], # required
@@ -1176,6 +1478,9 @@ module Aws::AppMesh
1176
1478
  # file: {
1177
1479
  # certificate_chain: "FilePath", # required
1178
1480
  # },
1481
+ # sds: {
1482
+ # secret_name: "SdsSecretName", # required
1483
+ # },
1179
1484
  # },
1180
1485
  # },
1181
1486
  # },
@@ -1186,53 +1491,80 @@ module Aws::AppMesh
1186
1491
  # ],
1187
1492
  # listeners: [
1188
1493
  # {
1494
+ # connection_pool: {
1495
+ # grpc: {
1496
+ # max_requests: 1, # required
1497
+ # },
1498
+ # http: {
1499
+ # max_connections: 1, # required
1500
+ # max_pending_requests: 1,
1501
+ # },
1502
+ # http2: {
1503
+ # max_requests: 1, # required
1504
+ # },
1505
+ # tcp: {
1506
+ # max_connections: 1, # required
1507
+ # },
1508
+ # },
1189
1509
  # health_check: {
1190
1510
  # healthy_threshold: 1, # required
1191
1511
  # interval_millis: 1, # required
1192
1512
  # path: "String",
1193
1513
  # port: 1,
1194
- # protocol: "grpc", # required, accepts grpc, http, http2, tcp
1514
+ # protocol: "http", # required, accepts http, tcp, http2, grpc
1195
1515
  # timeout_millis: 1, # required
1196
1516
  # unhealthy_threshold: 1, # required
1197
1517
  # },
1518
+ # outlier_detection: {
1519
+ # base_ejection_duration: { # required
1520
+ # unit: "s", # accepts s, ms
1521
+ # value: 1,
1522
+ # },
1523
+ # interval: { # required
1524
+ # unit: "s", # accepts s, ms
1525
+ # value: 1,
1526
+ # },
1527
+ # max_ejection_percent: 1, # required
1528
+ # max_server_errors: 1, # required
1529
+ # },
1198
1530
  # port_mapping: { # required
1199
1531
  # port: 1, # required
1200
- # protocol: "grpc", # required, accepts grpc, http, http2, tcp
1532
+ # protocol: "http", # required, accepts http, tcp, http2, grpc
1201
1533
  # },
1202
1534
  # timeout: {
1203
1535
  # grpc: {
1204
1536
  # idle: {
1205
- # unit: "ms", # accepts ms, s
1537
+ # unit: "s", # accepts s, ms
1206
1538
  # value: 1,
1207
1539
  # },
1208
1540
  # per_request: {
1209
- # unit: "ms", # accepts ms, s
1541
+ # unit: "s", # accepts s, ms
1210
1542
  # value: 1,
1211
1543
  # },
1212
1544
  # },
1213
1545
  # http: {
1214
1546
  # idle: {
1215
- # unit: "ms", # accepts ms, s
1547
+ # unit: "s", # accepts s, ms
1216
1548
  # value: 1,
1217
1549
  # },
1218
1550
  # per_request: {
1219
- # unit: "ms", # accepts ms, s
1551
+ # unit: "s", # accepts s, ms
1220
1552
  # value: 1,
1221
1553
  # },
1222
1554
  # },
1223
1555
  # http2: {
1224
1556
  # idle: {
1225
- # unit: "ms", # accepts ms, s
1557
+ # unit: "s", # accepts s, ms
1226
1558
  # value: 1,
1227
1559
  # },
1228
1560
  # per_request: {
1229
- # unit: "ms", # accepts ms, s
1561
+ # unit: "s", # accepts s, ms
1230
1562
  # value: 1,
1231
1563
  # },
1232
1564
  # },
1233
1565
  # tcp: {
1234
1566
  # idle: {
1235
- # unit: "ms", # accepts ms, s
1567
+ # unit: "s", # accepts s, ms
1236
1568
  # value: 1,
1237
1569
  # },
1238
1570
  # },
@@ -1246,8 +1578,26 @@ module Aws::AppMesh
1246
1578
  # certificate_chain: "FilePath", # required
1247
1579
  # private_key: "FilePath", # required
1248
1580
  # },
1581
+ # sds: {
1582
+ # secret_name: "SdsSecretName", # required
1583
+ # },
1584
+ # },
1585
+ # mode: "STRICT", # required, accepts STRICT, PERMISSIVE, DISABLED
1586
+ # validation: {
1587
+ # subject_alternative_names: {
1588
+ # match: { # required
1589
+ # exact: ["SubjectAlternativeName"], # required
1590
+ # },
1591
+ # },
1592
+ # trust: { # required
1593
+ # file: {
1594
+ # certificate_chain: "FilePath", # required
1595
+ # },
1596
+ # sds: {
1597
+ # secret_name: "SdsSecretName", # required
1598
+ # },
1599
+ # },
1249
1600
  # },
1250
- # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
1251
1601
  # },
1252
1602
  # },
1253
1603
  # ],
@@ -1271,13 +1621,14 @@ module Aws::AppMesh
1271
1621
  # },
1272
1622
  # dns: {
1273
1623
  # hostname: "Hostname", # required
1624
+ # response_type: "LOADBALANCER", # accepts LOADBALANCER, ENDPOINTS
1274
1625
  # },
1275
1626
  # },
1276
1627
  # },
1277
1628
  # tags: [
1278
1629
  # {
1279
1630
  # key: "TagKey", # required
1280
- # value: "TagValue",
1631
+ # value: "TagValue", # required
1281
1632
  # },
1282
1633
  # ],
1283
1634
  # virtual_node_name: "ResourceName", # required
@@ -1293,48 +1644,76 @@ module Aws::AppMesh
1293
1644
  # resp.virtual_node.metadata.resource_owner #=> String
1294
1645
  # resp.virtual_node.metadata.uid #=> String
1295
1646
  # resp.virtual_node.metadata.version #=> Integer
1647
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.file.certificate_chain #=> String
1648
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.file.private_key #=> String
1649
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.sds.secret_name #=> String
1296
1650
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
1297
1651
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.ports #=> Array
1298
1652
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
1653
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
1654
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
1299
1655
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1300
1656
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1301
1657
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
1658
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.sds.secret_name #=> String
1302
1659
  # resp.virtual_node.spec.backends #=> Array
1660
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.file.certificate_chain #=> String
1661
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.file.private_key #=> String
1662
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.sds.secret_name #=> String
1303
1663
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.enforce #=> Boolean
1304
1664
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.ports #=> Array
1305
1665
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.ports[0] #=> Integer
1666
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
1667
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
1306
1668
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1307
1669
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1308
1670
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.file.certificate_chain #=> String
1671
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.sds.secret_name #=> String
1309
1672
  # resp.virtual_node.spec.backends[0].virtual_service.virtual_service_name #=> String
1310
1673
  # resp.virtual_node.spec.listeners #=> Array
1674
+ # resp.virtual_node.spec.listeners[0].connection_pool.grpc.max_requests #=> Integer
1675
+ # resp.virtual_node.spec.listeners[0].connection_pool.http.max_connections #=> Integer
1676
+ # resp.virtual_node.spec.listeners[0].connection_pool.http.max_pending_requests #=> Integer
1677
+ # resp.virtual_node.spec.listeners[0].connection_pool.http2.max_requests #=> Integer
1678
+ # resp.virtual_node.spec.listeners[0].connection_pool.tcp.max_connections #=> Integer
1311
1679
  # resp.virtual_node.spec.listeners[0].health_check.healthy_threshold #=> Integer
1312
1680
  # resp.virtual_node.spec.listeners[0].health_check.interval_millis #=> Integer
1313
1681
  # resp.virtual_node.spec.listeners[0].health_check.path #=> String
1314
1682
  # resp.virtual_node.spec.listeners[0].health_check.port #=> Integer
1315
- # resp.virtual_node.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2", "tcp"
1683
+ # resp.virtual_node.spec.listeners[0].health_check.protocol #=> String, one of "http", "tcp", "http2", "grpc"
1316
1684
  # resp.virtual_node.spec.listeners[0].health_check.timeout_millis #=> Integer
1317
1685
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1686
+ # resp.virtual_node.spec.listeners[0].outlier_detection.base_ejection_duration.unit #=> String, one of "s", "ms"
1687
+ # resp.virtual_node.spec.listeners[0].outlier_detection.base_ejection_duration.value #=> Integer
1688
+ # resp.virtual_node.spec.listeners[0].outlier_detection.interval.unit #=> String, one of "s", "ms"
1689
+ # resp.virtual_node.spec.listeners[0].outlier_detection.interval.value #=> Integer
1690
+ # resp.virtual_node.spec.listeners[0].outlier_detection.max_ejection_percent #=> Integer
1691
+ # resp.virtual_node.spec.listeners[0].outlier_detection.max_server_errors #=> Integer
1318
1692
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
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"
1693
+ # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp", "http2", "grpc"
1694
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "s", "ms"
1321
1695
  # 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"
1696
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "s", "ms"
1323
1697
  # 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"
1698
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "s", "ms"
1325
1699
  # 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"
1700
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "s", "ms"
1327
1701
  # 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"
1702
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "s", "ms"
1329
1703
  # 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"
1704
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "s", "ms"
1331
1705
  # 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"
1706
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "s", "ms"
1333
1707
  # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
1334
1708
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1335
1709
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1336
1710
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
1337
- # resp.virtual_node.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
1711
+ # resp.virtual_node.spec.listeners[0].tls.certificate.sds.secret_name #=> String
1712
+ # resp.virtual_node.spec.listeners[0].tls.mode #=> String, one of "STRICT", "PERMISSIVE", "DISABLED"
1713
+ # resp.virtual_node.spec.listeners[0].tls.validation.subject_alternative_names.match.exact #=> Array
1714
+ # resp.virtual_node.spec.listeners[0].tls.validation.subject_alternative_names.match.exact[0] #=> String
1715
+ # resp.virtual_node.spec.listeners[0].tls.validation.trust.file.certificate_chain #=> String
1716
+ # resp.virtual_node.spec.listeners[0].tls.validation.trust.sds.secret_name #=> String
1338
1717
  # resp.virtual_node.spec.logging.access_log.file.path #=> String
1339
1718
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.attributes #=> Array
1340
1719
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.attributes[0].key #=> String
@@ -1342,7 +1721,8 @@ module Aws::AppMesh
1342
1721
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.namespace_name #=> String
1343
1722
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.service_name #=> String
1344
1723
  # resp.virtual_node.spec.service_discovery.dns.hostname #=> String
1345
- # resp.virtual_node.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1724
+ # resp.virtual_node.spec.service_discovery.dns.response_type #=> String, one of "LOADBALANCER", "ENDPOINTS"
1725
+ # resp.virtual_node.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
1346
1726
  # resp.virtual_node.virtual_node_name #=> String
1347
1727
  #
1348
1728
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualNode AWS API Documentation
@@ -1419,7 +1799,7 @@ module Aws::AppMesh
1419
1799
  # {
1420
1800
  # port_mapping: { # required
1421
1801
  # port: 1, # required
1422
- # protocol: "grpc", # required, accepts grpc, http, http2, tcp
1802
+ # protocol: "http", # required, accepts http, tcp, http2, grpc
1423
1803
  # },
1424
1804
  # },
1425
1805
  # ],
@@ -1427,7 +1807,7 @@ module Aws::AppMesh
1427
1807
  # tags: [
1428
1808
  # {
1429
1809
  # key: "TagKey", # required
1430
- # value: "TagValue",
1810
+ # value: "TagValue", # required
1431
1811
  # },
1432
1812
  # ],
1433
1813
  # virtual_router_name: "ResourceName", # required
@@ -1445,8 +1825,8 @@ module Aws::AppMesh
1445
1825
  # resp.virtual_router.metadata.version #=> Integer
1446
1826
  # resp.virtual_router.spec.listeners #=> Array
1447
1827
  # resp.virtual_router.spec.listeners[0].port_mapping.port #=> Integer
1448
- # resp.virtual_router.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
1449
- # resp.virtual_router.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1828
+ # resp.virtual_router.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp", "http2", "grpc"
1829
+ # resp.virtual_router.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
1450
1830
  # resp.virtual_router.virtual_router_name #=> String
1451
1831
  #
1452
1832
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualRouter AWS API Documentation
@@ -1532,7 +1912,7 @@ module Aws::AppMesh
1532
1912
  # tags: [
1533
1913
  # {
1534
1914
  # key: "TagKey", # required
1535
- # value: "TagValue",
1915
+ # value: "TagValue", # required
1536
1916
  # },
1537
1917
  # ],
1538
1918
  # virtual_service_name: "ServiceName", # required
@@ -1550,7 +1930,7 @@ module Aws::AppMesh
1550
1930
  # resp.virtual_service.metadata.version #=> Integer
1551
1931
  # resp.virtual_service.spec.provider.virtual_node.virtual_node_name #=> String
1552
1932
  # resp.virtual_service.spec.provider.virtual_router.virtual_router_name #=> String
1553
- # resp.virtual_service.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
1933
+ # resp.virtual_service.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
1554
1934
  # resp.virtual_service.virtual_service_name #=> String
1555
1935
  #
1556
1936
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/CreateVirtualService AWS API Documentation
@@ -1607,13 +1987,68 @@ module Aws::AppMesh
1607
1987
  # resp.gateway_route.metadata.resource_owner #=> String
1608
1988
  # resp.gateway_route.metadata.uid #=> String
1609
1989
  # resp.gateway_route.metadata.version #=> Integer
1990
+ # resp.gateway_route.spec.grpc_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
1610
1991
  # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
1992
+ # resp.gateway_route.spec.grpc_route.match.hostname.exact #=> String
1993
+ # resp.gateway_route.spec.grpc_route.match.hostname.suffix #=> String
1994
+ # resp.gateway_route.spec.grpc_route.match.metadata #=> Array
1995
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].invert #=> Boolean
1996
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.exact #=> String
1997
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.prefix #=> String
1998
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.range.end #=> Integer
1999
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.range.start #=> Integer
2000
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.regex #=> String
2001
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.suffix #=> String
2002
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].name #=> String
1611
2003
  # resp.gateway_route.spec.grpc_route.match.service_name #=> String
2004
+ # resp.gateway_route.spec.http2_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
2005
+ # resp.gateway_route.spec.http2_route.action.rewrite.path.exact #=> String
2006
+ # resp.gateway_route.spec.http2_route.action.rewrite.prefix.default_prefix #=> String, one of "ENABLED", "DISABLED"
2007
+ # resp.gateway_route.spec.http2_route.action.rewrite.prefix.value #=> String
1612
2008
  # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
2009
+ # resp.gateway_route.spec.http2_route.match.headers #=> Array
2010
+ # resp.gateway_route.spec.http2_route.match.headers[0].invert #=> Boolean
2011
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.exact #=> String
2012
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.prefix #=> String
2013
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.range.end #=> Integer
2014
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.range.start #=> Integer
2015
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.regex #=> String
2016
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.suffix #=> String
2017
+ # resp.gateway_route.spec.http2_route.match.headers[0].name #=> String
2018
+ # resp.gateway_route.spec.http2_route.match.hostname.exact #=> String
2019
+ # resp.gateway_route.spec.http2_route.match.hostname.suffix #=> String
2020
+ # resp.gateway_route.spec.http2_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
2021
+ # resp.gateway_route.spec.http2_route.match.path.exact #=> String
2022
+ # resp.gateway_route.spec.http2_route.match.path.regex #=> String
1613
2023
  # resp.gateway_route.spec.http2_route.match.prefix #=> String
2024
+ # resp.gateway_route.spec.http2_route.match.query_parameters #=> Array
2025
+ # resp.gateway_route.spec.http2_route.match.query_parameters[0].match.exact #=> String
2026
+ # resp.gateway_route.spec.http2_route.match.query_parameters[0].name #=> String
2027
+ # resp.gateway_route.spec.http_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
2028
+ # resp.gateway_route.spec.http_route.action.rewrite.path.exact #=> String
2029
+ # resp.gateway_route.spec.http_route.action.rewrite.prefix.default_prefix #=> String, one of "ENABLED", "DISABLED"
2030
+ # resp.gateway_route.spec.http_route.action.rewrite.prefix.value #=> String
1614
2031
  # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
2032
+ # resp.gateway_route.spec.http_route.match.headers #=> Array
2033
+ # resp.gateway_route.spec.http_route.match.headers[0].invert #=> Boolean
2034
+ # resp.gateway_route.spec.http_route.match.headers[0].match.exact #=> String
2035
+ # resp.gateway_route.spec.http_route.match.headers[0].match.prefix #=> String
2036
+ # resp.gateway_route.spec.http_route.match.headers[0].match.range.end #=> Integer
2037
+ # resp.gateway_route.spec.http_route.match.headers[0].match.range.start #=> Integer
2038
+ # resp.gateway_route.spec.http_route.match.headers[0].match.regex #=> String
2039
+ # resp.gateway_route.spec.http_route.match.headers[0].match.suffix #=> String
2040
+ # resp.gateway_route.spec.http_route.match.headers[0].name #=> String
2041
+ # resp.gateway_route.spec.http_route.match.hostname.exact #=> String
2042
+ # resp.gateway_route.spec.http_route.match.hostname.suffix #=> String
2043
+ # resp.gateway_route.spec.http_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
2044
+ # resp.gateway_route.spec.http_route.match.path.exact #=> String
2045
+ # resp.gateway_route.spec.http_route.match.path.regex #=> String
1615
2046
  # resp.gateway_route.spec.http_route.match.prefix #=> String
1616
- # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2047
+ # resp.gateway_route.spec.http_route.match.query_parameters #=> Array
2048
+ # resp.gateway_route.spec.http_route.match.query_parameters[0].match.exact #=> String
2049
+ # resp.gateway_route.spec.http_route.match.query_parameters[0].name #=> String
2050
+ # resp.gateway_route.spec.priority #=> Integer
2051
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
1617
2052
  # resp.gateway_route.virtual_gateway_name #=> String
1618
2053
  #
1619
2054
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteGatewayRoute AWS API Documentation
@@ -1655,7 +2090,7 @@ module Aws::AppMesh
1655
2090
  # resp.mesh.metadata.uid #=> String
1656
2091
  # resp.mesh.metadata.version #=> Integer
1657
2092
  # resp.mesh.spec.egress_filter.type #=> String, one of "ALLOW_ALL", "DROP_ALL"
1658
- # resp.mesh.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2093
+ # resp.mesh.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
1659
2094
  #
1660
2095
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteMesh AWS API Documentation
1661
2096
  #
@@ -1730,13 +2165,13 @@ module Aws::AppMesh
1730
2165
  # resp.route.spec.grpc_route.retry_policy.http_retry_events #=> Array
1731
2166
  # resp.route.spec.grpc_route.retry_policy.http_retry_events[0] #=> String
1732
2167
  # resp.route.spec.grpc_route.retry_policy.max_retries #=> Integer
1733
- # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
2168
+ # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
1734
2169
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
1735
2170
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
1736
2171
  # 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"
2172
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "s", "ms"
1738
2173
  # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
1739
- # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
2174
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "s", "ms"
1740
2175
  # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
1741
2176
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
1742
2177
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
@@ -1750,19 +2185,24 @@ module Aws::AppMesh
1750
2185
  # resp.route.spec.http2_route.match.headers[0].match.regex #=> String
1751
2186
  # resp.route.spec.http2_route.match.headers[0].match.suffix #=> String
1752
2187
  # resp.route.spec.http2_route.match.headers[0].name #=> String
1753
- # resp.route.spec.http2_route.match.method #=> String, one of "CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"
2188
+ # resp.route.spec.http2_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
2189
+ # resp.route.spec.http2_route.match.path.exact #=> String
2190
+ # resp.route.spec.http2_route.match.path.regex #=> String
1754
2191
  # resp.route.spec.http2_route.match.prefix #=> String
2192
+ # resp.route.spec.http2_route.match.query_parameters #=> Array
2193
+ # resp.route.spec.http2_route.match.query_parameters[0].match.exact #=> String
2194
+ # resp.route.spec.http2_route.match.query_parameters[0].name #=> String
1755
2195
  # resp.route.spec.http2_route.match.scheme #=> String, one of "http", "https"
1756
2196
  # resp.route.spec.http2_route.retry_policy.http_retry_events #=> Array
1757
2197
  # resp.route.spec.http2_route.retry_policy.http_retry_events[0] #=> String
1758
2198
  # resp.route.spec.http2_route.retry_policy.max_retries #=> Integer
1759
- # resp.route.spec.http2_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
2199
+ # resp.route.spec.http2_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
1760
2200
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
1761
2201
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
1762
2202
  # 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"
2203
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "s", "ms"
1764
2204
  # resp.route.spec.http2_route.timeout.idle.value #=> Integer
1765
- # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
2205
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "s", "ms"
1766
2206
  # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
1767
2207
  # resp.route.spec.http_route.action.weighted_targets #=> Array
1768
2208
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
@@ -1776,27 +2216,32 @@ module Aws::AppMesh
1776
2216
  # resp.route.spec.http_route.match.headers[0].match.regex #=> String
1777
2217
  # resp.route.spec.http_route.match.headers[0].match.suffix #=> String
1778
2218
  # resp.route.spec.http_route.match.headers[0].name #=> String
1779
- # resp.route.spec.http_route.match.method #=> String, one of "CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"
2219
+ # resp.route.spec.http_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
2220
+ # resp.route.spec.http_route.match.path.exact #=> String
2221
+ # resp.route.spec.http_route.match.path.regex #=> String
1780
2222
  # resp.route.spec.http_route.match.prefix #=> String
2223
+ # resp.route.spec.http_route.match.query_parameters #=> Array
2224
+ # resp.route.spec.http_route.match.query_parameters[0].match.exact #=> String
2225
+ # resp.route.spec.http_route.match.query_parameters[0].name #=> String
1781
2226
  # resp.route.spec.http_route.match.scheme #=> String, one of "http", "https"
1782
2227
  # resp.route.spec.http_route.retry_policy.http_retry_events #=> Array
1783
2228
  # resp.route.spec.http_route.retry_policy.http_retry_events[0] #=> String
1784
2229
  # resp.route.spec.http_route.retry_policy.max_retries #=> Integer
1785
- # resp.route.spec.http_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
2230
+ # resp.route.spec.http_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
1786
2231
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
1787
2232
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
1788
2233
  # 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"
2234
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "s", "ms"
1790
2235
  # resp.route.spec.http_route.timeout.idle.value #=> Integer
1791
- # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
2236
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "s", "ms"
1792
2237
  # resp.route.spec.http_route.timeout.per_request.value #=> Integer
1793
2238
  # resp.route.spec.priority #=> Integer
1794
2239
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
1795
2240
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
1796
2241
  # 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"
2242
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "s", "ms"
1798
2243
  # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
1799
- # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2244
+ # resp.route.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
1800
2245
  # resp.route.virtual_router_name #=> String
1801
2246
  #
1802
2247
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteRoute AWS API Documentation
@@ -1849,28 +2294,43 @@ module Aws::AppMesh
1849
2294
  # resp.virtual_gateway.metadata.resource_owner #=> String
1850
2295
  # resp.virtual_gateway.metadata.uid #=> String
1851
2296
  # resp.virtual_gateway.metadata.version #=> Integer
2297
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.file.certificate_chain #=> String
2298
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.file.private_key #=> String
2299
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.sds.secret_name #=> String
1852
2300
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
1853
2301
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
1854
2302
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
2303
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
2304
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
1855
2305
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1856
2306
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1857
2307
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
2308
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.sds.secret_name #=> String
1858
2309
  # resp.virtual_gateway.spec.listeners #=> Array
2310
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.grpc.max_requests #=> Integer
2311
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http.max_connections #=> Integer
2312
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http.max_pending_requests #=> Integer
2313
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http2.max_requests #=> Integer
1859
2314
  # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
1860
2315
  # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
1861
2316
  # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
1862
2317
  # 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"
2318
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "http", "http2", "grpc"
1864
2319
  # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
1865
2320
  # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
1866
2321
  # 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"
2322
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "http2", "grpc"
1868
2323
  # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1869
2324
  # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1870
2325
  # 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"
2326
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.sds.secret_name #=> String
2327
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "STRICT", "PERMISSIVE", "DISABLED"
2328
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.subject_alternative_names.match.exact #=> Array
2329
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.subject_alternative_names.match.exact[0] #=> String
2330
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.trust.file.certificate_chain #=> String
2331
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.trust.sds.secret_name #=> String
1872
2332
  # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
1873
- # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2333
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
1874
2334
  # resp.virtual_gateway.virtual_gateway_name #=> String
1875
2335
  #
1876
2336
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualGateway AWS API Documentation
@@ -1925,48 +2385,76 @@ module Aws::AppMesh
1925
2385
  # resp.virtual_node.metadata.resource_owner #=> String
1926
2386
  # resp.virtual_node.metadata.uid #=> String
1927
2387
  # resp.virtual_node.metadata.version #=> Integer
2388
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.file.certificate_chain #=> String
2389
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.file.private_key #=> String
2390
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.sds.secret_name #=> String
1928
2391
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
1929
2392
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.ports #=> Array
1930
2393
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
2394
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
2395
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
1931
2396
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1932
2397
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1933
2398
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
2399
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.sds.secret_name #=> String
1934
2400
  # resp.virtual_node.spec.backends #=> Array
2401
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.file.certificate_chain #=> String
2402
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.file.private_key #=> String
2403
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.sds.secret_name #=> String
1935
2404
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.enforce #=> Boolean
1936
2405
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.ports #=> Array
1937
2406
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.ports[0] #=> Integer
2407
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
2408
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
1938
2409
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
1939
2410
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
1940
2411
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.file.certificate_chain #=> String
2412
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.sds.secret_name #=> String
1941
2413
  # resp.virtual_node.spec.backends[0].virtual_service.virtual_service_name #=> String
1942
2414
  # resp.virtual_node.spec.listeners #=> Array
2415
+ # resp.virtual_node.spec.listeners[0].connection_pool.grpc.max_requests #=> Integer
2416
+ # resp.virtual_node.spec.listeners[0].connection_pool.http.max_connections #=> Integer
2417
+ # resp.virtual_node.spec.listeners[0].connection_pool.http.max_pending_requests #=> Integer
2418
+ # resp.virtual_node.spec.listeners[0].connection_pool.http2.max_requests #=> Integer
2419
+ # resp.virtual_node.spec.listeners[0].connection_pool.tcp.max_connections #=> Integer
1943
2420
  # resp.virtual_node.spec.listeners[0].health_check.healthy_threshold #=> Integer
1944
2421
  # resp.virtual_node.spec.listeners[0].health_check.interval_millis #=> Integer
1945
2422
  # resp.virtual_node.spec.listeners[0].health_check.path #=> String
1946
2423
  # resp.virtual_node.spec.listeners[0].health_check.port #=> Integer
1947
- # resp.virtual_node.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2", "tcp"
2424
+ # resp.virtual_node.spec.listeners[0].health_check.protocol #=> String, one of "http", "tcp", "http2", "grpc"
1948
2425
  # resp.virtual_node.spec.listeners[0].health_check.timeout_millis #=> Integer
1949
2426
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
2427
+ # resp.virtual_node.spec.listeners[0].outlier_detection.base_ejection_duration.unit #=> String, one of "s", "ms"
2428
+ # resp.virtual_node.spec.listeners[0].outlier_detection.base_ejection_duration.value #=> Integer
2429
+ # resp.virtual_node.spec.listeners[0].outlier_detection.interval.unit #=> String, one of "s", "ms"
2430
+ # resp.virtual_node.spec.listeners[0].outlier_detection.interval.value #=> Integer
2431
+ # resp.virtual_node.spec.listeners[0].outlier_detection.max_ejection_percent #=> Integer
2432
+ # resp.virtual_node.spec.listeners[0].outlier_detection.max_server_errors #=> Integer
1950
2433
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
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"
2434
+ # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp", "http2", "grpc"
2435
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "s", "ms"
1953
2436
  # 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"
2437
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "s", "ms"
1955
2438
  # 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"
2439
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "s", "ms"
1957
2440
  # 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"
2441
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "s", "ms"
1959
2442
  # 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"
2443
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "s", "ms"
1961
2444
  # 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"
2445
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "s", "ms"
1963
2446
  # 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"
2447
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "s", "ms"
1965
2448
  # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
1966
2449
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
1967
2450
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
1968
2451
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
1969
- # resp.virtual_node.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
2452
+ # resp.virtual_node.spec.listeners[0].tls.certificate.sds.secret_name #=> String
2453
+ # resp.virtual_node.spec.listeners[0].tls.mode #=> String, one of "STRICT", "PERMISSIVE", "DISABLED"
2454
+ # resp.virtual_node.spec.listeners[0].tls.validation.subject_alternative_names.match.exact #=> Array
2455
+ # resp.virtual_node.spec.listeners[0].tls.validation.subject_alternative_names.match.exact[0] #=> String
2456
+ # resp.virtual_node.spec.listeners[0].tls.validation.trust.file.certificate_chain #=> String
2457
+ # resp.virtual_node.spec.listeners[0].tls.validation.trust.sds.secret_name #=> String
1970
2458
  # resp.virtual_node.spec.logging.access_log.file.path #=> String
1971
2459
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.attributes #=> Array
1972
2460
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.attributes[0].key #=> String
@@ -1974,7 +2462,8 @@ module Aws::AppMesh
1974
2462
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.namespace_name #=> String
1975
2463
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.service_name #=> String
1976
2464
  # resp.virtual_node.spec.service_discovery.dns.hostname #=> String
1977
- # resp.virtual_node.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2465
+ # resp.virtual_node.spec.service_discovery.dns.response_type #=> String, one of "LOADBALANCER", "ENDPOINTS"
2466
+ # resp.virtual_node.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
1978
2467
  # resp.virtual_node.virtual_node_name #=> String
1979
2468
  #
1980
2469
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualNode AWS API Documentation
@@ -2031,8 +2520,8 @@ module Aws::AppMesh
2031
2520
  # resp.virtual_router.metadata.version #=> Integer
2032
2521
  # resp.virtual_router.spec.listeners #=> Array
2033
2522
  # resp.virtual_router.spec.listeners[0].port_mapping.port #=> Integer
2034
- # resp.virtual_router.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
2035
- # resp.virtual_router.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2523
+ # resp.virtual_router.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp", "http2", "grpc"
2524
+ # resp.virtual_router.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
2036
2525
  # resp.virtual_router.virtual_router_name #=> String
2037
2526
  #
2038
2527
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualRouter AWS API Documentation
@@ -2086,7 +2575,7 @@ module Aws::AppMesh
2086
2575
  # resp.virtual_service.metadata.version #=> Integer
2087
2576
  # resp.virtual_service.spec.provider.virtual_node.virtual_node_name #=> String
2088
2577
  # resp.virtual_service.spec.provider.virtual_router.virtual_router_name #=> String
2089
- # resp.virtual_service.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2578
+ # resp.virtual_service.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
2090
2579
  # resp.virtual_service.virtual_service_name #=> String
2091
2580
  #
2092
2581
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DeleteVirtualService AWS API Documentation
@@ -2144,13 +2633,68 @@ module Aws::AppMesh
2144
2633
  # resp.gateway_route.metadata.resource_owner #=> String
2145
2634
  # resp.gateway_route.metadata.uid #=> String
2146
2635
  # resp.gateway_route.metadata.version #=> Integer
2636
+ # resp.gateway_route.spec.grpc_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
2147
2637
  # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
2638
+ # resp.gateway_route.spec.grpc_route.match.hostname.exact #=> String
2639
+ # resp.gateway_route.spec.grpc_route.match.hostname.suffix #=> String
2640
+ # resp.gateway_route.spec.grpc_route.match.metadata #=> Array
2641
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].invert #=> Boolean
2642
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.exact #=> String
2643
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.prefix #=> String
2644
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.range.end #=> Integer
2645
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.range.start #=> Integer
2646
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.regex #=> String
2647
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.suffix #=> String
2648
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].name #=> String
2148
2649
  # resp.gateway_route.spec.grpc_route.match.service_name #=> String
2650
+ # resp.gateway_route.spec.http2_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
2651
+ # resp.gateway_route.spec.http2_route.action.rewrite.path.exact #=> String
2652
+ # resp.gateway_route.spec.http2_route.action.rewrite.prefix.default_prefix #=> String, one of "ENABLED", "DISABLED"
2653
+ # resp.gateway_route.spec.http2_route.action.rewrite.prefix.value #=> String
2149
2654
  # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
2655
+ # resp.gateway_route.spec.http2_route.match.headers #=> Array
2656
+ # resp.gateway_route.spec.http2_route.match.headers[0].invert #=> Boolean
2657
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.exact #=> String
2658
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.prefix #=> String
2659
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.range.end #=> Integer
2660
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.range.start #=> Integer
2661
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.regex #=> String
2662
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.suffix #=> String
2663
+ # resp.gateway_route.spec.http2_route.match.headers[0].name #=> String
2664
+ # resp.gateway_route.spec.http2_route.match.hostname.exact #=> String
2665
+ # resp.gateway_route.spec.http2_route.match.hostname.suffix #=> String
2666
+ # resp.gateway_route.spec.http2_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
2667
+ # resp.gateway_route.spec.http2_route.match.path.exact #=> String
2668
+ # resp.gateway_route.spec.http2_route.match.path.regex #=> String
2150
2669
  # resp.gateway_route.spec.http2_route.match.prefix #=> String
2670
+ # resp.gateway_route.spec.http2_route.match.query_parameters #=> Array
2671
+ # resp.gateway_route.spec.http2_route.match.query_parameters[0].match.exact #=> String
2672
+ # resp.gateway_route.spec.http2_route.match.query_parameters[0].name #=> String
2673
+ # resp.gateway_route.spec.http_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
2674
+ # resp.gateway_route.spec.http_route.action.rewrite.path.exact #=> String
2675
+ # resp.gateway_route.spec.http_route.action.rewrite.prefix.default_prefix #=> String, one of "ENABLED", "DISABLED"
2676
+ # resp.gateway_route.spec.http_route.action.rewrite.prefix.value #=> String
2151
2677
  # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
2678
+ # resp.gateway_route.spec.http_route.match.headers #=> Array
2679
+ # resp.gateway_route.spec.http_route.match.headers[0].invert #=> Boolean
2680
+ # resp.gateway_route.spec.http_route.match.headers[0].match.exact #=> String
2681
+ # resp.gateway_route.spec.http_route.match.headers[0].match.prefix #=> String
2682
+ # resp.gateway_route.spec.http_route.match.headers[0].match.range.end #=> Integer
2683
+ # resp.gateway_route.spec.http_route.match.headers[0].match.range.start #=> Integer
2684
+ # resp.gateway_route.spec.http_route.match.headers[0].match.regex #=> String
2685
+ # resp.gateway_route.spec.http_route.match.headers[0].match.suffix #=> String
2686
+ # resp.gateway_route.spec.http_route.match.headers[0].name #=> String
2687
+ # resp.gateway_route.spec.http_route.match.hostname.exact #=> String
2688
+ # resp.gateway_route.spec.http_route.match.hostname.suffix #=> String
2689
+ # resp.gateway_route.spec.http_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
2690
+ # resp.gateway_route.spec.http_route.match.path.exact #=> String
2691
+ # resp.gateway_route.spec.http_route.match.path.regex #=> String
2152
2692
  # resp.gateway_route.spec.http_route.match.prefix #=> String
2153
- # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2693
+ # resp.gateway_route.spec.http_route.match.query_parameters #=> Array
2694
+ # resp.gateway_route.spec.http_route.match.query_parameters[0].match.exact #=> String
2695
+ # resp.gateway_route.spec.http_route.match.query_parameters[0].name #=> String
2696
+ # resp.gateway_route.spec.priority #=> Integer
2697
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
2154
2698
  # resp.gateway_route.virtual_gateway_name #=> String
2155
2699
  #
2156
2700
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeGatewayRoute AWS API Documentation
@@ -2199,7 +2743,7 @@ module Aws::AppMesh
2199
2743
  # resp.mesh.metadata.uid #=> String
2200
2744
  # resp.mesh.metadata.version #=> Integer
2201
2745
  # resp.mesh.spec.egress_filter.type #=> String, one of "ALLOW_ALL", "DROP_ALL"
2202
- # resp.mesh.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2746
+ # resp.mesh.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
2203
2747
  #
2204
2748
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeMesh AWS API Documentation
2205
2749
  #
@@ -2274,13 +2818,13 @@ module Aws::AppMesh
2274
2818
  # resp.route.spec.grpc_route.retry_policy.http_retry_events #=> Array
2275
2819
  # resp.route.spec.grpc_route.retry_policy.http_retry_events[0] #=> String
2276
2820
  # resp.route.spec.grpc_route.retry_policy.max_retries #=> Integer
2277
- # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
2821
+ # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
2278
2822
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
2279
2823
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
2280
2824
  # 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"
2825
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "s", "ms"
2282
2826
  # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
2283
- # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
2827
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "s", "ms"
2284
2828
  # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
2285
2829
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
2286
2830
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
@@ -2294,19 +2838,24 @@ module Aws::AppMesh
2294
2838
  # resp.route.spec.http2_route.match.headers[0].match.regex #=> String
2295
2839
  # resp.route.spec.http2_route.match.headers[0].match.suffix #=> String
2296
2840
  # resp.route.spec.http2_route.match.headers[0].name #=> String
2297
- # resp.route.spec.http2_route.match.method #=> String, one of "CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"
2841
+ # resp.route.spec.http2_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
2842
+ # resp.route.spec.http2_route.match.path.exact #=> String
2843
+ # resp.route.spec.http2_route.match.path.regex #=> String
2298
2844
  # resp.route.spec.http2_route.match.prefix #=> String
2845
+ # resp.route.spec.http2_route.match.query_parameters #=> Array
2846
+ # resp.route.spec.http2_route.match.query_parameters[0].match.exact #=> String
2847
+ # resp.route.spec.http2_route.match.query_parameters[0].name #=> String
2299
2848
  # resp.route.spec.http2_route.match.scheme #=> String, one of "http", "https"
2300
2849
  # resp.route.spec.http2_route.retry_policy.http_retry_events #=> Array
2301
2850
  # resp.route.spec.http2_route.retry_policy.http_retry_events[0] #=> String
2302
2851
  # resp.route.spec.http2_route.retry_policy.max_retries #=> Integer
2303
- # resp.route.spec.http2_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
2852
+ # resp.route.spec.http2_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
2304
2853
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
2305
2854
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
2306
2855
  # 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"
2856
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "s", "ms"
2308
2857
  # resp.route.spec.http2_route.timeout.idle.value #=> Integer
2309
- # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
2858
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "s", "ms"
2310
2859
  # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
2311
2860
  # resp.route.spec.http_route.action.weighted_targets #=> Array
2312
2861
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
@@ -2320,27 +2869,32 @@ module Aws::AppMesh
2320
2869
  # resp.route.spec.http_route.match.headers[0].match.regex #=> String
2321
2870
  # resp.route.spec.http_route.match.headers[0].match.suffix #=> String
2322
2871
  # resp.route.spec.http_route.match.headers[0].name #=> String
2323
- # resp.route.spec.http_route.match.method #=> String, one of "CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"
2872
+ # resp.route.spec.http_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
2873
+ # resp.route.spec.http_route.match.path.exact #=> String
2874
+ # resp.route.spec.http_route.match.path.regex #=> String
2324
2875
  # resp.route.spec.http_route.match.prefix #=> String
2876
+ # resp.route.spec.http_route.match.query_parameters #=> Array
2877
+ # resp.route.spec.http_route.match.query_parameters[0].match.exact #=> String
2878
+ # resp.route.spec.http_route.match.query_parameters[0].name #=> String
2325
2879
  # resp.route.spec.http_route.match.scheme #=> String, one of "http", "https"
2326
2880
  # resp.route.spec.http_route.retry_policy.http_retry_events #=> Array
2327
2881
  # resp.route.spec.http_route.retry_policy.http_retry_events[0] #=> String
2328
2882
  # resp.route.spec.http_route.retry_policy.max_retries #=> Integer
2329
- # resp.route.spec.http_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
2883
+ # resp.route.spec.http_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
2330
2884
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
2331
2885
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
2332
2886
  # 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"
2887
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "s", "ms"
2334
2888
  # resp.route.spec.http_route.timeout.idle.value #=> Integer
2335
- # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
2889
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "s", "ms"
2336
2890
  # resp.route.spec.http_route.timeout.per_request.value #=> Integer
2337
2891
  # resp.route.spec.priority #=> Integer
2338
2892
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
2339
2893
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
2340
2894
  # 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"
2895
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "s", "ms"
2342
2896
  # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
2343
- # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2897
+ # resp.route.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
2344
2898
  # resp.route.virtual_router_name #=> String
2345
2899
  #
2346
2900
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeRoute AWS API Documentation
@@ -2392,28 +2946,43 @@ module Aws::AppMesh
2392
2946
  # resp.virtual_gateway.metadata.resource_owner #=> String
2393
2947
  # resp.virtual_gateway.metadata.uid #=> String
2394
2948
  # resp.virtual_gateway.metadata.version #=> Integer
2949
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.file.certificate_chain #=> String
2950
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.file.private_key #=> String
2951
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.sds.secret_name #=> String
2395
2952
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
2396
2953
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
2397
2954
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
2955
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
2956
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
2398
2957
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
2399
2958
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
2400
2959
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
2960
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.sds.secret_name #=> String
2401
2961
  # resp.virtual_gateway.spec.listeners #=> Array
2962
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.grpc.max_requests #=> Integer
2963
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http.max_connections #=> Integer
2964
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http.max_pending_requests #=> Integer
2965
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http2.max_requests #=> Integer
2402
2966
  # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
2403
2967
  # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
2404
2968
  # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
2405
2969
  # 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"
2970
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "http", "http2", "grpc"
2407
2971
  # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
2408
2972
  # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
2409
2973
  # 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"
2974
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "http2", "grpc"
2411
2975
  # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
2412
2976
  # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
2413
2977
  # 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"
2978
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.sds.secret_name #=> String
2979
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "STRICT", "PERMISSIVE", "DISABLED"
2980
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.subject_alternative_names.match.exact #=> Array
2981
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.subject_alternative_names.match.exact[0] #=> String
2982
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.trust.file.certificate_chain #=> String
2983
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.trust.sds.secret_name #=> String
2415
2984
  # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
2416
- # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
2985
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
2417
2986
  # resp.virtual_gateway.virtual_gateway_name #=> String
2418
2987
  #
2419
2988
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualGateway AWS API Documentation
@@ -2465,48 +3034,76 @@ module Aws::AppMesh
2465
3034
  # resp.virtual_node.metadata.resource_owner #=> String
2466
3035
  # resp.virtual_node.metadata.uid #=> String
2467
3036
  # resp.virtual_node.metadata.version #=> Integer
3037
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.file.certificate_chain #=> String
3038
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.file.private_key #=> String
3039
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.sds.secret_name #=> String
2468
3040
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
2469
3041
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.ports #=> Array
2470
3042
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
3043
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
3044
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
2471
3045
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
2472
3046
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
2473
3047
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
3048
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.sds.secret_name #=> String
2474
3049
  # resp.virtual_node.spec.backends #=> Array
3050
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.file.certificate_chain #=> String
3051
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.file.private_key #=> String
3052
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.sds.secret_name #=> String
2475
3053
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.enforce #=> Boolean
2476
3054
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.ports #=> Array
2477
3055
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.ports[0] #=> Integer
3056
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
3057
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
2478
3058
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
2479
3059
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
2480
3060
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.file.certificate_chain #=> String
3061
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.sds.secret_name #=> String
2481
3062
  # resp.virtual_node.spec.backends[0].virtual_service.virtual_service_name #=> String
2482
3063
  # resp.virtual_node.spec.listeners #=> Array
3064
+ # resp.virtual_node.spec.listeners[0].connection_pool.grpc.max_requests #=> Integer
3065
+ # resp.virtual_node.spec.listeners[0].connection_pool.http.max_connections #=> Integer
3066
+ # resp.virtual_node.spec.listeners[0].connection_pool.http.max_pending_requests #=> Integer
3067
+ # resp.virtual_node.spec.listeners[0].connection_pool.http2.max_requests #=> Integer
3068
+ # resp.virtual_node.spec.listeners[0].connection_pool.tcp.max_connections #=> Integer
2483
3069
  # resp.virtual_node.spec.listeners[0].health_check.healthy_threshold #=> Integer
2484
3070
  # resp.virtual_node.spec.listeners[0].health_check.interval_millis #=> Integer
2485
3071
  # resp.virtual_node.spec.listeners[0].health_check.path #=> String
2486
3072
  # resp.virtual_node.spec.listeners[0].health_check.port #=> Integer
2487
- # resp.virtual_node.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2", "tcp"
3073
+ # resp.virtual_node.spec.listeners[0].health_check.protocol #=> String, one of "http", "tcp", "http2", "grpc"
2488
3074
  # resp.virtual_node.spec.listeners[0].health_check.timeout_millis #=> Integer
2489
3075
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
3076
+ # resp.virtual_node.spec.listeners[0].outlier_detection.base_ejection_duration.unit #=> String, one of "s", "ms"
3077
+ # resp.virtual_node.spec.listeners[0].outlier_detection.base_ejection_duration.value #=> Integer
3078
+ # resp.virtual_node.spec.listeners[0].outlier_detection.interval.unit #=> String, one of "s", "ms"
3079
+ # resp.virtual_node.spec.listeners[0].outlier_detection.interval.value #=> Integer
3080
+ # resp.virtual_node.spec.listeners[0].outlier_detection.max_ejection_percent #=> Integer
3081
+ # resp.virtual_node.spec.listeners[0].outlier_detection.max_server_errors #=> Integer
2490
3082
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
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"
3083
+ # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp", "http2", "grpc"
3084
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "s", "ms"
2493
3085
  # 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"
3086
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "s", "ms"
2495
3087
  # 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"
3088
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "s", "ms"
2497
3089
  # 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"
3090
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "s", "ms"
2499
3091
  # 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"
3092
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "s", "ms"
2501
3093
  # 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"
3094
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "s", "ms"
2503
3095
  # 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"
3096
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "s", "ms"
2505
3097
  # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
2506
3098
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
2507
3099
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
2508
3100
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
2509
- # resp.virtual_node.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
3101
+ # resp.virtual_node.spec.listeners[0].tls.certificate.sds.secret_name #=> String
3102
+ # resp.virtual_node.spec.listeners[0].tls.mode #=> String, one of "STRICT", "PERMISSIVE", "DISABLED"
3103
+ # resp.virtual_node.spec.listeners[0].tls.validation.subject_alternative_names.match.exact #=> Array
3104
+ # resp.virtual_node.spec.listeners[0].tls.validation.subject_alternative_names.match.exact[0] #=> String
3105
+ # resp.virtual_node.spec.listeners[0].tls.validation.trust.file.certificate_chain #=> String
3106
+ # resp.virtual_node.spec.listeners[0].tls.validation.trust.sds.secret_name #=> String
2510
3107
  # resp.virtual_node.spec.logging.access_log.file.path #=> String
2511
3108
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.attributes #=> Array
2512
3109
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.attributes[0].key #=> String
@@ -2514,7 +3111,8 @@ module Aws::AppMesh
2514
3111
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.namespace_name #=> String
2515
3112
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.service_name #=> String
2516
3113
  # resp.virtual_node.spec.service_discovery.dns.hostname #=> String
2517
- # resp.virtual_node.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
3114
+ # resp.virtual_node.spec.service_discovery.dns.response_type #=> String, one of "LOADBALANCER", "ENDPOINTS"
3115
+ # resp.virtual_node.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
2518
3116
  # resp.virtual_node.virtual_node_name #=> String
2519
3117
  #
2520
3118
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualNode AWS API Documentation
@@ -2568,8 +3166,8 @@ module Aws::AppMesh
2568
3166
  # resp.virtual_router.metadata.version #=> Integer
2569
3167
  # resp.virtual_router.spec.listeners #=> Array
2570
3168
  # resp.virtual_router.spec.listeners[0].port_mapping.port #=> Integer
2571
- # resp.virtual_router.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
2572
- # resp.virtual_router.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
3169
+ # resp.virtual_router.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp", "http2", "grpc"
3170
+ # resp.virtual_router.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
2573
3171
  # resp.virtual_router.virtual_router_name #=> String
2574
3172
  #
2575
3173
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualRouter AWS API Documentation
@@ -2623,7 +3221,7 @@ module Aws::AppMesh
2623
3221
  # resp.virtual_service.metadata.version #=> Integer
2624
3222
  # resp.virtual_service.spec.provider.virtual_node.virtual_node_name #=> String
2625
3223
  # resp.virtual_service.spec.provider.virtual_router.virtual_router_name #=> String
2626
- # resp.virtual_service.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
3224
+ # resp.virtual_service.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
2627
3225
  # resp.virtual_service.virtual_service_name #=> String
2628
3226
  #
2629
3227
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/DescribeVirtualService AWS API Documentation
@@ -3194,7 +3792,7 @@ module Aws::AppMesh
3194
3792
  # tags: [ # required
3195
3793
  # {
3196
3794
  # key: "TagKey", # required
3197
- # value: "TagValue",
3795
+ # value: "TagValue", # required
3198
3796
  # },
3199
3797
  # ],
3200
3798
  # })
@@ -3283,6 +3881,11 @@ module Aws::AppMesh
3283
3881
  # spec: { # required
3284
3882
  # grpc_route: {
3285
3883
  # action: { # required
3884
+ # rewrite: {
3885
+ # hostname: {
3886
+ # default_target_hostname: "ENABLED", # accepts ENABLED, DISABLED
3887
+ # },
3888
+ # },
3286
3889
  # target: { # required
3287
3890
  # virtual_service: { # required
3288
3891
  # virtual_service_name: "ResourceName", # required
@@ -3290,11 +3893,43 @@ module Aws::AppMesh
3290
3893
  # },
3291
3894
  # },
3292
3895
  # match: { # required
3896
+ # hostname: {
3897
+ # exact: "ExactHostName",
3898
+ # suffix: "SuffixHostname",
3899
+ # },
3900
+ # metadata: [
3901
+ # {
3902
+ # invert: false,
3903
+ # match: {
3904
+ # exact: "HeaderMatch",
3905
+ # prefix: "HeaderMatch",
3906
+ # range: {
3907
+ # end: 1, # required
3908
+ # start: 1, # required
3909
+ # },
3910
+ # regex: "HeaderMatch",
3911
+ # suffix: "HeaderMatch",
3912
+ # },
3913
+ # name: "HeaderName", # required
3914
+ # },
3915
+ # ],
3293
3916
  # service_name: "ServiceName",
3294
3917
  # },
3295
3918
  # },
3296
3919
  # http2_route: {
3297
3920
  # action: { # required
3921
+ # rewrite: {
3922
+ # hostname: {
3923
+ # default_target_hostname: "ENABLED", # accepts ENABLED, DISABLED
3924
+ # },
3925
+ # path: {
3926
+ # exact: "HttpPathExact",
3927
+ # },
3928
+ # prefix: {
3929
+ # default_prefix: "ENABLED", # accepts ENABLED, DISABLED
3930
+ # value: "HttpGatewayRoutePrefix",
3931
+ # },
3932
+ # },
3298
3933
  # target: { # required
3299
3934
  # virtual_service: { # required
3300
3935
  # virtual_service_name: "ResourceName", # required
@@ -3302,11 +3937,56 @@ module Aws::AppMesh
3302
3937
  # },
3303
3938
  # },
3304
3939
  # match: { # required
3305
- # prefix: "String", # required
3940
+ # headers: [
3941
+ # {
3942
+ # invert: false,
3943
+ # match: {
3944
+ # exact: "HeaderMatch",
3945
+ # prefix: "HeaderMatch",
3946
+ # range: {
3947
+ # end: 1, # required
3948
+ # start: 1, # required
3949
+ # },
3950
+ # regex: "HeaderMatch",
3951
+ # suffix: "HeaderMatch",
3952
+ # },
3953
+ # name: "HeaderName", # required
3954
+ # },
3955
+ # ],
3956
+ # hostname: {
3957
+ # exact: "ExactHostName",
3958
+ # suffix: "SuffixHostname",
3959
+ # },
3960
+ # method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
3961
+ # path: {
3962
+ # exact: "HttpPathExact",
3963
+ # regex: "HttpPathRegex",
3964
+ # },
3965
+ # prefix: "String",
3966
+ # query_parameters: [
3967
+ # {
3968
+ # match: {
3969
+ # exact: "String",
3970
+ # },
3971
+ # name: "QueryParameterName", # required
3972
+ # },
3973
+ # ],
3306
3974
  # },
3307
3975
  # },
3308
3976
  # http_route: {
3309
3977
  # action: { # required
3978
+ # rewrite: {
3979
+ # hostname: {
3980
+ # default_target_hostname: "ENABLED", # accepts ENABLED, DISABLED
3981
+ # },
3982
+ # path: {
3983
+ # exact: "HttpPathExact",
3984
+ # },
3985
+ # prefix: {
3986
+ # default_prefix: "ENABLED", # accepts ENABLED, DISABLED
3987
+ # value: "HttpGatewayRoutePrefix",
3988
+ # },
3989
+ # },
3310
3990
  # target: { # required
3311
3991
  # virtual_service: { # required
3312
3992
  # virtual_service_name: "ResourceName", # required
@@ -3314,9 +3994,43 @@ module Aws::AppMesh
3314
3994
  # },
3315
3995
  # },
3316
3996
  # match: { # required
3317
- # prefix: "String", # required
3997
+ # headers: [
3998
+ # {
3999
+ # invert: false,
4000
+ # match: {
4001
+ # exact: "HeaderMatch",
4002
+ # prefix: "HeaderMatch",
4003
+ # range: {
4004
+ # end: 1, # required
4005
+ # start: 1, # required
4006
+ # },
4007
+ # regex: "HeaderMatch",
4008
+ # suffix: "HeaderMatch",
4009
+ # },
4010
+ # name: "HeaderName", # required
4011
+ # },
4012
+ # ],
4013
+ # hostname: {
4014
+ # exact: "ExactHostName",
4015
+ # suffix: "SuffixHostname",
4016
+ # },
4017
+ # method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
4018
+ # path: {
4019
+ # exact: "HttpPathExact",
4020
+ # regex: "HttpPathRegex",
4021
+ # },
4022
+ # prefix: "String",
4023
+ # query_parameters: [
4024
+ # {
4025
+ # match: {
4026
+ # exact: "String",
4027
+ # },
4028
+ # name: "QueryParameterName", # required
4029
+ # },
4030
+ # ],
3318
4031
  # },
3319
4032
  # },
4033
+ # priority: 1,
3320
4034
  # },
3321
4035
  # virtual_gateway_name: "ResourceName", # required
3322
4036
  # })
@@ -3332,13 +4046,68 @@ module Aws::AppMesh
3332
4046
  # resp.gateway_route.metadata.resource_owner #=> String
3333
4047
  # resp.gateway_route.metadata.uid #=> String
3334
4048
  # resp.gateway_route.metadata.version #=> Integer
4049
+ # resp.gateway_route.spec.grpc_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
3335
4050
  # resp.gateway_route.spec.grpc_route.action.target.virtual_service.virtual_service_name #=> String
4051
+ # resp.gateway_route.spec.grpc_route.match.hostname.exact #=> String
4052
+ # resp.gateway_route.spec.grpc_route.match.hostname.suffix #=> String
4053
+ # resp.gateway_route.spec.grpc_route.match.metadata #=> Array
4054
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].invert #=> Boolean
4055
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.exact #=> String
4056
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.prefix #=> String
4057
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.range.end #=> Integer
4058
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.range.start #=> Integer
4059
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.regex #=> String
4060
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].match.suffix #=> String
4061
+ # resp.gateway_route.spec.grpc_route.match.metadata[0].name #=> String
3336
4062
  # resp.gateway_route.spec.grpc_route.match.service_name #=> String
4063
+ # resp.gateway_route.spec.http2_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
4064
+ # resp.gateway_route.spec.http2_route.action.rewrite.path.exact #=> String
4065
+ # resp.gateway_route.spec.http2_route.action.rewrite.prefix.default_prefix #=> String, one of "ENABLED", "DISABLED"
4066
+ # resp.gateway_route.spec.http2_route.action.rewrite.prefix.value #=> String
3337
4067
  # resp.gateway_route.spec.http2_route.action.target.virtual_service.virtual_service_name #=> String
4068
+ # resp.gateway_route.spec.http2_route.match.headers #=> Array
4069
+ # resp.gateway_route.spec.http2_route.match.headers[0].invert #=> Boolean
4070
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.exact #=> String
4071
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.prefix #=> String
4072
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.range.end #=> Integer
4073
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.range.start #=> Integer
4074
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.regex #=> String
4075
+ # resp.gateway_route.spec.http2_route.match.headers[0].match.suffix #=> String
4076
+ # resp.gateway_route.spec.http2_route.match.headers[0].name #=> String
4077
+ # resp.gateway_route.spec.http2_route.match.hostname.exact #=> String
4078
+ # resp.gateway_route.spec.http2_route.match.hostname.suffix #=> String
4079
+ # resp.gateway_route.spec.http2_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
4080
+ # resp.gateway_route.spec.http2_route.match.path.exact #=> String
4081
+ # resp.gateway_route.spec.http2_route.match.path.regex #=> String
3338
4082
  # resp.gateway_route.spec.http2_route.match.prefix #=> String
4083
+ # resp.gateway_route.spec.http2_route.match.query_parameters #=> Array
4084
+ # resp.gateway_route.spec.http2_route.match.query_parameters[0].match.exact #=> String
4085
+ # resp.gateway_route.spec.http2_route.match.query_parameters[0].name #=> String
4086
+ # resp.gateway_route.spec.http_route.action.rewrite.hostname.default_target_hostname #=> String, one of "ENABLED", "DISABLED"
4087
+ # resp.gateway_route.spec.http_route.action.rewrite.path.exact #=> String
4088
+ # resp.gateway_route.spec.http_route.action.rewrite.prefix.default_prefix #=> String, one of "ENABLED", "DISABLED"
4089
+ # resp.gateway_route.spec.http_route.action.rewrite.prefix.value #=> String
3339
4090
  # resp.gateway_route.spec.http_route.action.target.virtual_service.virtual_service_name #=> String
4091
+ # resp.gateway_route.spec.http_route.match.headers #=> Array
4092
+ # resp.gateway_route.spec.http_route.match.headers[0].invert #=> Boolean
4093
+ # resp.gateway_route.spec.http_route.match.headers[0].match.exact #=> String
4094
+ # resp.gateway_route.spec.http_route.match.headers[0].match.prefix #=> String
4095
+ # resp.gateway_route.spec.http_route.match.headers[0].match.range.end #=> Integer
4096
+ # resp.gateway_route.spec.http_route.match.headers[0].match.range.start #=> Integer
4097
+ # resp.gateway_route.spec.http_route.match.headers[0].match.regex #=> String
4098
+ # resp.gateway_route.spec.http_route.match.headers[0].match.suffix #=> String
4099
+ # resp.gateway_route.spec.http_route.match.headers[0].name #=> String
4100
+ # resp.gateway_route.spec.http_route.match.hostname.exact #=> String
4101
+ # resp.gateway_route.spec.http_route.match.hostname.suffix #=> String
4102
+ # resp.gateway_route.spec.http_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
4103
+ # resp.gateway_route.spec.http_route.match.path.exact #=> String
4104
+ # resp.gateway_route.spec.http_route.match.path.regex #=> String
3340
4105
  # resp.gateway_route.spec.http_route.match.prefix #=> String
3341
- # resp.gateway_route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
4106
+ # resp.gateway_route.spec.http_route.match.query_parameters #=> Array
4107
+ # resp.gateway_route.spec.http_route.match.query_parameters[0].match.exact #=> String
4108
+ # resp.gateway_route.spec.http_route.match.query_parameters[0].name #=> String
4109
+ # resp.gateway_route.spec.priority #=> Integer
4110
+ # resp.gateway_route.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
3342
4111
  # resp.gateway_route.virtual_gateway_name #=> String
3343
4112
  #
3344
4113
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateGatewayRoute AWS API Documentation
@@ -3393,7 +4162,7 @@ module Aws::AppMesh
3393
4162
  # resp.mesh.metadata.uid #=> String
3394
4163
  # resp.mesh.metadata.version #=> Integer
3395
4164
  # resp.mesh.spec.egress_filter.type #=> String, one of "ALLOW_ALL", "DROP_ALL"
3396
- # resp.mesh.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
4165
+ # resp.mesh.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
3397
4166
  #
3398
4167
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateMesh AWS API Documentation
3399
4168
  #
@@ -3484,18 +4253,18 @@ module Aws::AppMesh
3484
4253
  # http_retry_events: ["HttpRetryPolicyEvent"],
3485
4254
  # max_retries: 1, # required
3486
4255
  # per_retry_timeout: { # required
3487
- # unit: "ms", # accepts ms, s
4256
+ # unit: "s", # accepts s, ms
3488
4257
  # value: 1,
3489
4258
  # },
3490
4259
  # tcp_retry_events: ["connection-error"], # accepts connection-error
3491
4260
  # },
3492
4261
  # timeout: {
3493
4262
  # idle: {
3494
- # unit: "ms", # accepts ms, s
4263
+ # unit: "s", # accepts s, ms
3495
4264
  # value: 1,
3496
4265
  # },
3497
4266
  # per_request: {
3498
- # unit: "ms", # accepts ms, s
4267
+ # unit: "s", # accepts s, ms
3499
4268
  # value: 1,
3500
4269
  # },
3501
4270
  # },
@@ -3526,26 +4295,38 @@ module Aws::AppMesh
3526
4295
  # name: "HeaderName", # required
3527
4296
  # },
3528
4297
  # ],
3529
- # method: "CONNECT", # accepts CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT, TRACE
3530
- # prefix: "String", # required
4298
+ # method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
4299
+ # path: {
4300
+ # exact: "HttpPathExact",
4301
+ # regex: "HttpPathRegex",
4302
+ # },
4303
+ # prefix: "String",
4304
+ # query_parameters: [
4305
+ # {
4306
+ # match: {
4307
+ # exact: "String",
4308
+ # },
4309
+ # name: "QueryParameterName", # required
4310
+ # },
4311
+ # ],
3531
4312
  # scheme: "http", # accepts http, https
3532
4313
  # },
3533
4314
  # retry_policy: {
3534
4315
  # http_retry_events: ["HttpRetryPolicyEvent"],
3535
4316
  # max_retries: 1, # required
3536
4317
  # per_retry_timeout: { # required
3537
- # unit: "ms", # accepts ms, s
4318
+ # unit: "s", # accepts s, ms
3538
4319
  # value: 1,
3539
4320
  # },
3540
4321
  # tcp_retry_events: ["connection-error"], # accepts connection-error
3541
4322
  # },
3542
4323
  # timeout: {
3543
4324
  # idle: {
3544
- # unit: "ms", # accepts ms, s
4325
+ # unit: "s", # accepts s, ms
3545
4326
  # value: 1,
3546
4327
  # },
3547
4328
  # per_request: {
3548
- # unit: "ms", # accepts ms, s
4329
+ # unit: "s", # accepts s, ms
3549
4330
  # value: 1,
3550
4331
  # },
3551
4332
  # },
@@ -3576,26 +4357,38 @@ module Aws::AppMesh
3576
4357
  # name: "HeaderName", # required
3577
4358
  # },
3578
4359
  # ],
3579
- # method: "CONNECT", # accepts CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT, TRACE
3580
- # prefix: "String", # required
4360
+ # method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
4361
+ # path: {
4362
+ # exact: "HttpPathExact",
4363
+ # regex: "HttpPathRegex",
4364
+ # },
4365
+ # prefix: "String",
4366
+ # query_parameters: [
4367
+ # {
4368
+ # match: {
4369
+ # exact: "String",
4370
+ # },
4371
+ # name: "QueryParameterName", # required
4372
+ # },
4373
+ # ],
3581
4374
  # scheme: "http", # accepts http, https
3582
4375
  # },
3583
4376
  # retry_policy: {
3584
4377
  # http_retry_events: ["HttpRetryPolicyEvent"],
3585
4378
  # max_retries: 1, # required
3586
4379
  # per_retry_timeout: { # required
3587
- # unit: "ms", # accepts ms, s
4380
+ # unit: "s", # accepts s, ms
3588
4381
  # value: 1,
3589
4382
  # },
3590
4383
  # tcp_retry_events: ["connection-error"], # accepts connection-error
3591
4384
  # },
3592
4385
  # timeout: {
3593
4386
  # idle: {
3594
- # unit: "ms", # accepts ms, s
4387
+ # unit: "s", # accepts s, ms
3595
4388
  # value: 1,
3596
4389
  # },
3597
4390
  # per_request: {
3598
- # unit: "ms", # accepts ms, s
4391
+ # unit: "s", # accepts s, ms
3599
4392
  # value: 1,
3600
4393
  # },
3601
4394
  # },
@@ -3612,7 +4405,7 @@ module Aws::AppMesh
3612
4405
  # },
3613
4406
  # timeout: {
3614
4407
  # idle: {
3615
- # unit: "ms", # accepts ms, s
4408
+ # unit: "s", # accepts s, ms
3616
4409
  # value: 1,
3617
4410
  # },
3618
4411
  # },
@@ -3651,13 +4444,13 @@ module Aws::AppMesh
3651
4444
  # resp.route.spec.grpc_route.retry_policy.http_retry_events #=> Array
3652
4445
  # resp.route.spec.grpc_route.retry_policy.http_retry_events[0] #=> String
3653
4446
  # resp.route.spec.grpc_route.retry_policy.max_retries #=> Integer
3654
- # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
4447
+ # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
3655
4448
  # resp.route.spec.grpc_route.retry_policy.per_retry_timeout.value #=> Integer
3656
4449
  # resp.route.spec.grpc_route.retry_policy.tcp_retry_events #=> Array
3657
4450
  # 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"
4451
+ # resp.route.spec.grpc_route.timeout.idle.unit #=> String, one of "s", "ms"
3659
4452
  # resp.route.spec.grpc_route.timeout.idle.value #=> Integer
3660
- # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "ms", "s"
4453
+ # resp.route.spec.grpc_route.timeout.per_request.unit #=> String, one of "s", "ms"
3661
4454
  # resp.route.spec.grpc_route.timeout.per_request.value #=> Integer
3662
4455
  # resp.route.spec.http2_route.action.weighted_targets #=> Array
3663
4456
  # resp.route.spec.http2_route.action.weighted_targets[0].virtual_node #=> String
@@ -3671,19 +4464,24 @@ module Aws::AppMesh
3671
4464
  # resp.route.spec.http2_route.match.headers[0].match.regex #=> String
3672
4465
  # resp.route.spec.http2_route.match.headers[0].match.suffix #=> String
3673
4466
  # resp.route.spec.http2_route.match.headers[0].name #=> String
3674
- # resp.route.spec.http2_route.match.method #=> String, one of "CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"
4467
+ # resp.route.spec.http2_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
4468
+ # resp.route.spec.http2_route.match.path.exact #=> String
4469
+ # resp.route.spec.http2_route.match.path.regex #=> String
3675
4470
  # resp.route.spec.http2_route.match.prefix #=> String
4471
+ # resp.route.spec.http2_route.match.query_parameters #=> Array
4472
+ # resp.route.spec.http2_route.match.query_parameters[0].match.exact #=> String
4473
+ # resp.route.spec.http2_route.match.query_parameters[0].name #=> String
3676
4474
  # resp.route.spec.http2_route.match.scheme #=> String, one of "http", "https"
3677
4475
  # resp.route.spec.http2_route.retry_policy.http_retry_events #=> Array
3678
4476
  # resp.route.spec.http2_route.retry_policy.http_retry_events[0] #=> String
3679
4477
  # resp.route.spec.http2_route.retry_policy.max_retries #=> Integer
3680
- # resp.route.spec.http2_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
4478
+ # resp.route.spec.http2_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
3681
4479
  # resp.route.spec.http2_route.retry_policy.per_retry_timeout.value #=> Integer
3682
4480
  # resp.route.spec.http2_route.retry_policy.tcp_retry_events #=> Array
3683
4481
  # 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"
4482
+ # resp.route.spec.http2_route.timeout.idle.unit #=> String, one of "s", "ms"
3685
4483
  # resp.route.spec.http2_route.timeout.idle.value #=> Integer
3686
- # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "ms", "s"
4484
+ # resp.route.spec.http2_route.timeout.per_request.unit #=> String, one of "s", "ms"
3687
4485
  # resp.route.spec.http2_route.timeout.per_request.value #=> Integer
3688
4486
  # resp.route.spec.http_route.action.weighted_targets #=> Array
3689
4487
  # resp.route.spec.http_route.action.weighted_targets[0].virtual_node #=> String
@@ -3697,27 +4495,32 @@ module Aws::AppMesh
3697
4495
  # resp.route.spec.http_route.match.headers[0].match.regex #=> String
3698
4496
  # resp.route.spec.http_route.match.headers[0].match.suffix #=> String
3699
4497
  # resp.route.spec.http_route.match.headers[0].name #=> String
3700
- # resp.route.spec.http_route.match.method #=> String, one of "CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"
4498
+ # resp.route.spec.http_route.match.method #=> String, one of "GET", "HEAD", "POST", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE", "PATCH"
4499
+ # resp.route.spec.http_route.match.path.exact #=> String
4500
+ # resp.route.spec.http_route.match.path.regex #=> String
3701
4501
  # resp.route.spec.http_route.match.prefix #=> String
4502
+ # resp.route.spec.http_route.match.query_parameters #=> Array
4503
+ # resp.route.spec.http_route.match.query_parameters[0].match.exact #=> String
4504
+ # resp.route.spec.http_route.match.query_parameters[0].name #=> String
3702
4505
  # resp.route.spec.http_route.match.scheme #=> String, one of "http", "https"
3703
4506
  # resp.route.spec.http_route.retry_policy.http_retry_events #=> Array
3704
4507
  # resp.route.spec.http_route.retry_policy.http_retry_events[0] #=> String
3705
4508
  # resp.route.spec.http_route.retry_policy.max_retries #=> Integer
3706
- # resp.route.spec.http_route.retry_policy.per_retry_timeout.unit #=> String, one of "ms", "s"
4509
+ # resp.route.spec.http_route.retry_policy.per_retry_timeout.unit #=> String, one of "s", "ms"
3707
4510
  # resp.route.spec.http_route.retry_policy.per_retry_timeout.value #=> Integer
3708
4511
  # resp.route.spec.http_route.retry_policy.tcp_retry_events #=> Array
3709
4512
  # 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"
4513
+ # resp.route.spec.http_route.timeout.idle.unit #=> String, one of "s", "ms"
3711
4514
  # resp.route.spec.http_route.timeout.idle.value #=> Integer
3712
- # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "ms", "s"
4515
+ # resp.route.spec.http_route.timeout.per_request.unit #=> String, one of "s", "ms"
3713
4516
  # resp.route.spec.http_route.timeout.per_request.value #=> Integer
3714
4517
  # resp.route.spec.priority #=> Integer
3715
4518
  # resp.route.spec.tcp_route.action.weighted_targets #=> Array
3716
4519
  # resp.route.spec.tcp_route.action.weighted_targets[0].virtual_node #=> String
3717
4520
  # 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"
4521
+ # resp.route.spec.tcp_route.timeout.idle.unit #=> String, one of "s", "ms"
3719
4522
  # resp.route.spec.tcp_route.timeout.idle.value #=> Integer
3720
- # resp.route.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
4523
+ # resp.route.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
3721
4524
  # resp.route.virtual_router_name #=> String
3722
4525
  #
3723
4526
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateRoute AWS API Documentation
@@ -3773,9 +4576,23 @@ module Aws::AppMesh
3773
4576
  # backend_defaults: {
3774
4577
  # client_policy: {
3775
4578
  # tls: {
4579
+ # certificate: {
4580
+ # file: {
4581
+ # certificate_chain: "FilePath", # required
4582
+ # private_key: "FilePath", # required
4583
+ # },
4584
+ # sds: {
4585
+ # secret_name: "VirtualGatewaySdsSecretName", # required
4586
+ # },
4587
+ # },
3776
4588
  # enforce: false,
3777
4589
  # ports: [1],
3778
4590
  # validation: { # required
4591
+ # subject_alternative_names: {
4592
+ # match: { # required
4593
+ # exact: ["SubjectAlternativeName"], # required
4594
+ # },
4595
+ # },
3779
4596
  # trust: { # required
3780
4597
  # acm: {
3781
4598
  # certificate_authority_arns: ["Arn"], # required
@@ -3783,6 +4600,9 @@ module Aws::AppMesh
3783
4600
  # file: {
3784
4601
  # certificate_chain: "FilePath", # required
3785
4602
  # },
4603
+ # sds: {
4604
+ # secret_name: "VirtualGatewaySdsSecretName", # required
4605
+ # },
3786
4606
  # },
3787
4607
  # },
3788
4608
  # },
@@ -3790,18 +4610,30 @@ module Aws::AppMesh
3790
4610
  # },
3791
4611
  # listeners: [ # required
3792
4612
  # {
4613
+ # connection_pool: {
4614
+ # grpc: {
4615
+ # max_requests: 1, # required
4616
+ # },
4617
+ # http: {
4618
+ # max_connections: 1, # required
4619
+ # max_pending_requests: 1,
4620
+ # },
4621
+ # http2: {
4622
+ # max_requests: 1, # required
4623
+ # },
4624
+ # },
3793
4625
  # health_check: {
3794
4626
  # healthy_threshold: 1, # required
3795
4627
  # interval_millis: 1, # required
3796
4628
  # path: "String",
3797
4629
  # port: 1,
3798
- # protocol: "grpc", # required, accepts grpc, http, http2
4630
+ # protocol: "http", # required, accepts http, http2, grpc
3799
4631
  # timeout_millis: 1, # required
3800
4632
  # unhealthy_threshold: 1, # required
3801
4633
  # },
3802
4634
  # port_mapping: { # required
3803
4635
  # port: 1, # required
3804
- # protocol: "grpc", # required, accepts grpc, http, http2
4636
+ # protocol: "http", # required, accepts http, http2, grpc
3805
4637
  # },
3806
4638
  # tls: {
3807
4639
  # certificate: { # required
@@ -3812,8 +4644,26 @@ module Aws::AppMesh
3812
4644
  # certificate_chain: "FilePath", # required
3813
4645
  # private_key: "FilePath", # required
3814
4646
  # },
4647
+ # sds: {
4648
+ # secret_name: "VirtualGatewaySdsSecretName", # required
4649
+ # },
4650
+ # },
4651
+ # mode: "STRICT", # required, accepts STRICT, PERMISSIVE, DISABLED
4652
+ # validation: {
4653
+ # subject_alternative_names: {
4654
+ # match: { # required
4655
+ # exact: ["SubjectAlternativeName"], # required
4656
+ # },
4657
+ # },
4658
+ # trust: { # required
4659
+ # file: {
4660
+ # certificate_chain: "FilePath", # required
4661
+ # },
4662
+ # sds: {
4663
+ # secret_name: "VirtualGatewaySdsSecretName", # required
4664
+ # },
4665
+ # },
3815
4666
  # },
3816
- # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
3817
4667
  # },
3818
4668
  # },
3819
4669
  # ],
@@ -3838,28 +4688,43 @@ module Aws::AppMesh
3838
4688
  # resp.virtual_gateway.metadata.resource_owner #=> String
3839
4689
  # resp.virtual_gateway.metadata.uid #=> String
3840
4690
  # resp.virtual_gateway.metadata.version #=> Integer
4691
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.file.certificate_chain #=> String
4692
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.file.private_key #=> String
4693
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.certificate.sds.secret_name #=> String
3841
4694
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
3842
4695
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports #=> Array
3843
4696
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
4697
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
4698
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
3844
4699
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
3845
4700
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
3846
4701
  # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
4702
+ # resp.virtual_gateway.spec.backend_defaults.client_policy.tls.validation.trust.sds.secret_name #=> String
3847
4703
  # resp.virtual_gateway.spec.listeners #=> Array
4704
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.grpc.max_requests #=> Integer
4705
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http.max_connections #=> Integer
4706
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http.max_pending_requests #=> Integer
4707
+ # resp.virtual_gateway.spec.listeners[0].connection_pool.http2.max_requests #=> Integer
3848
4708
  # resp.virtual_gateway.spec.listeners[0].health_check.healthy_threshold #=> Integer
3849
4709
  # resp.virtual_gateway.spec.listeners[0].health_check.interval_millis #=> Integer
3850
4710
  # resp.virtual_gateway.spec.listeners[0].health_check.path #=> String
3851
4711
  # 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"
4712
+ # resp.virtual_gateway.spec.listeners[0].health_check.protocol #=> String, one of "http", "http2", "grpc"
3853
4713
  # resp.virtual_gateway.spec.listeners[0].health_check.timeout_millis #=> Integer
3854
4714
  # resp.virtual_gateway.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
3855
4715
  # 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"
4716
+ # resp.virtual_gateway.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "http2", "grpc"
3857
4717
  # resp.virtual_gateway.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
3858
4718
  # resp.virtual_gateway.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
3859
4719
  # 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"
4720
+ # resp.virtual_gateway.spec.listeners[0].tls.certificate.sds.secret_name #=> String
4721
+ # resp.virtual_gateway.spec.listeners[0].tls.mode #=> String, one of "STRICT", "PERMISSIVE", "DISABLED"
4722
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.subject_alternative_names.match.exact #=> Array
4723
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.subject_alternative_names.match.exact[0] #=> String
4724
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.trust.file.certificate_chain #=> String
4725
+ # resp.virtual_gateway.spec.listeners[0].tls.validation.trust.sds.secret_name #=> String
3861
4726
  # resp.virtual_gateway.spec.logging.access_log.file.path #=> String
3862
- # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
4727
+ # resp.virtual_gateway.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
3863
4728
  # resp.virtual_gateway.virtual_gateway_name #=> String
3864
4729
  #
3865
4730
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGateway AWS API Documentation
@@ -3915,9 +4780,23 @@ module Aws::AppMesh
3915
4780
  # backend_defaults: {
3916
4781
  # client_policy: {
3917
4782
  # tls: {
4783
+ # certificate: {
4784
+ # file: {
4785
+ # certificate_chain: "FilePath", # required
4786
+ # private_key: "FilePath", # required
4787
+ # },
4788
+ # sds: {
4789
+ # secret_name: "SdsSecretName", # required
4790
+ # },
4791
+ # },
3918
4792
  # enforce: false,
3919
4793
  # ports: [1],
3920
4794
  # validation: { # required
4795
+ # subject_alternative_names: {
4796
+ # match: { # required
4797
+ # exact: ["SubjectAlternativeName"], # required
4798
+ # },
4799
+ # },
3921
4800
  # trust: { # required
3922
4801
  # acm: {
3923
4802
  # certificate_authority_arns: ["Arn"], # required
@@ -3925,6 +4804,9 @@ module Aws::AppMesh
3925
4804
  # file: {
3926
4805
  # certificate_chain: "FilePath", # required
3927
4806
  # },
4807
+ # sds: {
4808
+ # secret_name: "SdsSecretName", # required
4809
+ # },
3928
4810
  # },
3929
4811
  # },
3930
4812
  # },
@@ -3935,9 +4817,23 @@ module Aws::AppMesh
3935
4817
  # virtual_service: {
3936
4818
  # client_policy: {
3937
4819
  # tls: {
4820
+ # certificate: {
4821
+ # file: {
4822
+ # certificate_chain: "FilePath", # required
4823
+ # private_key: "FilePath", # required
4824
+ # },
4825
+ # sds: {
4826
+ # secret_name: "SdsSecretName", # required
4827
+ # },
4828
+ # },
3938
4829
  # enforce: false,
3939
4830
  # ports: [1],
3940
4831
  # validation: { # required
4832
+ # subject_alternative_names: {
4833
+ # match: { # required
4834
+ # exact: ["SubjectAlternativeName"], # required
4835
+ # },
4836
+ # },
3941
4837
  # trust: { # required
3942
4838
  # acm: {
3943
4839
  # certificate_authority_arns: ["Arn"], # required
@@ -3945,6 +4841,9 @@ module Aws::AppMesh
3945
4841
  # file: {
3946
4842
  # certificate_chain: "FilePath", # required
3947
4843
  # },
4844
+ # sds: {
4845
+ # secret_name: "SdsSecretName", # required
4846
+ # },
3948
4847
  # },
3949
4848
  # },
3950
4849
  # },
@@ -3955,53 +4854,80 @@ module Aws::AppMesh
3955
4854
  # ],
3956
4855
  # listeners: [
3957
4856
  # {
4857
+ # connection_pool: {
4858
+ # grpc: {
4859
+ # max_requests: 1, # required
4860
+ # },
4861
+ # http: {
4862
+ # max_connections: 1, # required
4863
+ # max_pending_requests: 1,
4864
+ # },
4865
+ # http2: {
4866
+ # max_requests: 1, # required
4867
+ # },
4868
+ # tcp: {
4869
+ # max_connections: 1, # required
4870
+ # },
4871
+ # },
3958
4872
  # health_check: {
3959
4873
  # healthy_threshold: 1, # required
3960
4874
  # interval_millis: 1, # required
3961
4875
  # path: "String",
3962
4876
  # port: 1,
3963
- # protocol: "grpc", # required, accepts grpc, http, http2, tcp
4877
+ # protocol: "http", # required, accepts http, tcp, http2, grpc
3964
4878
  # timeout_millis: 1, # required
3965
4879
  # unhealthy_threshold: 1, # required
3966
4880
  # },
4881
+ # outlier_detection: {
4882
+ # base_ejection_duration: { # required
4883
+ # unit: "s", # accepts s, ms
4884
+ # value: 1,
4885
+ # },
4886
+ # interval: { # required
4887
+ # unit: "s", # accepts s, ms
4888
+ # value: 1,
4889
+ # },
4890
+ # max_ejection_percent: 1, # required
4891
+ # max_server_errors: 1, # required
4892
+ # },
3967
4893
  # port_mapping: { # required
3968
4894
  # port: 1, # required
3969
- # protocol: "grpc", # required, accepts grpc, http, http2, tcp
4895
+ # protocol: "http", # required, accepts http, tcp, http2, grpc
3970
4896
  # },
3971
4897
  # timeout: {
3972
4898
  # grpc: {
3973
4899
  # idle: {
3974
- # unit: "ms", # accepts ms, s
4900
+ # unit: "s", # accepts s, ms
3975
4901
  # value: 1,
3976
4902
  # },
3977
4903
  # per_request: {
3978
- # unit: "ms", # accepts ms, s
4904
+ # unit: "s", # accepts s, ms
3979
4905
  # value: 1,
3980
4906
  # },
3981
4907
  # },
3982
4908
  # http: {
3983
4909
  # idle: {
3984
- # unit: "ms", # accepts ms, s
4910
+ # unit: "s", # accepts s, ms
3985
4911
  # value: 1,
3986
4912
  # },
3987
4913
  # per_request: {
3988
- # unit: "ms", # accepts ms, s
4914
+ # unit: "s", # accepts s, ms
3989
4915
  # value: 1,
3990
4916
  # },
3991
4917
  # },
3992
4918
  # http2: {
3993
4919
  # idle: {
3994
- # unit: "ms", # accepts ms, s
4920
+ # unit: "s", # accepts s, ms
3995
4921
  # value: 1,
3996
4922
  # },
3997
4923
  # per_request: {
3998
- # unit: "ms", # accepts ms, s
4924
+ # unit: "s", # accepts s, ms
3999
4925
  # value: 1,
4000
4926
  # },
4001
4927
  # },
4002
4928
  # tcp: {
4003
4929
  # idle: {
4004
- # unit: "ms", # accepts ms, s
4930
+ # unit: "s", # accepts s, ms
4005
4931
  # value: 1,
4006
4932
  # },
4007
4933
  # },
@@ -4015,8 +4941,26 @@ module Aws::AppMesh
4015
4941
  # certificate_chain: "FilePath", # required
4016
4942
  # private_key: "FilePath", # required
4017
4943
  # },
4944
+ # sds: {
4945
+ # secret_name: "SdsSecretName", # required
4946
+ # },
4947
+ # },
4948
+ # mode: "STRICT", # required, accepts STRICT, PERMISSIVE, DISABLED
4949
+ # validation: {
4950
+ # subject_alternative_names: {
4951
+ # match: { # required
4952
+ # exact: ["SubjectAlternativeName"], # required
4953
+ # },
4954
+ # },
4955
+ # trust: { # required
4956
+ # file: {
4957
+ # certificate_chain: "FilePath", # required
4958
+ # },
4959
+ # sds: {
4960
+ # secret_name: "SdsSecretName", # required
4961
+ # },
4962
+ # },
4018
4963
  # },
4019
- # mode: "DISABLED", # required, accepts DISABLED, PERMISSIVE, STRICT
4020
4964
  # },
4021
4965
  # },
4022
4966
  # ],
@@ -4040,6 +4984,7 @@ module Aws::AppMesh
4040
4984
  # },
4041
4985
  # dns: {
4042
4986
  # hostname: "Hostname", # required
4987
+ # response_type: "LOADBALANCER", # accepts LOADBALANCER, ENDPOINTS
4043
4988
  # },
4044
4989
  # },
4045
4990
  # },
@@ -4056,48 +5001,76 @@ module Aws::AppMesh
4056
5001
  # resp.virtual_node.metadata.resource_owner #=> String
4057
5002
  # resp.virtual_node.metadata.uid #=> String
4058
5003
  # resp.virtual_node.metadata.version #=> Integer
5004
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.file.certificate_chain #=> String
5005
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.file.private_key #=> String
5006
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.certificate.sds.secret_name #=> String
4059
5007
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.enforce #=> Boolean
4060
5008
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.ports #=> Array
4061
5009
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.ports[0] #=> Integer
5010
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
5011
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
4062
5012
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
4063
5013
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
4064
5014
  # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.file.certificate_chain #=> String
5015
+ # resp.virtual_node.spec.backend_defaults.client_policy.tls.validation.trust.sds.secret_name #=> String
4065
5016
  # resp.virtual_node.spec.backends #=> Array
5017
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.file.certificate_chain #=> String
5018
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.file.private_key #=> String
5019
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.certificate.sds.secret_name #=> String
4066
5020
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.enforce #=> Boolean
4067
5021
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.ports #=> Array
4068
5022
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.ports[0] #=> Integer
5023
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.subject_alternative_names.match.exact #=> Array
5024
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.subject_alternative_names.match.exact[0] #=> String
4069
5025
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.acm.certificate_authority_arns #=> Array
4070
5026
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.acm.certificate_authority_arns[0] #=> String
4071
5027
  # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.file.certificate_chain #=> String
5028
+ # resp.virtual_node.spec.backends[0].virtual_service.client_policy.tls.validation.trust.sds.secret_name #=> String
4072
5029
  # resp.virtual_node.spec.backends[0].virtual_service.virtual_service_name #=> String
4073
5030
  # resp.virtual_node.spec.listeners #=> Array
5031
+ # resp.virtual_node.spec.listeners[0].connection_pool.grpc.max_requests #=> Integer
5032
+ # resp.virtual_node.spec.listeners[0].connection_pool.http.max_connections #=> Integer
5033
+ # resp.virtual_node.spec.listeners[0].connection_pool.http.max_pending_requests #=> Integer
5034
+ # resp.virtual_node.spec.listeners[0].connection_pool.http2.max_requests #=> Integer
5035
+ # resp.virtual_node.spec.listeners[0].connection_pool.tcp.max_connections #=> Integer
4074
5036
  # resp.virtual_node.spec.listeners[0].health_check.healthy_threshold #=> Integer
4075
5037
  # resp.virtual_node.spec.listeners[0].health_check.interval_millis #=> Integer
4076
5038
  # resp.virtual_node.spec.listeners[0].health_check.path #=> String
4077
5039
  # resp.virtual_node.spec.listeners[0].health_check.port #=> Integer
4078
- # resp.virtual_node.spec.listeners[0].health_check.protocol #=> String, one of "grpc", "http", "http2", "tcp"
5040
+ # resp.virtual_node.spec.listeners[0].health_check.protocol #=> String, one of "http", "tcp", "http2", "grpc"
4079
5041
  # resp.virtual_node.spec.listeners[0].health_check.timeout_millis #=> Integer
4080
5042
  # resp.virtual_node.spec.listeners[0].health_check.unhealthy_threshold #=> Integer
5043
+ # resp.virtual_node.spec.listeners[0].outlier_detection.base_ejection_duration.unit #=> String, one of "s", "ms"
5044
+ # resp.virtual_node.spec.listeners[0].outlier_detection.base_ejection_duration.value #=> Integer
5045
+ # resp.virtual_node.spec.listeners[0].outlier_detection.interval.unit #=> String, one of "s", "ms"
5046
+ # resp.virtual_node.spec.listeners[0].outlier_detection.interval.value #=> Integer
5047
+ # resp.virtual_node.spec.listeners[0].outlier_detection.max_ejection_percent #=> Integer
5048
+ # resp.virtual_node.spec.listeners[0].outlier_detection.max_server_errors #=> Integer
4081
5049
  # resp.virtual_node.spec.listeners[0].port_mapping.port #=> Integer
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"
5050
+ # resp.virtual_node.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp", "http2", "grpc"
5051
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.idle.unit #=> String, one of "s", "ms"
4084
5052
  # 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"
5053
+ # resp.virtual_node.spec.listeners[0].timeout.grpc.per_request.unit #=> String, one of "s", "ms"
4086
5054
  # 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"
5055
+ # resp.virtual_node.spec.listeners[0].timeout.http.idle.unit #=> String, one of "s", "ms"
4088
5056
  # 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"
5057
+ # resp.virtual_node.spec.listeners[0].timeout.http.per_request.unit #=> String, one of "s", "ms"
4090
5058
  # 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"
5059
+ # resp.virtual_node.spec.listeners[0].timeout.http2.idle.unit #=> String, one of "s", "ms"
4092
5060
  # 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"
5061
+ # resp.virtual_node.spec.listeners[0].timeout.http2.per_request.unit #=> String, one of "s", "ms"
4094
5062
  # 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"
5063
+ # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.unit #=> String, one of "s", "ms"
4096
5064
  # resp.virtual_node.spec.listeners[0].timeout.tcp.idle.value #=> Integer
4097
5065
  # resp.virtual_node.spec.listeners[0].tls.certificate.acm.certificate_arn #=> String
4098
5066
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.certificate_chain #=> String
4099
5067
  # resp.virtual_node.spec.listeners[0].tls.certificate.file.private_key #=> String
4100
- # resp.virtual_node.spec.listeners[0].tls.mode #=> String, one of "DISABLED", "PERMISSIVE", "STRICT"
5068
+ # resp.virtual_node.spec.listeners[0].tls.certificate.sds.secret_name #=> String
5069
+ # resp.virtual_node.spec.listeners[0].tls.mode #=> String, one of "STRICT", "PERMISSIVE", "DISABLED"
5070
+ # resp.virtual_node.spec.listeners[0].tls.validation.subject_alternative_names.match.exact #=> Array
5071
+ # resp.virtual_node.spec.listeners[0].tls.validation.subject_alternative_names.match.exact[0] #=> String
5072
+ # resp.virtual_node.spec.listeners[0].tls.validation.trust.file.certificate_chain #=> String
5073
+ # resp.virtual_node.spec.listeners[0].tls.validation.trust.sds.secret_name #=> String
4101
5074
  # resp.virtual_node.spec.logging.access_log.file.path #=> String
4102
5075
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.attributes #=> Array
4103
5076
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.attributes[0].key #=> String
@@ -4105,7 +5078,8 @@ module Aws::AppMesh
4105
5078
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.namespace_name #=> String
4106
5079
  # resp.virtual_node.spec.service_discovery.aws_cloud_map.service_name #=> String
4107
5080
  # resp.virtual_node.spec.service_discovery.dns.hostname #=> String
4108
- # resp.virtual_node.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
5081
+ # resp.virtual_node.spec.service_discovery.dns.response_type #=> String, one of "LOADBALANCER", "ENDPOINTS"
5082
+ # resp.virtual_node.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
4109
5083
  # resp.virtual_node.virtual_node_name #=> String
4110
5084
  #
4111
5085
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualNode AWS API Documentation
@@ -4162,7 +5136,7 @@ module Aws::AppMesh
4162
5136
  # {
4163
5137
  # port_mapping: { # required
4164
5138
  # port: 1, # required
4165
- # protocol: "grpc", # required, accepts grpc, http, http2, tcp
5139
+ # protocol: "http", # required, accepts http, tcp, http2, grpc
4166
5140
  # },
4167
5141
  # },
4168
5142
  # ],
@@ -4182,8 +5156,8 @@ module Aws::AppMesh
4182
5156
  # resp.virtual_router.metadata.version #=> Integer
4183
5157
  # resp.virtual_router.spec.listeners #=> Array
4184
5158
  # resp.virtual_router.spec.listeners[0].port_mapping.port #=> Integer
4185
- # resp.virtual_router.spec.listeners[0].port_mapping.protocol #=> String, one of "grpc", "http", "http2", "tcp"
4186
- # resp.virtual_router.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
5159
+ # resp.virtual_router.spec.listeners[0].port_mapping.protocol #=> String, one of "http", "tcp", "http2", "grpc"
5160
+ # resp.virtual_router.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
4187
5161
  # resp.virtual_router.virtual_router_name #=> String
4188
5162
  #
4189
5163
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualRouter AWS API Documentation
@@ -4260,7 +5234,7 @@ module Aws::AppMesh
4260
5234
  # resp.virtual_service.metadata.version #=> Integer
4261
5235
  # resp.virtual_service.spec.provider.virtual_node.virtual_node_name #=> String
4262
5236
  # resp.virtual_service.spec.provider.virtual_router.virtual_router_name #=> String
4263
- # resp.virtual_service.status.status #=> String, one of "ACTIVE", "DELETED", "INACTIVE"
5237
+ # resp.virtual_service.status.status #=> String, one of "ACTIVE", "INACTIVE", "DELETED"
4264
5238
  # resp.virtual_service.virtual_service_name #=> String
4265
5239
  #
4266
5240
  # @see http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualService AWS API Documentation
@@ -4285,7 +5259,7 @@ module Aws::AppMesh
4285
5259
  params: params,
4286
5260
  config: config)
4287
5261
  context[:gem_name] = 'aws-sdk-appmesh'
4288
- context[:gem_version] = '1.31.0'
5262
+ context[:gem_version] = '1.36.0'
4289
5263
  Seahorse::Client::Request.new(handlers, context)
4290
5264
  end
4291
5265