consul/proto-public
Michael Zalimeni a7803bd829
[NET-6305] xds: Ensure v2 route match and protocol are populated for gRPC (#19343)
* xds: Ensure v2 route match is populated for gRPC

Similar to HTTP, ensure that route match config (which is required by
Envoy) is populated when default values are used.

Because the default matches generated for gRPC contain a single empty
`GRPCRouteMatch`, and that proto does not directly support prefix-based
config, an interpretation of the empty struct is needed to generate the
same output that the `HTTPRouteMatch` is explicitly configured to
provide in internal/mesh/internal/controllers/routes/generate.go.

* xds: Ensure protocol set for gRPC resources

Add explicit protocol in `ProxyStateTemplate` builders and validate it
is always set on clusters. This ensures that HTTP filters and
`http2_protocol_options` are populated in all the necessary places for
gRPC traffic and prevents future unintended omissions of non-TCP
protocols.

Co-authored-by: John Murret <john.murret@hashicorp.com>

---------

Co-authored-by: John Murret <john.murret@hashicorp.com>
2023-10-25 17:43:58 +00:00
..
annotations/ratelimit Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
pbacl Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
pbauth/v2beta1 Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
pbcatalog/v2beta1 Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
pbconnectca Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
pbdataplane Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
pbdns Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
pbmesh/v2beta1 [NET-6305] xds: Ensure v2 route match and protocol are populated for gRPC (#19343) 2023-10-25 17:43:58 +00:00
pbresource Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
pbserverdiscovery Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
pbtenancy/v2beta1 v2tenancy: rename v1alpha1 -> v2beta1 (#19227) 2023-10-16 21:43:47 +00:00
LICENSE Make proto-public license MPL (#18531) 2023-08-21 12:31:54 -05:00
buf.gen.yaml Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
buf.yaml Make proto-public license MPL (#18531) 2023-08-21 12:31:54 -05:00
go.mod [NET-5944] security: Update Go version to 1.20.10 and `x/net` to 0.17.0 (#19225) 2023-10-16 17:49:04 -04:00
go.sum [NET-5944] security: Update Go version to 1.20.10 and `x/net` to 0.17.0 (#19225) 2023-10-16 17:49:04 -04:00