name: Release to PyPI on: release: types: [created] workflow_dispatch: jobs: pypi_publish: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Set up Python 3.10 uses: actions/setup-python@v5 with: python-version: '3.10' - name: Install Tools run: | python -m pip install --upgrade pip pip install build packaging setuptools wheel twine if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - name: Build and Publish env: TWINE_USERNAME: __token__ TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }} run: | python3 -m build --wheel --no-isolation twine upload dist/*