65
65
fail-fast : false
66
66
matrix :
67
67
# Use Ubuntu 20.04 / macOS 13 x86_64 / macOS 14 arm64 + Python 3.10 to build SpiderMonkey
68
- os : [ 'ubuntu-20.04', 'macos-13', 'macos-14', 'pi ' ] # macOS 14 runner exclusively runs on M1 hardwares
69
- # see https://github.blog/changelog/2024-01-30-github-actions-macos-14-sonoma-is-now-available
68
+ os : [ 'ubuntu-20.04', 'macos-13', 'macos-14', 'ubuntu-22.04-arm ' ] # macOS 14 runner exclusively runs on M1 hardwares
69
+ # see https://github.blog/changelog/2024-01-30-github-actions-macos-14-sonoma-is-now-available
70
70
python_version : [ '3.10' ]
71
71
runs-on : ${{ matrix.os }}
72
72
steps :
@@ -132,7 +132,7 @@ jobs:
132
132
strategy :
133
133
fail-fast : false
134
134
matrix :
135
- os : [ 'ubuntu-20.04', 'macos-13', 'macos-14', 'windows-2022', 'pi ' ]
135
+ os : [ 'ubuntu-20.04', 'macos-13', 'macos-14', 'windows-2022', 'ubuntu-22.04-arm ' ]
136
136
python_version : [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13' ]
137
137
runs-on : ${{ matrix.os }}
138
138
steps :
@@ -144,9 +144,6 @@ jobs:
144
144
- uses : actions/setup-python@v5
145
145
with :
146
146
python-version : ${{ matrix.python_version }}
147
- - name : Remove old poetry cache
148
- run : rm -rf ~/.cache/pypoetry
149
- if : ${{ matrix.os == 'pi' }}
150
147
- name : Setup Poetry
151
148
uses : snok/install-poetry@v1
152
149
with :
@@ -180,7 +177,7 @@ jobs:
180
177
BUILD_DOCS=1 BUILD_TYPE=None poetry install
181
178
- name : Upload Doxygen-generated docs as CI artifacts
182
179
if : ${{ matrix.os == 'ubuntu-20.04' && matrix.python_version == '3.11' }}
183
- uses : actions/upload-artifact@v3
180
+ uses : actions/upload-artifact@v4
184
181
with :
185
182
name : docs-${{ github.run_id }}-${{ github.sha }}
186
183
path : ./build/docs/html/
@@ -218,9 +215,9 @@ jobs:
218
215
mv "$file" "$(echo "$file" | sed -E 's/macosx_[0-9]+_[0-9]+/macosx_11_0/')";
219
216
done
220
217
- name : Upload wheel as CI artifacts
221
- uses : actions/upload-artifact@v3
218
+ uses : actions/upload-artifact@v4
222
219
with :
223
- name : wheel-${{ github.run_id }}-${{ github.sha }}
220
+ name : wheel-${{ github.run_id }}-${{ github.sha }}-${{ runner.os }}_${{ runner.arch }}_Python${{ matrix.python_version }}
224
221
path : ./dist/
225
222
- name : Set cores to get stored in /cores
226
223
if : ${{ matrix.os != 'windows-2022' }}
@@ -257,7 +254,7 @@ jobs:
257
254
with :
258
255
credentials : " admin:admin"
259
256
- name : Upload core dumps as CI artifacts
260
- uses : actions/upload-artifact@v3
257
+ uses : actions/upload-artifact@v4
261
258
if : ${{ matrix.os != 'windows-2022' && failure() }}
262
259
# TODO (Caleb Aikens) figure out how to get Windows core dumps
263
260
with :
@@ -282,9 +279,9 @@ jobs:
282
279
poetry build --format=sdist
283
280
ls -lah ./dist/
284
281
- name : Upload sdist as CI artifacts
285
- uses : actions/upload-artifact@v3
282
+ uses : actions/upload-artifact@v4
286
283
with :
287
- name : wheel-${{ github.run_id }}-${{ github.sha }}
284
+ name : wheel-${{ github.run_id }}-${{ github.sha }}-sdist
288
285
path : ./dist/
289
286
check-install-from-sdist :
290
287
needs : sdist
@@ -294,9 +291,9 @@ jobs:
294
291
with :
295
292
python-version : ' 3.10'
296
293
- name : Download wheels built
297
- uses : actions/download-artifact@v3
294
+ uses : actions/download-artifact@v4
298
295
with :
299
- name : wheel-${{ github.run_id }}-${{ github.sha }}
296
+ name : wheel-${{ github.run_id }}-${{ github.sha }}-sdist
300
297
path : ./dist/
301
298
- run : pip install ./dist/pythonmonkey-*.tar.gz
302
299
publish :
@@ -310,9 +307,10 @@ jobs:
310
307
python-version : ' 3.9'
311
308
- run : pip install twine
312
309
- name : Download wheels built
313
- uses : actions/download-artifact@v3
310
+ uses : actions/download-artifact@v4
314
311
with :
315
- name : wheel-${{ github.run_id }}-${{ github.sha }}
312
+ pattern : wheel-${{ github.run_id }}-${{ github.sha }}-*
313
+ merge-multiple : true
316
314
path : ./dist/
317
315
- run : ls -lah ./dist/
318
316
- name : Publish package
@@ -335,12 +333,13 @@ jobs:
335
333
steps :
336
334
# don't checkout
337
335
- name : Download wheels built
338
- uses : actions/download-artifact@v3
336
+ uses : actions/download-artifact@v4
339
337
with :
340
- name : wheel-${{ github.run_id }}-${{ github.sha }}
338
+ pattern : wheel-${{ github.run_id }}-${{ github.sha }}-*
339
+ merge-multiple : true
341
340
path : ./dist/
342
341
- name : Download docs html generated by Doxygen
343
- uses : actions/download-artifact@v3
342
+ uses : actions/download-artifact@v4
344
343
with :
345
344
name : docs-${{ github.run_id }}-${{ github.sha }}
346
345
path : ./docs/
@@ -374,12 +373,12 @@ jobs:
374
373
html+="<li><a href="pminit/">pminit</a></li>"
375
374
html+="</body></html>"
376
375
echo "$html" > ./index.html
377
- - uses : actions/upload-pages-artifact@v1
376
+ - uses : actions/upload-pages-artifact@v3
378
377
with :
379
378
path : ./
380
379
- name : Deploy to GitHub Pages
381
380
id : deployment
382
- uses : actions/deploy-pages@v2
381
+ uses : actions/deploy-pages@v4
383
382
publish-archive :
384
383
# Publish to ⊇istributive's archive server (https://archive.distributed.computer/releases/pythonmonkey/)
385
384
needs : [build-and-test, sdist]
@@ -391,12 +390,13 @@ jobs:
391
390
steps :
392
391
# no need to checkout
393
392
- name : Download wheels built
394
- uses : actions/download-artifact@v3
393
+ uses : actions/download-artifact@v4
395
394
with :
396
- name : wheel-${{ github.run_id }}-${{ github.sha }}
395
+ pattern : wheel-${{ github.run_id }}-${{ github.sha }}-*
396
+ merge-multiple : true
397
397
path : ./
398
398
- name : Download docs html generated by Doxygen
399
- uses : actions/download-artifact@v3
399
+ uses : actions/download-artifact@v4
400
400
with :
401
401
name : docs-${{ github.run_id }}-${{ github.sha }}
402
402
path : ./docs/
0 commit comments