summaryrefslogtreecommitdiffstatshomepage
path: root/.github/workflows/publish.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/publish.yml')
-rw-r--r--.github/workflows/publish.yml37
1 files changed, 37 insertions, 0 deletions
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
new file mode 100644
index 0000000..a27cf96
--- /dev/null
+++ b/.github/workflows/publish.yml
@@ -0,0 +1,37 @@
+name: Publish
+
+on:
+ workflow_call:
+ workflow_dispatch:
+
+jobs:
+ publish:
+ runs-on: ubuntu-latest
+ name: Publish
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v6
+ with:
+ fetch-depth: 0
+ - name: Set up Python
+ uses: actions/setup-python@v6
+ with:
+ python-version: '3.x'
+ - name: Verify package can be installed
+ run: pip install -q .
+ - name: Install package builder
+ run: pip install -q --upgrade build
+ - name: Build package
+ run: python -m build
+ - name: Publish as artifact
+ uses: actions/upload-artifact@v7
+ with:
+ name: dist
+ path: dist
+ if-no-files-found: error
+ - name: Publish to PyPI
+ if: startsWith(github.ref, 'refs/tags/')
+ uses: pypa/gh-action-pypi-publish@release/v1
+ with:
+ user: __token__
+ password: '${{ secrets.PYPI_API_TOKEN }}'