Skip to content

Commit dc1765a

Browse files
authored
ci: add more wheels (#132)
Closes #53
1 parent 097a627 commit dc1765a

File tree

3 files changed

+48
-2
lines changed

3 files changed

+48
-2
lines changed

.github/workflows/docs.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ jobs:
2323
- uses: actions/checkout@v4
2424
with:
2525
fetch-depth: 0 # to get gh-pages
26+
submodules: true
2627
- uses: astral-sh/setup-uv@v3
2728
- uses: Swatinem/rust-cache@v2
2829
- name: Install libduckdb

.github/workflows/labels.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ jobs:
1818
UV_NO_SYNC: true
1919
steps:
2020
- uses: actions/checkout@v4
21+
with:
22+
submodules: true
2123
- uses: astral-sh/setup-uv@v3
2224
- uses: Swatinem/rust-cache@v2
2325
- name: Install dev deps

.github/workflows/pypi.yaml

Lines changed: 45 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,27 @@ concurrency:
1414
cancel-in-progress: false
1515

1616
jobs:
17-
# TODO add bundled builds for platforms where we don't have pre-built libraries
1817
linux:
19-
runs-on: ubuntu-22.04
18+
runs-on: ubuntu-latest
2019
strategy:
2120
matrix:
2221
platform:
2322
- target: x86_64
2423
manylinux: auto
24+
- target: x86
25+
manylinux: auto
2526
- target: aarch64
2627
manylinux: "2_28"
28+
- target: armv7
29+
manylinux: auto
30+
- target: s390x
31+
manylinux: auto
32+
- target: ppc64le
33+
manylinux: auto
2734
steps:
2835
- uses: actions/checkout@v4
36+
with:
37+
submodules: true
2938
- uses: astral-sh/setup-uv@v5
3039
- name: Install Python
3140
run: uv python install 3.11
@@ -42,6 +51,35 @@ jobs:
4251
name: wheels-linux-${{ matrix.platform.target }}
4352
path: dist
4453

54+
musllinux:
55+
runs-on: ubuntu-latest
56+
strategy:
57+
matrix:
58+
platform:
59+
- target: x86_64
60+
- target: x86
61+
- target: aarch64
62+
- target: armv7
63+
steps:
64+
- uses: actions/checkout@v4
65+
with:
66+
submodules: true
67+
- uses: astral-sh/setup-uv@v5
68+
- name: Install Python
69+
run: uv python install 3.11
70+
- name: Build wheels
71+
uses: PyO3/maturin-action@v1
72+
with:
73+
target: ${{ matrix.platform.target }}
74+
args: --release --out dist -i 3.11 -F pyo3/abi3-py311 -F duckdb-bundled
75+
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
76+
manylinux: musllinux_1_2
77+
- name: Upload wheels
78+
uses: actions/upload-artifact@v4
79+
with:
80+
name: wheels-musllinux-${{ matrix.platform.target }}
81+
path: dist
82+
4583
macos:
4684
runs-on: ${{ matrix.platform.runner }}
4785
strategy:
@@ -53,6 +91,8 @@ jobs:
5391
target: aarch64
5492
steps:
5593
- uses: actions/checkout@v4
94+
with:
95+
submodules: true
5696
- uses: astral-sh/setup-uv@v5
5797
- name: Install Python
5898
run: uv python install 3.11
@@ -72,6 +112,8 @@ jobs:
72112
runs-on: ubuntu-latest
73113
steps:
74114
- uses: actions/checkout@v4
115+
with:
116+
submodules: true
75117
- name: Build sdist
76118
uses: PyO3/maturin-action@v1
77119
with:
@@ -90,6 +132,7 @@ jobs:
90132
needs:
91133
- sdist
92134
- linux
135+
- musllinux
93136
- macos
94137
environment:
95138
name: pypi

0 commit comments

Comments
 (0)