Skip to content

Latest commit

 

History

History
47 lines (33 loc) · 1.69 KB

RELEASING.md

File metadata and controls

47 lines (33 loc) · 1.69 KB

Releasing

Releases of globus-compute-sdk and globus-compute-endpoint are always done with a single version number, even when only one package has changes.

The process is partially automated with tools to help along the way.

Prerequisites

You must have the following tools installed and available:

  • git
  • scriv
  • tox

You will also need the following credentials:

  • a configured GPG key in git in order to create signed tags
  • pypi credentials for use with twine (e.g. a token in ~/.pypirc) valid for publishing globus-compute-sdk and globus-compute-endpoint

Procedure

  1. Bump versions of both packages to a new latest version number. This is the next higher alpha version number like 2.16.0a1 if 2.16.0a0 already exists, or .<Y+1>.a0 if this will be the first alpha release for an upcoming production release when the existing PyPI version is ..
$EDITOR compute_sdk/globus_compute_sdk/version.py compute_endpoint/setup.py compute_endpoint/globus_compute_endpoint/version.py
  1. Update the changelog by running scriv collect --edit

  2. Add and commit the changes to version numbers and changelog files (including the removal of changelog.d/ files), e.g. as follows

git add changelog.d/ docs/changelog.rst
git add compute_sdk/globus_compute_sdk/version.py compute_endpoint/setup.py compute_endpoint/globus_compute_endpoint/version.py
git commit -m 'Bump versions and changelog for release'
git push
  1. Run the release script ./release.sh from the repo root. This will use tox and your pypi credentials and will create a signed release tag. At the end of this step, new packages will be published to pypi and the tag to GitHub.