Skip to content
Frank Schröder edited this page Feb 25, 2019 · 9 revisions

Build env

  1. Is git setup for signed commits? (the release tags are signed) git config --global user.signingkey <gpg signing key>

  2. Is homebrew up-to-date? Run brew update ; brew cleanup

  3. Is the latest consul and vault installed via homebrew? Check with consul verson and vault version.

  4. Is goreleaser installed? If not run brew install goreleaser.

  5. Is the GITHUB_TOKEN environment variable set with a valid github api token? (required for goreleaser) If not, create one at https://github.com/settings/tokens

  6. Does https://github.com/magiconair/homebrew-core exist? (required for homebrew update)

Pre-flight

  1. Does the code build? Run make to check.
  2. Is Codeship green? Codeship CI Status
  3. Is there a milestone for that release in github?
  4. Are all issues and pull requests which got merged associated with that milestone?
  5. Are all items of the milestone closed?
  6. Is the due date of the milestone set to the release date?
  7. Does CHANGELOG.md contain all changes from the milestone?

Release

  1. Update CHANGELOG.md and update the Unreleased title to version and date of the release.
  2. Commit the CHANGELOG.md with message Prepare for release x.y.z
  3. Run make release to tag the code, build the release for all supported platforms, package it with goreleaser and push it to homebrew and github with changelog. This will update the version in main.go and commit it.
  4. A browser window should open for the homebrew pull request. Mark all [X] checkboxes and submit.