Repository navigation
59 lines (55 loc) · 1.69 KB
/
Copy pathtest.yml
File metadata and controls
59 lines (55 loc) · 1.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
name: Test
on:
pull_request:
workflow_dispatch:
push:
branches: [main, release-**]
permissions:
contents: read
checks: write
pull-requests: write
jobs:
lint-and-test:
name: "Lint and Test (Python ${{ matrix.python }})"
runs-on: warp-ubuntu-latest-x64-4x
strategy:
matrix:
python: [ "3.11", "3.12", "3.13", "3.14", "3.15" ]
env:
UV_PYTHON: ${{ matrix.python }}
steps:
- uses: actions/checkout@v4.4.0
- uses: extractions/setup-just@v2.0.0
- uses: astral-sh/setup-uv@v5.4.2
with:
enable-cache: true
- name: Install dependencies
run: just sync
- name: Build
run: just build
- name: Verify
run: just verify
no-extras:
# An ordinary user's install, `pip install restate-sdk`: no new dependencies, and the optional parts
# (restate.sessions' server, restate.agents' integrations) fail only when used, naming their extra.
name: "Install without extras (Python ${{ matrix.python }})"
runs-on: warp-ubuntu-latest-x64-4x
strategy:
matrix:
python: [ "3.11", "3.14" ]
env:
UV_PYTHON: ${{ matrix.python }}
steps:
- uses: actions/checkout@v4.4.0
- uses: astral-sh/setup-uv@v5.4.2
with:
enable-cache: true
- name: Build the wheel
run: uv build --wheel --out-dir dist
- name: Install it alone into a fresh environment
run: |
uv venv /tmp/plain
uv pip install --python /tmp/plain/bin/python dist/restate_sdk-*.whl
- name: Check it as an ordinary user gets it
working-directory: /tmp
run: /tmp/plain/bin/python -I "$GITHUB_WORKSPACE/scripts/check_no_extras.py"