consul/proto-public/pbmesh/v2beta1
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
..
pbproxystate [NET-6305] xds: Ensure v2 route match and protocol are populated for gRPC (#19343) 2023-10-25 17:43:58 +00:00
common.pb.binary.go
common.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
common.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
common_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
common_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
computed_explicit_destinations.pb.binary.go mesh: add computed destinations with a controller that computes them (#19067) 2023-10-12 12:04:12 -06:00
computed_explicit_destinations.pb.go mesh: add computed destinations with a controller that computes them (#19067) 2023-10-12 12:04:12 -06:00
computed_explicit_destinations.proto mesh: add computed destinations with a controller that computes them (#19067) 2023-10-12 12:04:12 -06:00
computed_explicit_destinations_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
computed_explicit_destinations_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
computed_proxy_configuration.pb.binary.go mesh: Add ComputedProxyConfiguration and a controller that computes it. (#19043) 2023-10-10 17:34:53 -06:00
computed_proxy_configuration.pb.go mesh: Add ComputedProxyConfiguration and a controller that computes it. (#19043) 2023-10-10 17:34:53 -06:00
computed_proxy_configuration.proto mesh: Add ComputedProxyConfiguration and a controller that computes it. (#19043) 2023-10-10 17:34:53 -06:00
computed_proxy_configuration_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
computed_proxy_configuration_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
computed_routes.pb.binary.go
computed_routes.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
computed_routes.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
computed_routes_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
computed_routes_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
connection.pb.binary.go
connection.pb.go NET-5073 - ProxyConfiguration: implement various connection options (#19187) 2023-10-14 13:54:08 +00:00
connection.proto NET-5073 - ProxyConfiguration: implement various connection options (#19187) 2023-10-14 13:54:08 +00:00
connection_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
connection_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
destination_policy.pb.binary.go
destination_policy.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
destination_policy.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
destination_policy_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
destination_policy_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
destinations.pb.binary.go
destinations.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
destinations.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
destinations_configuration.pb.binary.go
destinations_configuration.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
destinations_configuration.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
destinations_configuration_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
destinations_configuration_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
destinations_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
destinations_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
expose.pb.binary.go
expose.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
expose.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
expose_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
expose_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
grpc_route.pb.binary.go
grpc_route.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
grpc_route.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
grpc_route_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
grpc_route_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
http_route.pb.binary.go
http_route.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
http_route.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
http_route_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
http_route_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
http_route_retries.pb.binary.go
http_route_retries.pb.go
http_route_retries.proto
http_route_retries_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
http_route_retries_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
http_route_timeouts.pb.binary.go
http_route_timeouts.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
http_route_timeouts.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
http_route_timeouts_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
http_route_timeouts_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
proxy_configuration.pb.binary.go
proxy_configuration.pb.go mesh: add validation hook to proxy configuration (#19186) 2023-10-13 15:21:39 -06:00
proxy_configuration.proto mesh: add validation hook to proxy configuration (#19186) 2023-10-13 15:21:39 -06:00
proxy_configuration_addon.go mesh: sidecar proxy controller improvements (#19083) 2023-10-12 13:20:13 -06:00
proxy_configuration_addon_test.go mesh: sidecar proxy controller improvements (#19083) 2023-10-12 13:20:13 -06:00
proxy_configuration_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
proxy_configuration_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
proxy_state.pb.binary.go
proxy_state.pb.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
proxy_state.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
proxy_state_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
proxy_state_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
resource_types.gen.go mesh: add computed destinations with a controller that computes them (#19067) 2023-10-12 12:04:12 -06:00
routing.pb.go mesh: add validation hook to proxy configuration (#19186) 2023-10-13 15:21:39 -06:00
routing.proto mesh: add validation hook to proxy configuration (#19186) 2023-10-13 15:21:39 -06:00
tcp_route.pb.binary.go
tcp_route.pb.go
tcp_route.proto Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
tcp_route_deepcopy.gen.go Clone proto into deepcopy correctly (#19204) 2023-10-13 16:41:22 -04:00
tcp_route_json.gen.go Create DeepCopy() and Json Marshal/Unmarshal for proto-public (#19015) 2023-10-13 14:55:58 +00:00
xroute_addons.go
xroute_addons_test.go