2.6 KiB
2.6 KiB
Release Checklist
Preparation
- Check tests, linters.
- Check issues and pull requests, update milestones and labels.
- Check if there are breaking changes or anything that should be reflected in the changelog and/or user documentation.
- Create draft release on GitHub with autogenerated release notes.
- Generate changelog:
- Run
task changelog MILESTONE_TITLE=vX.Y.Z PREVIOUS_MILESTONE_TITLE=vX.Y.Zto generate release changelog for the given milestone. - Copy the changelog to the
CHANGELOG.mdfile. - Sort items within sections according to importance if needed.
- Add first-time contributor credits if any (copy this data from the release draft).
- Run
- Run
task docs-version VERSION=X.Y. Updateversionsindocusaurus.config.js. Remove the oldest version fromversioned_docs,versioned_sidebars,versions.json. - Run
task docs-fmt. - Commit and push changes to the PR.
- Merge PR, pull and check
git status.
Git tag
- Make a signed tag
vX.Y.Zwith the relevant section of the changelog using--cleanup=verbatim. - Check
task gen-version; git statusoutput. - Push it!
- Refresh
env GOPROXY=https://proxy.golang.org go mod download -x github.com/FerretDB/FerretDB@<vX.Y.Z>https://pkg.go.dev/github.com/FerretDB/FerretDB@<vX.Y.Z>from https://pkg.go.dev/github.com/FerretDB/FerretDB?tab=versions.
Release
- Copy release notes from
CHANGELOG.mdand trim them. - Wait for the packages CI build to finish.
- Upload binaries and packages to the draft release.
- Check:
- https://hub.docker.com/r/ferretdb/ferretdb/tags
- https://hub.docker.com/r/ferretdb/ferretdb-dev/tags
- https://hub.docker.com/r/ferretdb/ferretdb-eval/tags
- https://github.com/FerretDB/FerretDB/pkgs/container/ferretdb
- https://github.com/FerretDB/FerretDB/pkgs/container/ferretdb-dev
- https://github.com/FerretDB/FerretDB/pkgs/container/ferretdb-eval
- https://quay.io/repository/ferretdb/ferretdb?tab=tags
- https://quay.io/repository/ferretdb/ferretdb-dev?tab=tags
- https://quay.io/repository/ferretdb/ferretdb-eval?tab=tags
- Close milestone in issues.
- Publish release on GitHub.
- Announce it on Slack.
Soon after
- Bump the latest version on https://beacon.ferretdb.com and https://beacon.ferretdb.io.
- Publish and announce blog post.
- Tweet, toot.
- Update NixOS package: https://github.com/NixOS/nixpkgs/tree/master/pkgs/servers/nosql/ferretdb.
- Update Civo package: https://github.com/civo/kubernetes-marketplace/tree/master/ferretdb.