-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Description
Plan to complete this failed release
Outline plan agreed at the standup meeting this morning.
- Perform v1.14.1 bug fix release process stopping just before publishing the Helm chart and GitHub release.
- Release cert-manager v1.14.1 #6710 - Manually create a Helm chart archive from the v1.14.1 version of the code, but override version to be v1.14.0
- Manually sign that Helm chart,
- Publish that chart as v1.14.0.
- Manually generate the static yaml manifest from that chart
- Attach static yaml that to the draft v1.14.0 GitHub release.
- Publish the v1.14.0 GitHub release, with a release note describing what we've done and why.
- Resume and complete the v1.14.1 release process
- Including a release note explaining why we immediately released v1.14.1.
- https://cert-manager.io/docs/releases/release-notes/release-notes-1.14#v1140
v1.14.0
- Bump Go patch version in release branch (if necessary).
- go1.21.6: https://go.dev/doc/devel/release#go1.21.0 - Verify that test grid is green.
- https://testgrid.k8s.io/cert-manager-periodics-release-1.14
- Not green, but only failure istrivy-test-startupapicheck
which has been fixed and we have run the check manually. - Create website PR with release notes and updated installation versions.
Add/hold until release is published
.
- Release notes for v1.14.0 website#1404
- Release cert-manager 1.14 website#1400
⏸️ Wait for approval before continuing.
So that team can check release notes for any missing patches which we may have forgotten to backport.
- Send Slack message
Releasing 1.14.0 🧵
.
- https://kubernetes.slack.com/archives/CDEQJ0Q8M/p1706713005073879 - Push
vX.Y.Z
tag.
- https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0 - Check that the build completed in the GCB Build History.
- Send Slack message
cmrel makestage build logs: ...
.
- https://console.cloud.google.com/cloud-build/builds/518d683a-1d8d-46e3-8b68-aea00e2499b8?project=cert-manager-release
⏸️ Wait for build to succeed.
- Create
[Release $RELEASE_VERSION] Update cmd/cmctl's go.mod to $RELEASE_VERSION
PR.
- [Release v1.14.0] Update cmd/cmctl's go.mod to v1.14.0 #6690
⏸️ Wait for PR to be merged.
- Push
cmd/ctl/$RELEASE_VERSION
tag.
- https://github.com/cert-manager/cert-manager/releases/tag/cmd%2Fctl%2Fv1.14.0 - Dry run
cmrel publish --release-name "$RELEASE_VERSION"
. - Send Slack message
Follow the cmrel publish dry-run build: ...
.
- https://console.cloud.google.com/cloud-build/builds/628d8fab-f1b6-41af-8877-dee67968259a?project=1021342095237 - Run
cmrel publish --nomock --release-name "$RELEASE_VERSION"
. - Send Slack message
Follow the cmrel publish build: ...
.
- https://console.cloud.google.com/cloud-build/builds/82c4362b-4d04-45f7-be3d-8c26983319a3?project=1021342095237
⏸️ Test installation of the Helm chart using the preview URL.
When I tested the Helm chart I discovered a major bug in the Helm chart, that had gone unnoticed in the beta release.
The plan is to merge a bug fix to the release branch and then manually recreate the Helm chart and the static manifests for the release, so that v1.14.0 release can be completed and published.
And to immediately create av1.14.1
release which will contain the automatically built Helm chart.
You can read the discussion on Slack:
- https://kubernetes.slack.com/archives/CDEQJ0Q8M/p1706719876116399?thread_ts=1706713005.073879&cid=CDEQJ0Q8M
- cainjector leader election fails due to lease issues #6646
- Fix mistakenly changed cainjector image value #6692
- [release-1.14] Fix mistakenly changed cainjector image value #6693
We also discovered a backwards incompatible deletion of a metrics related Service resource:
- Publish the GitHub release.
- https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0 - Merge the pull request containing the Helm chart.
- Merge the Website PRs.
- Release cert-manager 1.14 website#1400 - Send Slack message
https://github.com/cert-manager/cert-manager/releases/tag/v1.0.0 🎉
. - Send an email to cert-manager-dev@googlegroups.com.
- Send a tweet on the cert-manager Twitter account.
- Send a toot from the cert-manager Mastodon account.
⏸️ Post release tasks
- Open a PR for a Homebrew formula update for cmctl.
- Open a PR against the Krew index.
- Create a new OLM package and publish to OperatorHub
TODO
- Write upgrade notes
- Update API documentation
- Update the CLI documentation
- Update documentation for startupapicheck (if necessary).
- [release-next] Also verify startupapicheck website#1394 - merge Redact the body of failed authentication requests #6683
- Document the liveness probe changes.
- Update liveness probe docs website#1381 - Document the OtherName SANS feature
- Add Certificate 'otherNames' SAN field description website#1378
v1.14.0-beta.0
- https://kubernetes.slack.com/archives/CDEQJ0Q8M/p1705932189217579
- https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0-beta.0
v1.14.0-alpha.1
https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0-alpha.1
- Bump Go patch version in release branch (if necessary).
- Verify that test grid is green.
- There were some failures in the periodics which we have fixed but the periodics have not re-run yet.
- https://testgrid.k8s.io/cert-manager
- Require feature gate in otherName SAN cert e2e #6635 - Create website PR with release notes and updated installation versions.
- Release notes for pre-release v1.14.0 alpha.1 website#1387
⏸️ Wait for approval before continuing.
So that team can check release notes for any missing patches which we may have forgotten to backport.
- Send Slack message
Releasing 1.y.z 🧵
.
- https://kubernetes.slack.com/archives/CDEQJ0Q8M/p1705077713171149 - Push
vX.Y.Z
tag.
- https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0-alpha.1 - Check that the build completed in the GCB Build History.
- Send Slack message
cmrel makestage build logs: ...
.
- https://console.cloud.google.com/cloud-build/builds/49e0f88a-3c6a-4fcd-a2b4-d5b65a9e6492?project=1021342095237
⏸️ Wait for build to succeed.
- Create
[Release $RELEASE_VERSION] Update cmd/cmctl's go.mod to $RELEASE_VERSION
PR.
- [Release v1.14.0-alpha.1] Update cmd/cmctl's go.mod to v1.14.0-alpha.1 #6637
⏸️ Wait for PR to be merged.
- Push
cmd/ctl/$RELEASE_VERSION
tag.
- https://github.com/cert-manager/cert-manager/releases/tag/cmd%2Fctl%2Fv1.14.0-alpha.1 - Dry run
cmrel publish --release-name "$RELEASE_VERSION"
. - Send Slack message
Follow the cmrel publish dry-run build: ...
.
- https://console.cloud.google.com/cloud-build/builds/011e2d56-926a-432e-92ab-fbd119980110?project=1021342095237 - Run
cmrel publish --nomock --release-name "$RELEASE_VERSION"
. - Send Slack message
Follow the cmrel publish build: ...
.
- https://console.cloud.google.com/cloud-build/builds/70af6d94-b0fe-4be7-9f3a-68026c10c312?project=1021342095237
⏸️ Test installation of the Helm chart using the preview URL.
- Publish the GitHub release.
- https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0-alpha.1 - Merge the pull request containing the Helm chart.
- https://github.com/jetstack/jetstack-charts/pull/221 - Merge the Website PRs.
- Send Slack message
https://github.com/cert-manager/cert-manager/releases/tag/v1.0.0 🎉
.
v1.14.0-alpha.0
https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0-alpha.0
https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0-alpha.0
- Bump Go patch version in release branch (if necessary).
- Verify that test grid is green.
- Create website PR with release notes and updated installation versions.
- Release notes for pre-release v1.14.0-alpha.0 website#1375
- https://deploy-preview-1375--cert-manager-website.netlify.app/docs/releases/release-notes/release-notes-1.14/
⏸️ Wait for approval before continuing.
So that team can check release notes for any missing patches which we may have forgotten to backport.
- Send Slack message
Releasing 1.y.z 🧵
.
- https://kubernetes.slack.com/archives/CDEQJ0Q8M/p1704361797951329 - Push
vX.Y.Z
tag.
- https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0-alpha.0 - Check that the build completed in the GCB Build History.
- Send Slack message
cmrel makestage build logs: ...
.
- https://console.cloud.google.com/cloud-build/builds/b12d35d9-76a1-4983-9f79-dbb4acf2031c?project=cert-manager-release
⏸️ Wait for build to succeed.
- Create
[Release $RELEASE_VERSION] Update cmd/cmctl's go.mod to $RELEASE_VERSION
PR.
- [Release v1.14.0-alpha.0] Update cmd/cmctl's go.mod to v1.14.0-alpha.0 #6595
⏸️ Wait for PR to be merged.
- Push
cmd/ctl/$RELEASE_VERSION
tag.
- https://github.com/cert-manager/cert-manager/releases/tag/cmd%2Fctl%2Fv1.14.0-alpha.0 - Dry run
cmrel publish --release-name "$RELEASE_VERSION"
.
- https://console.cloud.google.com/cloud-build/builds/a1cdccf0-c342-4f85-bf08-6ff3d302684d?project=1021342095237 - Send Slack message
Follow the cmrel publish dry-run build: ...
. - Run
cmrel publish --nomock --release-name "$RELEASE_VERSION"
.
- https://console.cloud.google.com/cloud-build/builds/059b0d5b-e8be-4bac-97a4-f263526987b5?project=cert-manager-release - Send Slack message
Follow the cmrel publish build: ...
.
⏸️ Test installation of the Helm chart using the preview URL.
- Publish the GitHub release.
- https://github.com/cert-manager/cert-manager/releases/tag/v1.14.0-alpha.0 - Merge the pull request containing the Helm chart.
- Merge the Website PRs.
- Send Slack message
https://github.com/cert-manager/cert-manager/releases/tag/v1.0.0 🎉
.