Skip to content

Tool for publishing a Python package to PyPI from a GitHub Release

License

Notifications You must be signed in to change notification settings

ietf-tools/pypi-publish

PYPI PUBLISH

Release License npm node-current

Tool for publishing a Python package to PyPI from a GitHub Release

This tool is a CLI which provides the following automation:

  • Fetch the list of available repositories and releases
  • Download the latest build of a Python package
  • Install Twine (if not already installed)
  • Sign and publish the package to PyPI (or TestPyPI)

Requirements

This tool assumes that you have the signing key used to sign Python packages already configured on your system. It will be used when publishing the package to PyPI.

Usage

Install the @ietf-tools/pypi-publish NPM package globally using:

npm install -g @ietf-tools/pypi-publish

Then run (from any location):

pypi-publish

Enter the necessary info as prompted.

CLI Arguments (optional)

These arguments can also be passed to the CLI to automate values and bypass the questions. All arguments are optional.

Short Long Description
-t TARGET --target=TARGET Target PyPI repository [pypi, testpypi]
-a TOKEN --token=TOKEN PyPI API Token
-i IDENTITY --identity=IDENTITY GPG identity to use for package signing
-p PROJECT --project=PROJECT GitHub project (repository) to publish from
-r RELEASE --release=RELEASE GitHub release to publish
--python-path=PATH Path to Python executable
-h --help Display usage + help message and exit
-v --version Display CLI version and exit

License

BSD-3-Clause