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

xds: add support for envoy 1.15.0 and drop support for 1.11.x #8424

Merged
merged 5 commits into from
Jul 31, 2020

Conversation

rboyer
Copy link
Member

@rboyer rboyer commented Jul 31, 2020

Every consul major release we maintain support the for latest 4 envoy versions. This PR adds support for envoy 1.15.0 and drops support for the 1.11.x series.

Related changes:

  • hard-fail the xDS connection attempt if the envoy version is known to be too old to be supported
  • remove the RouterMatchSafeRegex proxy feature since all supported envoy versions have it
  • stop using --max-obj-name-len (due to: stats: remove no-longer-needed stats options. envoyproxy/envoy#11740)
    • luckily this was deprecated as a no-op in v1.11.0 so we can just stop setting the value now

Checklist

  • Run the full Envoy integration test using the new version:
make test-envoy-integ ENVOY_VERSIONS="1.15.0"
  • Update ENVOY_VERSION in test/integration/connect/envoy/run-tests.sh to the latest version
  • Update the CI jobs in .circleci/config.yml
    • There are multiple jobs named envoy-integration-test-* where the oldest has a full definition while the others are aliases that just change the version number.
    • Update the list of envoy-integration-test-* jobs in the test-integrations workflow to match the new job names changes above.
  • Update -envoy-version to the latest version in website/pages/docs/commands/connect/envoy.mdx and defaultEnvoyVersion in command/connect/envoy/envoy.go
    • NOTE: this PR make this automatic now
  • Update agent/xds/clusters_test.go: supportedEnvoyVersions
    • NOTE: this PR moves this to agent/xds/proxysupport/proxysupport.go
  • Update the supported versions list in the docs in website/pages/docs/connect/proxies/envoy.mdx
  • Regenerate testdata:
    • go test ./command/connect/envoy -update
    • go test ./agent/xds -update
  • Create an issue consul-k8s to update the default Envoy image to be the latest supported version.
  • Create an issue for consul-helm to update the default Envoy image.
  • Create an issue for Nomad to update the default Envoy docker image they use in their integration with a link to the PR and information about the version we will make the change in and the expected timeline for release:

@rboyer rboyer added the theme/envoy/xds Related to Envoy support label Jul 31, 2020
@rboyer rboyer requested a review from a team July 31, 2020 14:58
@rboyer rboyer self-assigned this Jul 31, 2020
// supportedEnvoyVersions lists the versions that we generated golden tests for
//
// see: https://www.consul.io/docs/connect/proxies/envoy#supported-versions
var supportedEnvoyVersions = []string{
Copy link
Member Author

Choose a reason for hiding this comment

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

I moved this so that the command/connect/envoy package can just take the zeroth element to get the default envoy version rather than having it hard coded in two places.

This was deprecated into a no-op in 1.11.0 and fully removed in 1.15.0
Copy link
Contributor

@freddygv freddygv left a comment

Choose a reason for hiding this comment

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

LGTM 🚀

@rboyer rboyer merged commit c599a2f into master Jul 31, 2020
@rboyer rboyer deleted the envoy-1.15 branch July 31, 2020 20:52
rboyer added a commit that referenced this pull request Aug 26, 2020
rboyer added a commit that referenced this pull request Aug 26, 2020
rboyer added a commit that referenced this pull request Aug 27, 2020
rboyer added a commit that referenced this pull request Aug 27, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
theme/envoy/xds Related to Envoy support
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants