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

etcd 3.3.16 is a bad release #11241

Closed
3 tasks done
jpbetz opened this issue Oct 11, 2019 · 0 comments · Fixed by #11247
Closed
3 tasks done

etcd 3.3.16 is a bad release #11241

jpbetz opened this issue Oct 11, 2019 · 0 comments · Fixed by #11247

Comments

@jpbetz
Copy link
Contributor

jpbetz commented Oct 11, 2019

I made a mistake during the 3.3.16 that cannot be cleanly recovered from. I intend to document in the CHANGELOG and send an email explaining that it is a bad release and release 3.3.17 to replace it.

What went wrong:

  • I accidentally tagged the wrong commit when releasing but did not realize it until etcd 3.3.16 reports incorrect version #11230 was reported. By this time I had submitted a Kubernetes PR to depend on etcd 3.3.16 (for the client source) and Kubernetes CI jobs, which use go mod proxies, had run against 3.3.16.
  • I attempted to correct this by retaging a corrected commit and continuing the release. This was a mistake.
  • etcd 3.3.16 reports incorrect version #11230 was reported. Attempting to update kubernetes to use the sha of the commit the git tag was moved to was determined to be unsafe. go mod proxies cache the source for a version and are designed to ensure that the same source is always provided for the same version tag. We revered the etcd upgrade in kubernetes and decided to wait until we have a clean etcd 3.3.17 release to upgrade again.

Since the 3.3.16 release binaries and docker images are already published, we will not remove them. They contain no code defects, but we wish to discourage their use since the release is bad.

Source dependencies to 3.3.16 are unsafe since go mod with proxies may return a different hash than go mod without a proxy.

Follow ups:

  • Add release script check to verify that the version/version.go file contains the expected version, that the git tag also matches this version and that the git tag is on the correct release branch
  • Improve release script to check that version of build artifacts match the expected release version
  • Publish etcd 3.3.17

Appreciate everyone's patience while we sort this out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging a pull request may close this issue.

1 participant