Skip to content

Latest commit

 

History

History
40 lines (31 loc) · 2.37 KB

RELEASE.md

File metadata and controls

40 lines (31 loc) · 2.37 KB

Release Process

Pack follows a 6 week release cadence, composed of 3 phases:

Development

Our development flow is detailed in Development

Feature Complete

Process

5 business days prior to a scheduled release, we enter feature complete. A release branch (in the form release/<VERSION>) is created, and used for User Acceptance testing (UAT).

During this period, relevant changes may be merged into the release branch, based on assessment by the pack maintainers of the impact, effort and risk of including the changes. Any other change may get merged into main through the normal process, and will make it into the next release.

Roles

Release Manager

One of the maintainers is designated as the release manager. They communicate the release status to the working group meetings, schedule additional meetings with the pack maintainers as needed, and finalize the release. They also take care of whatever release needs may arise.

Release Finalization

The release manager will:

  • Create a github release, containing the artifacts, release notes, and a migration guide (if necessary), documenting breaking changes, and providing actions to migrate from prior versions.
  • Tag the release branch as v<version>
  • Merge the release branch into main
  • Send out release notifications, if deemed necessary, on

For more information, see the release process RFC

Manual Releasing

We release pack to a number of systems, including homebrew, docker, and archlinux. All of our delivery pipelines have workflow_dispatch triggers, if a maintainer needs to manually trigger them. To activate it, go to the actions page, and select the desired workflow. Run it by providing the pack version to release, in the format v<version>.