Skip to content

Publish to PyPI

Publish to PyPI #200

name: Publish to PyPI
on:
push:
branches:
- dev
- dev-minor
workflow_dispatch:
jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install poetry
working-directory: ./py
run: pip install poetry
- name: Bump version for dev branches (TestPyPI)
if: github.event_name == 'push'
working-directory: ./py
run: |
version=$(poetry version -s)
new_version="${version}a$(date +'%Y%m%d%H%M')"
poetry version $new_version
- name: Build and publish to TestPyPI
if: github.event_name == 'push'
working-directory: ./py
run: |
poetry config repositories.testpypi https://test.pypi.org/legacy/
poetry build
poetry config pypi-token.testpypi ${{ secrets.TEST_PYPI_API_TOKEN }}
poetry publish -r testpypi -vvv
env:
PYTHON_KEYRING_BACKEND: keyring.backends.null.Keyring
- name: Build and publish to PyPI
if: github.event_name == 'workflow_dispatch'
working-directory: ./py
run: |
poetry build
poetry config pypi-token.pypi ${{ secrets.PYPI_API_TOKEN }}
poetry publish -vvv
env:
PYTHON_KEYRING_BACKEND: keyring.backends.null.Keyring