diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml new file mode 100644 index 0000000..151fd97 --- /dev/null +++ b/.github/workflows/publish.yaml @@ -0,0 +1,34 @@ +name: Publish + +on: + push: + tags: + # Publish on any tag starting with a `v`, e.g., v0.1.0 + - v* +permissions: + contents: read + +jobs: + run: + runs-on: ubuntu-latest + environment: + name: pypi + permissions: + id-token: write + contents: read + steps: + - name: Checkout + uses: actions/checkout@v6 + - name: Install uv + uses: astral-sh/setup-uv@v7 + - name: Install Python 3.14 + run: uv python install 3.14 + - name: Build + run: uv build + # # Check that basic features work and we didn't miss to include crucial files + # - name: Smoke test (wheel) + # run: uv run --isolated --no-project --with dist/*.whl tests/smoke_test.py + # - name: Smoke test (source distribution) + # run: uv run --isolated --no-project --with dist/*.tar.gz tests/smoke_test.py + - name: Publish + run: uv publish