We take inspiration from the controller-runtime release process: https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md
- Create a new release branch from main:
git checkout -b release-<MAJOR.MINOR>
- Push the new branch to the remote repository:
git push --set-upstream origin release-<MAJOR.MINOR>
- Fetch all tags from the remote:
git fetch --all --tags
- Generate the release notes:
go run ./hack/notes
- Create a new release in GitHub from the release branch, pasting the generated release notes