Skip to content

Commit 88f1acd

Browse files
committed
Build artifacts for Wasmtime & Wasmer runtimes
1 parent 3a734f7 commit 88f1acd

File tree

2 files changed

+31
-7
lines changed

2 files changed

+31
-7
lines changed

.github/workflows/addon.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ jobs:
1616
fail-fast: false
1717
matrix:
1818
platform: [linux, osx, windows]
19+
runtime: [wasmtime, wasmer]
1920
include:
2021
- platform: linux
2122
os: ubuntu-latest
@@ -46,11 +47,12 @@ jobs:
4647
platform: ${{ matrix.platform }}
4748
target: ${{ env.TARGET }}
4849
cache-suffix: ${{ env.GODOT_REF }}
50+
scons-flags: "wasm_runtime=${{ matrix.runtime }}"
4951

5052
- name: Upload Artifact
5153
uses: actions/upload-artifact@v4
5254
with:
53-
name: ${{ matrix.platform }}
55+
name: ${{ matrix.platform }}-${{ matrix.runtime }}
5456
path: ${{ github.workspace }}/${{ env.LIBRARY_PATH }}/${{ matrix.platform }}
5557
if-no-files-found: error
5658

@@ -61,6 +63,7 @@ jobs:
6163
fail-fast: false
6264
matrix:
6365
platform: [linux, osx]
66+
runtime: [wasmtime, wasmer]
6467
include:
6568
- platform: linux
6669
os: ubuntu-latest
@@ -81,7 +84,7 @@ jobs:
8184
- name: Download Addon
8285
uses: actions/download-artifact@v4
8386
with:
84-
name: ${{ matrix.platform }}
87+
name: ${{ matrix.platform }}-${{ matrix.runtime }}
8588
path: ${{ github.workspace }}/${{ env.LIBRARY_PATH }}/${{ matrix.platform }}
8689

8790
- name: Run Tests
@@ -96,6 +99,7 @@ jobs:
9699
fail-fast: false
97100
matrix:
98101
platform: [linux, osx]
102+
runtime: [wasmtime, wasmer]
99103
include:
100104
- platform: linux
101105
os: ubuntu-latest
@@ -116,7 +120,7 @@ jobs:
116120
- name: Download Addon
117121
uses: actions/download-artifact@v4
118122
with:
119-
name: ${{ matrix.platform }}
123+
name: ${{ matrix.platform }}-${{ matrix.runtime }}
120124
path: ${{ github.workspace }}/${{ env.LIBRARY_PATH }}/${{ matrix.platform }}
121125

122126
- name: Export Tests

.github/workflows/release.yml

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,29 +11,49 @@ jobs:
1111
release:
1212
name: Release
1313
runs-on: ubuntu-latest
14+
strategy:
15+
fail-fast: false
16+
matrix:
17+
runtime: [wasmtime, wasmer]
1418
steps:
1519
- name: Checkout
1620
uses: actions/checkout@v4
1721

1822
- name: Clean Binaries
1923
run: find ${{ github.workspace }}/${{ env.LIBRARY_PATH }} -mindepth 1 -type d -exec rm -rf {} +
2024

25+
# Non-standard download action required for cross-workflow downloads
2126
- name: Download Artifact
22-
# Non-standard download action required for cross-workflow downloads
23-
uses: dawidd6/action-download-artifact@v6
27+
uses: dawidd6/action-download-artifact@v11
2428
with:
2529
workflow: addon.yml
2630
commit: ${{ github.sha }}
31+
name: \w+-${{ matrix.runtime }}
32+
name_is_regexp: true
2733
path: ${{ github.workspace }}/${{ env.LIBRARY_PATH }}
2834

35+
# Artifacts are placed in directories matching their names i.e. with runtime suffix
36+
- name: Strip Runtime Suffix
37+
run: |
38+
cd ${{ github.workspace }}/${{ env.LIBRARY_PATH }}
39+
for dir in */; do
40+
if [ -d "$dir" ]; then
41+
dirname="${dir%/}"
42+
newname="${dirname%-${{ matrix.runtime }}}"
43+
if [ "$dirname" != "$newname" ]; then
44+
mv "$dirname" "$newname"
45+
fi
46+
fi
47+
done
48+
2949
- name: Prepare Asset
3050
run: |
3151
mkdir godot-wasm
3252
mv addons godot-wasm
3353
cd ${{ github.workspace }}
34-
zip -r ${{ env.RELEASE_ASSET }} godot-wasm
54+
zip -r asset-library-${{ matrix.runtime }}.zip godot-wasm
3555
3656
- name: Create Release
3757
uses: softprops/action-gh-release@v2
3858
with:
39-
files: ${{ github.workspace }}/${{ env.RELEASE_ASSET }}
59+
files: ${{ github.workspace }}/asset-library-${{ matrix.runtime }}.zip

0 commit comments

Comments
 (0)