The manual release could be made with the scripts/publish.ps1. It supports 3 argumenbts:
- Version: the version try to release
- CommitMessage: the commit message we will use to tag the release
- DryRun: dry run without make any changes
Example:
.\scripts\publish.ps1 -Version test -DryRun 1
It does the followings:
- Bump-up version from
VERSION
- Setup the virtual env for release
- Run unit-test
- Build the release
- Publish to pypi (may ask username/password)
- Tag a version
After the execution, it tags a version to the local repo. We need to push to remote:
git push --tags
We can go to release page to make a new release with the pushed tag. We could use Generate release notes
button to generate from the predefined release notes.
Please don't forget to check Create a discussion for this release
checkbox
We could trigger the GitHub action to create a PR for Bump-up version.
We could trigger the GitHub action to publish a release.
It uses the PyPI API token, a private repo secret, to push the release.
TODO: we could create a GitHub action to build the tag and push it.
We need to create the tag by ourselves manually and push to the repo:
git tag -a $(cat ./VERSION)
git push --tags
TODO: we could create a GitHub action to create the release with the pushed tag.
We can go to release page to make a new release with the pushed tag. We could use Generate release notes
button to generate from the predefined release notes.
Please don't forget to check Create a discussion for this release
checkbox