+44
.github/workflows/publish.yml
+44
.github/workflows/publish.yml
···
1
+
name: Build and push release
2
+
on: push
3
+
4
+
jobs:
5
+
build:
6
+
name: Build qbpm
7
+
runs-on: ubuntu-latest
8
+
steps:
9
+
- uses: actions/checkout@v4
10
+
with:
11
+
persist-credentials: false
12
+
- name: Set up Python
13
+
uses: actions/setup-python@v5
14
+
with:
15
+
python-version: "3.13"
16
+
- name: Install pypa/build
17
+
run: python3 -m pip install build --user
18
+
- name: Build wheel and source tarball
19
+
run: python3 -m build
20
+
- name: Upload package distribution
21
+
uses: actions/upload-artifact@v4
22
+
with:
23
+
name: package-dist
24
+
path: dist/
25
+
26
+
publish:
27
+
name: Publish qbpm release to PyPI
28
+
runs-on: ubuntu-latest
29
+
if: startsWith(github.ref, 'refs/tags')
30
+
needs:
31
+
- build
32
+
environment:
33
+
name: pypi
34
+
url: https://pypi.org/p/qbpm
35
+
permissions:
36
+
id-token: write
37
+
steps:
38
+
- name: Download package distribution
39
+
uses: actions/download-artifact@v4
40
+
with:
41
+
name: package-dist
42
+
path: dist/
43
+
- name: Publish package to PyPI
44
+
uses: pypa/gh-action-pypi-publish@release/v1