jupyterhub-kubespawner
is a package available on
PyPI. These are instructions
on how to make a release on PyPI.
For you to follow along according to these instructions, you need:
- To have push rights to the kubespawner GitHub repository.
-
Update CHANGELOG.md. Doing this can be made easier with the help of the choldgraf/github-activity utility to list merged PRs and generate a list of contributors.
github-activity jupyterhub/kubespawner --output tmp-changelog-prep.md
-
Once the changelog is up to date, checkout master and make sure it is up to date and clean.
ORIGIN=${ORIGIN:-origin} # set to the canonical remote, e.g. 'upstream' if 'origin' is not the official repo git checkout master git fetch $ORIGIN master git reset --hard $ORIGIN/master # WARNING! This next command deletes any untracked files in the repo git clean -xfd
-
Update version and tag, and return to a dev version, with
bump2version
.VERSION=... # e.g. 1.2.3 bump2version --tag --new-version $VERSION - bump2version --no-tag patch # verify tags, commits, and version tagged git log
-
Push your two commits to master along with the annotated tags referencing commits on master. TravisCI will trigger automatic deployment of the pushed tag.
# pushing the commits standalone allows you to # ensure you don't end up only pushing the tag # because the commit were rejected but the tag # wasn't git push $ORIGIN master # if you could push the commits without issues # go ahead and push the tag also git push --follow-tags $ORIGIN master
-
Verify that the GitHub workflow triggers and succeeds and that that PyPI received a new release.