name: Publish to PyPI on: release: types: [published] jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: "3.12" - run: pip install -e ".[test]" || pip install -e . - run: pip install pytest - run: pytest -q publish: needs: test runs-on: ubuntu-latest environment: pypi permissions: id-token: write steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: "3.12" - run: pip install build - run: python -m build - uses: pypa/gh-action-pypi-publish@release/v1