Skip to content

Latest commit

 

History

History
39 lines (29 loc) · 2.23 KB

release-checklist.md

File metadata and controls

39 lines (29 loc) · 2.23 KB

Release Checklist

Overview

This document describes the checklist to publish a release via GitHub workflow.

See Release Management for the overall process of versioning and support.

Note

The maintainers may periodically update this checklist based on feedback.

Release Steps

Releasing is a two-step process for voting on a specific release, and cutting the release.

Vote On a Specific Commit

  1. Determine a SemVer2-valid version prefixed with the letter v for release. For example, v1.0.0-alpha.1, v1.0.0.
  2. Make sure the dependencies in go.mod file are expected by the release.
  3. After updating go.mod file, run go mod tidy to ensure the go.sum file is also updated with any potential changes.
  4. Determine the commit to be tagged and released.
  5. Create an issue for voting with title similar to "vote: tag v1.0.0-alpha.1 with the proposed commit. (see Issue #204
  6. Request a 👍or 👎from each maintainer, requesting details if they voted against, and opening a corresponding issue.
  7. Wait a max of 2 weeks for the vote pass, or sooner if a majority of maintainers approve.

Cut a Release

  1. Select [Draft a new release]
  2. [Choose a tag]: Create a new tag based on Alpha, RC or a final release: (v1.0.0-alpha.1, v1.0.0-rc.1, v1.0.0).
  3. [Target]: Select the voted commit in "Recent Commits".
  4. [Previous Tag]: Select the previous corresponding release.
    1. For alpha and rc releases, select the previous release within that release band (rc.1, select the latest alpha release).
    2. For final releases, select the previous full release: (v1.3.0, selects v1.1.0)
  5. [Generate Release Notes]: Edit for spelling and clarity.
  6. [Release title] Set to the same value as the tag and voted issue.
  7. [Set as a pre-release]: Set if the release is an alpha or rc.
    Do not set for final release.
  8. [Set as the latest release]: To bring focus to the latest, always check this box.
  9. Announce the release in the community.