Skip to content

Commit 83fb472

Browse files
committed
ci: smoke test python source installs
1 parent ff59a92 commit 83fb472

3 files changed

Lines changed: 42 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,3 +55,14 @@ jobs:
5555
python -m pip install --upgrade pip
5656
python -m pip install dist/*.whl
5757
python -c 'from calle import CalleClient; print(CalleClient)'
58+
59+
- name: Smoke test source distribution install
60+
run: |
61+
set -euo pipefail
62+
63+
smoke_dir="$(mktemp -d)"
64+
python -m venv "$smoke_dir/.venv"
65+
. "$smoke_dir/.venv/bin/activate"
66+
python -m pip install --upgrade pip
67+
python -m pip install dist/*.tar.gz
68+
python -c 'from calle import CalleClient; print(CalleClient)'

.github/workflows/publish-python.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,28 @@ jobs:
6464
- name: Check distribution metadata
6565
run: uvx twine check dist/*
6666

67+
- name: Smoke test wheel install
68+
run: |
69+
set -euo pipefail
70+
71+
smoke_dir="$(mktemp -d)"
72+
python -m venv "$smoke_dir/.venv"
73+
. "$smoke_dir/.venv/bin/activate"
74+
python -m pip install --upgrade pip
75+
python -m pip install dist/*.whl
76+
python -c 'from calle import CalleClient; print(CalleClient)'
77+
78+
- name: Smoke test source distribution install
79+
run: |
80+
set -euo pipefail
81+
82+
smoke_dir="$(mktemp -d)"
83+
python -m venv "$smoke_dir/.venv"
84+
. "$smoke_dir/.venv/bin/activate"
85+
python -m pip install --upgrade pip
86+
python -m pip install dist/*.tar.gz
87+
python -c 'from calle import CalleClient; print(CalleClient)'
88+
6789
- name: Publish with package index token
6890
if: inputs.auth == 'token'
6991
env:

RELEASE.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,15 @@ uv run mypy src/calle
2727
uv run python -m py_compile examples/create_and_wait.py examples/webhook_server.py
2828
uv build
2929
uvx twine check dist/*
30+
python -m venv /tmp/calle-python-sdk-smoke
31+
. /tmp/calle-python-sdk-smoke/bin/activate
32+
python -m pip install dist/*.whl
33+
python -c 'from calle import CalleClient; print(CalleClient)'
34+
deactivate
35+
python -m venv /tmp/calle-python-sdk-sdist-smoke
36+
. /tmp/calle-python-sdk-sdist-smoke/bin/activate
37+
python -m pip install dist/*.tar.gz
38+
python -c 'from calle import CalleClient; print(CalleClient)'
3039
```
3140

3241
The CI workflow also installs the built wheel in a fresh virtual environment and

0 commit comments

Comments
 (0)