--- /dev/null
+---
+name: PyPI release
+
+# yamllint disable-line rule:truthy
+on: push
+
+jobs:
+ publish:
+ if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v3
+ - name: Configure Python
+ uses: actions/setup-python@v4
+ with:
+ python-version: '3.8'
+ - name: Build package distribution files
+ run: >-
+ pipx run tox -e clean,build
+ - name: Configure TWINE
+ run: |
+ echo "TWINE_USERNAME=__token__" >> $GITHUB_ENV
+ echo "TWINE_PASSWORD=${{ secrets.PYPI_API_TOKEN }}" >> $GITHUB_ENV
+ - name: Publish to PyPI
+ run: >-
+ pipx run tox -e publish -- --repository pypi