name: Publish Python package on: push: tags: - "v*" workflow_dispatch: jobs: publish: runs-on: ubuntu-latest steps: - name: Check out source uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v5 with: python-version: "3.12" - name: Install packaging tools run: python -m pip install --upgrade build twine - name: Build distributions run: python -m build - name: Validate distributions run: python -m twine check dist/* - name: Upload to Gitea PyPI env: TWINE_USERNAME: ${{ secrets.GITEA_PACKAGE_USER }} TWINE_PASSWORD: ${{ secrets.GITEA_PACKAGE_TOKEN }} run: >- python -m twine upload --repository-url https://gitea.coulomb.social/api/packages/coulomb/pypi dist/*