name: Build & Publish Package on: push: tags: - "v*.*.*" # triggers on version tags like v0.1.0, v1.2.3 workflow_dispatch: # allows manual trigger from the Gitea UI jobs: publish: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install uv uses: astral-sh/setup-uv@v5 - name: Build package run: uv build - name: Publish to Gitea run: | uv publish \ --publish-url "${{ vars.REGISTRY_URL }}/api/packages/${{ github.repository_owner }}/pypi" \ --username "${{ github.repository_owner }}" \ --password "${{ secrets.ACTION_ACCESS_TOKEN }}"