- Create a PR "Preparing release X.Y.Z" against master or maintenance branch (example) by updating CHANGELOG.md to include:
- A new section with the header
<X.Y.Z> (YYYY-MM-DD)
- A curated list of notable changes and links to PRs. Do not simply dump git log, select the changes that affect the users. To obtain the list of all changes run
make changelog
. - The section can be split into sub-section if necessary, e.g. UI Changes, Backend Changes, Bug Fixes, etc.
- If the submodules have new releases, please also upgrade the submodule versions then commit, for example:
cd jaeger-ui git ls-remote --tags origin git fetch git checkout {new_version} //e.g. v1.5.0
- A new section with the header
- Add all merged pull requests to the milestone for the release and create a new milestone for a next release e.g.
Release 1.16
. - After the PR is merged, create a release on Github:
- Title "Release X.Y.Z"
- Tag
vX.Y.Z
(note thev
prefix) and choose appropriate branch - Copy the new CHANGELOG.md section into the release notes
- The release tag will trigger a build of the docker images. Since forks don't have jaegertracingbot dockerhub token, they can never publish images to jaegertracing organisation.
- Check the images are available on Docker Hub.
- For monitoring and troubleshooting, refer to the jaegertracing/jaeger GithubActions tab.
- Publish documentation for the new version in jaegertracing.io.
- Check jaegertracing.io redirects to the new documentation release version URL.
- For monitoring and troubleshooting, refer to the jaegertracing/documentation GithubActions tab.
- Announce the release on the mailing list, slack, and twitter.
Maintenance branches should follow naming convention: release-major.minor
(e.g.release-1.8
).