Pekko Release Process ‐ ATR CI‐assisted release - apache/pekko-site GitHub Wiki

The release is managed by a Release Manager (a human) and involves building and deploying artifacts (including generating SHA digests and PGP signatures for them). Emails must be sent to Apache mailing lists and a vote arranged.

The release be only finalized after passing the vote. This involves moving the release artifacts to official Apache release repo (from the staging repo). We also need to release the Maven artifacts. The Pekko web site must be updated to include links to download the release. Emails are also sent out announcing the release.

Relevant Reading

Agree to start the Release Process

Checklist

  • Start a Release notes PR (we don't require it to be merged before tagging the release, though)
  • Releasing off a branch other than main branch?
    • We don't tend to backport changes like year changes in NOTICE files and dependency version updates
    • so if you are releasing from a branch like 1.0.x, 1.1.x, etc., you should check if we need to update the year in the NOTICE files (check also the 'legal' directory)
    • see if there are patch level dependency updates that can be added - maybe only if they fix CVEs and only if they don't require much uptake other than changing changing the jar version
  • Start the release on https://release-test.apache.org/

Stage Release Candidate artifacts

  • Use git status to ensure you are using the 'main' branch
  • Git tag - eg git tag v1.0.0-RC1, git push origin tag v1.0.0-RC1
  • Run the "Stage the source tarball to ATR" and "Stage the binary jars to nexus" parts of the Stage Release Candidate action for this tag

Organise Pekko review and vote

  • Once the artifacts have been correctly uploaded to ATR and Nexus, run the "Generate vote email template" part and view its output
  • Copy the vote email template from the GitHub Action output and use it to start the vote via https://release-test.apache.org/

Pekko

Vote Rules

  • anyone can vote
  • we need a minimum of 3 approvals from Pekko PMC members
  • the review must include independently reproducing these artifacts.
  • if we have more approvals than disapprovals, the vote passes (as long we have more approvals than disapprovals among all voters), eg 3 +1s and 2 -1s is a vote for release
  • the vote can be cancelled by the Release Manager if there is a serious flaw found in the release candidate

If the Vote Fails

If the Vote Succeeds