Skip to content

Latest commit

 

History

History
62 lines (43 loc) · 1.78 KB

RELEASING.md

File metadata and controls

62 lines (43 loc) · 1.78 KB

RELEASING

Prereqs

Procedure

  • Make sure your repo is on main and up to date; git checkout main; git pull

  • Read changelog.d/ and decide if the release is MINOR or PATCH

  • (optional) Set the version in the SDK_VERSION env var, for use in the following steps. SDK_VERSION=...

  • Decide on the new version number and create a branch; git checkout -b release-$SDK_VERSION

  • Update the version in src/globus_sdk/version.py

  • Update metadata and changelog, then verify changes in changelog.rst

make prepare-release
$EDITOR changelog.rst
  • Add changed files; git add changelog.d/ changelog.rst src/globus_sdk/version.py

  • Commit; git commit -m 'Bump version and changelog for release'

  • Push the release branch; git push -u origin release-$SDK_VERSION

  • Open a PR for review; gh pr create --base main --title "Release v$SDK_VERSION"

  • After any changes and approval, merge the PR, checkout main, and pull; git checkout main; git pull

  • Tag the release; make tag-release This will run a workflow to publish to test-pypi.

  • Create a GitHub release with a copy of the changelog. This will run a workflow to publish to pypi.

Generate the release body by running

./scripts/changelog2md.py

or create the release via the GitHub CLI

./scripts/changelog2md.py | \
  gh release create $SDK_VERSION --title "v$SDK_VERSION" --notes-file -
  • Send an email announcement to the Globus Discuss list with highlighted changes and a link to the GitHub release page. (If the Globus CLI is releasing within a short interval, combine both announcements into a single email notice.)