Skip to content

Commit 10ff73d

Browse files
committed
ci: build Linux wheels in separate jobs
1 parent 971228c commit 10ff73d

File tree

1 file changed

+60
-11
lines changed

1 file changed

+60
-11
lines changed

.github/workflows/deltachat-rpc-server.yml

Lines changed: 60 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,30 @@ jobs:
4646
path: result/bin/deltachat-rpc-server
4747
if-no-files-found: error
4848

49+
build_linux_wheel:
50+
name: Linux wheel
51+
strategy:
52+
fail-fast: false
53+
matrix:
54+
arch: [aarch64, armv7l, armv6l, i686, x86_64]
55+
runs-on: ubuntu-latest
56+
steps:
57+
- uses: actions/checkout@v5
58+
with:
59+
show-progress: false
60+
persist-credentials: false
61+
- uses: cachix/install-nix-action@0b0e072294b088b73964f1d72dfdac0951439dbd # v31
62+
63+
- name: Build deltachat-rpc-server wheels
64+
run: nix build .#deltachat-rpc-server-${{ matrix.arch }}-linux-wheel
65+
66+
- name: Upload wheel
67+
uses: actions/upload-artifact@v5
68+
with:
69+
name: deltachat-rpc-server-${{ matrix.arch }}-linux
70+
path: result/*.whl
71+
if-no-files-found: error
72+
4973
build_windows:
5074
name: Windows
5175
strategy:
@@ -123,7 +147,7 @@ jobs:
123147

124148
publish:
125149
name: Build wheels and upload binaries to the release
126-
needs: ["build_linux", "build_windows", "build_macos"]
150+
needs: ["build_linux", "build_linux_wheel", "build_windows", "build_macos"]
127151
environment:
128152
name: pypi
129153
url: https://pypi.org/p/deltachat-rpc-server
@@ -144,30 +168,60 @@ jobs:
144168
name: deltachat-rpc-server-aarch64-linux
145169
path: deltachat-rpc-server-aarch64-linux.d
146170

171+
- name: Download Linux aarch64 wheel
172+
uses: actions/download-artifact@v6
173+
with:
174+
name: deltachat-rpc-server-aarch64-linux-wheel
175+
path: deltachat-rpc-server-aarch64-linux-wheel.d
176+
147177
- name: Download Linux armv7l binary
148178
uses: actions/download-artifact@v6
149179
with:
150180
name: deltachat-rpc-server-armv7l-linux
151181
path: deltachat-rpc-server-armv7l-linux.d
152182

183+
- name: Download Linux armv7l wheel
184+
uses: actions/download-artifact@v6
185+
with:
186+
name: deltachat-rpc-server-armv7l-linux-wheel
187+
path: deltachat-rpc-server-armv7l-linux-wheel.d
188+
153189
- name: Download Linux armv6l binary
154190
uses: actions/download-artifact@v6
155191
with:
156192
name: deltachat-rpc-server-armv6l-linux
157193
path: deltachat-rpc-server-armv6l-linux.d
158194

195+
- name: Download Linux armv6l wheel
196+
uses: actions/download-artifact@v6
197+
with:
198+
name: deltachat-rpc-server-armv6l-linux-wheel
199+
path: deltachat-rpc-server-armv6l-linux-wheel.d
200+
159201
- name: Download Linux i686 binary
160202
uses: actions/download-artifact@v6
161203
with:
162204
name: deltachat-rpc-server-i686-linux
163205
path: deltachat-rpc-server-i686-linux.d
164206

207+
- name: Download Linux i686 wheel
208+
uses: actions/download-artifact@v6
209+
with:
210+
name: deltachat-rpc-server-i686-linux-wheel
211+
path: deltachat-rpc-server-i686-linux-wheel.d
212+
165213
- name: Download Linux x86_64 binary
166214
uses: actions/download-artifact@v6
167215
with:
168216
name: deltachat-rpc-server-x86_64-linux
169217
path: deltachat-rpc-server-x86_64-linux.d
170218

219+
- name: Download Linux x86_64 wheel
220+
uses: actions/download-artifact@v6
221+
with:
222+
name: deltachat-rpc-server-x86_64-wheel
223+
path: deltachat-rpc-server-x86_64-wheel.d
224+
171225
- name: Download Win32 binary
172226
uses: actions/download-artifact@v6
173227
with:
@@ -228,16 +282,11 @@ jobs:
228282
- name: Build deltachat-rpc-server Python wheels
229283
run: |
230284
mkdir -p dist
231-
nix build .#deltachat-rpc-server-x86_64-linux-wheel
232-
cp result/*.whl dist/
233-
nix build .#deltachat-rpc-server-armv7l-linux-wheel
234-
cp result/*.whl dist/
235-
nix build .#deltachat-rpc-server-armv6l-linux-wheel
236-
cp result/*.whl dist/
237-
nix build .#deltachat-rpc-server-aarch64-linux-wheel
238-
cp result/*.whl dist/
239-
nix build .#deltachat-rpc-server-i686-linux-wheel
240-
cp result/*.whl dist/
285+
mv deltachat-rpc-server-aarch64-linux-wheel.d/*.whl dist/
286+
mv deltachat-rpc-server-armv7l-linux.d/*.whl dist/
287+
mv deltachat-rpc-server-armv6l-linux.d/*.whl dist/
288+
mv deltachat-rpc-server-i686-linux.d/*.whl dist/
289+
mv deltachat-rpc-server-x86_64-linux.d/*.whl dist/
241290
nix build .#deltachat-rpc-server-win64-wheel
242291
cp result/*.whl dist/
243292
nix build .#deltachat-rpc-server-win32-wheel

0 commit comments

Comments
 (0)