-
Notifications
You must be signed in to change notification settings - Fork 0
Release Checklist
The following instructions describe how to cut a new release of Prometheus when the release version is the HEAD of the master branch. The process for cutting bugfix releases based off the latest stable release (non-HEAD) is not clearly defined yet.
-
Consider updating all or some of the vendored dependencies before the release. Make sure that https://github.com/prometheus/client_golang is vendored at a release version.
-
Create a PR that updates the
CHANGELOG.mdalong with theversion/VERSIONfile and get it merged. -
Tag the new release and push the tag to GitHub:
git tag $(cat version/VERSION) git push --tags -
Head to https://github.com/prometheus/prometheus/releases and create a new release for the pushed tag.
-
Attach the relevant changelog excerpt to the release on GitHub.
-
Build
linux-amd64,linux-386, anddarwin-amd64binaries, pack them into tarballs, and attach them to the release. Please note that this needs manual care for now, see issue #1265. The following shell commands give you an idea about the necessary steps:export GOOS=linux # or darwin export GOARCH=amd64 # or 386 make build tar --transform "s,^,prometheus-$(cat version/VERSION).$GOOS-$GOARCH/,S" -czf prometheus-$(cat version/VERSION).$GOOS-$GOARCH.tar.gz prometheus promtool consoles console_libraries
-
Update the
stablebranch to point to the new release (to tag the latest release image on https://registry.hub.docker.com/u/prom/prometheus/):git branch -f stable <new-release-tag> git push origin stable
-
Head to https://hub.docker.com/r/prom/prometheus/~/settings/automated-builds/ and create a automated build associations for the new tag. Then, click "Trigger a build". Note that multiple tags on the Docker hub will need updating, depending on whether it's a patch/minor/major release. Update the
<major-version>tag name to point to the new release with that major version. Similarly, update the<major-version>.<minor-version>tag. Finally, add a new tag for the full new release version. -
Merge any release-specific documentation changes in https://github.com/prometheus/docs (changes that are only applicable to the next release should be kept in a
next-releasebranch there). -
Announce the release on the mailing list and on Twitter.