name: Publish plotstyle on: push: tags: - "plotstyle-v*" permissions: contents: read packages: write jobs: publish: name: build-and-publish runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: astral-sh/setup-uv@v9.0.0 with: python-version: "3.11" - name: Verify tag matches package version run: | tag_version="${GITHUB_REF_NAME#plotstyle-v}" pkg_version="$(uv version --short --package plotstyle)" if [ "$tag_version" != "$pkg_version" ]; then echo "Tag plotstyle-v$tag_version does not match pyproject.toml version $pkg_version" >&2 exit 1 fi - name: Build wheel and sdist run: uv build --package plotstyle -o dist - name: Publish to Gitea package registry env: UV_PUBLISH_USERNAME: ${{ github.actor }} UV_PUBLISH_PASSWORD: ${{ secrets.GITHUB_TOKEN }} run: uv publish --publish-url "${{ github.server_url }}/api/packages/${{ github.repository_owner }}/pypi" dist/*