Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Backport of [NET-6305] xds: Ensure v2 route match and protocol are populated for gRPC into release/1.17.x #19366

Conversation

hc-github-team-consul-core
Copy link
Collaborator

Backport

This PR is auto-generated from #19343 to be assessed for backporting due to the inclusion of the label backport/1.17.

The below text is copied from the body of the original PR.


  • Similar to HTTP, ensure that route match config (which is required by Envoy) is populated when default values are used.
  • Ensure protocol set for gRPC inbound/outbound resources

Description

  • 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.

  • 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.

PR Checklist

  • updated test coverage
  • external facing docs updated
  • appropriate backport labels added
  • not a security concern

Overview of commits

@hc-github-team-consul-core hc-github-team-consul-core requested a review from a team as a code owner October 25, 2023 17:44
@hc-github-team-consul-core hc-github-team-consul-core requested a review from a team October 25, 2023 17:44
@hc-github-team-consul-core hc-github-team-consul-core force-pushed the backport/zalimeni/fix-grpc-route/awfully-modern-sunfish branch from a6049ae to e2c64cc Compare October 25, 2023 17:44
@hc-github-team-consul-core hc-github-team-consul-core removed the request for review from a team October 25, 2023 17:44
@hc-github-team-consul-core hc-github-team-consul-core force-pushed the backport/zalimeni/fix-grpc-route/awfully-modern-sunfish branch from 8d87e83 to 782bcdb Compare October 25, 2023 17:44
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Auto approved Consul Bot automated PR

@github-actions github-actions bot added type/docs Documentation needs to be created/updated/clarified theme/api Relating to the HTTP API interface theme/acls ACL and token generation theme/cli Flags and documentation for the CLI interface theme/config Relating to Consul Agent configuration, including reloading theme/ui Anything related to the UI theme/connect Anything related to Consul Connect, Service Mesh, Side Car Proxies type/ci Relating to continuous integration (CI) tooling for testing or releases pr/dependencies PR specifically updates dependencies of project theme/envoy/xds Related to Envoy support theme/contributing Additions and enhancements to community contributing materials labels Oct 25, 2023
@zalimeni zalimeni disabled auto-merge October 25, 2023 18:46
@zalimeni zalimeni force-pushed the backport/zalimeni/fix-grpc-route/awfully-modern-sunfish branch from 782bcdb to 8572f73 Compare October 25, 2023 18:51
@zalimeni zalimeni enabled auto-merge (squash) October 25, 2023 18:51
@zalimeni zalimeni merged commit e6c6814 into release/1.17.x Oct 25, 2023
84 checks passed
@zalimeni zalimeni deleted the backport/zalimeni/fix-grpc-route/awfully-modern-sunfish branch October 25, 2023 19:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr/dependencies PR specifically updates dependencies of project theme/acls ACL and token generation theme/api Relating to the HTTP API interface theme/cli Flags and documentation for the CLI interface theme/config Relating to Consul Agent configuration, including reloading theme/connect Anything related to Consul Connect, Service Mesh, Side Car Proxies theme/contributing Additions and enhancements to community contributing materials theme/envoy/xds Related to Envoy support theme/ui Anything related to the UI type/ci Relating to continuous integration (CI) tooling for testing or releases type/docs Documentation needs to be created/updated/clarified
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants