Explorar o código

chore: add release workflow (#397)

cachho %!s(int64=2) %!d(string=hai) anos
pai
achega
abf99ce5ea
Modificáronse 1 ficheiros con 28 adicións e 16 borrados
  1. 28 16
      .github/workflows/cd.yml

+ 28 - 16
.github/workflows/cd.yml

@@ -1,24 +1,36 @@
-name: cd
+name: Publish Python 🐍 distributions 📦 to PyPI and TestPyPI
 
 on:
   release:
-    types:
-      - published
-
-permissions:
-  id-token: write
-  contents: read
+    types: [published] # This will trigger the workflow when you create a new release
 
 jobs:
-  publish_to_pypi:
-    name: publish to pypi on new release
+  build-n-publish:
+    name: Build and publish Python 🐍 distributions 📦 to PyPI and TestPyPI
     runs-on: ubuntu-latest
+    permissions:
+      # IMPORTANT: this permission is mandatory for trusted publishing
+      id-token: write
     steps:
-      - uses: actions/checkout@v3
-      - uses: JRubics/poetry-publish@v1.16
-        name: Build and publish to PyPI
+      - uses: actions/checkout@v2
+
+      - name: Set up Python
+        uses: actions/setup-python@v2
         with:
-          pypi_token: ${{ secrets.PYPI_TOKEN }}
-          ignore_dev_requirements: "yes"
-          repository_url: https://upload.pypi.org/legacy/
-          repository_name: embedchain
+          python-version: 3.10
+
+      - name: Install pep517
+        run: |
+          python -m pip install pep517 --user
+
+      - name: Build a binary wheel and a source tarball
+        run: python -m pep517.build .
+
+      - name: Publish distribution 📦 to Test PyPI
+        uses: pypa/gh-action-pypi-publish@release/v1
+        with:
+          repository_url: https://test.pypi.org/legacy/
+
+      - name: Publish distribution 📦 to PyPI
+        if: startsWith(github.ref, 'refs/tags')
+        uses: pypa/gh-action-pypi-publish@release/v1