From 311c53b57c2a8f1c84b358f307eb4a8121e14488 Mon Sep 17 00:00:00 2001 From: Matthias Geier Date: Sat, 4 May 2024 20:48:46 +0200 Subject: [PATCH] CI: Add "trusted publishing" workflow --- .github/workflows/publish.yml | 43 +++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 00000000..d57ae323 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,43 @@ +name: Build and publish to PyPI +on: push +jobs: + build: + name: Build distribution + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3" + - name: Install "build" + run: | + python -m pip install build + - name: Build a binary wheel and a source tarball + run: python -m build + - name: Store the distribution packages + uses: actions/upload-artifact@v4 + with: + name: dist + path: dist + publish: + name: Upload release to PyPI + if: startsWith(github.ref, 'refs/tags/') + needs: + - build + runs-on: ubuntu-latest + environment: + name: pypi + url: https://pypi.org/p/nbsphinx + permissions: + id-token: write + steps: + - name: Get the artifacts + uses: actions/download-artifact@v3 + with: + name: dist + path: dist + - name: Publish package distributions to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + print-hash: true