11name : build
2+
23env :
34 DEBUG : napi:*
45 APP_NAME : exec
56 CARGO_INCREMENTAL : ' 1'
7+
68permissions :
79 contents : write
810 id-token : write
@@ -20,11 +22,16 @@ permissions:
2022 - .prettierignore
2123 - .prettierrc.yml
2224 pull_request : null
25+
2326concurrency :
2427 group : ${{ github.workflow }}-${{ github.ref }}
2528 cancel-in-progress : true
29+
2630jobs :
2731 build :
32+ name : Build ${{ matrix.settings.target }} with node@22
33+ runs-on : ${{ matrix.settings.host }}
34+ if : ${{ github.ref == 'refs/head/main' || startsWith(github.ref, 'refs/tags/') }}
2835 strategy :
2936 fail-fast : false
3037 matrix :
5461 set -e &&
5562 rustup target add aarch64-unknown-linux-musl &&
5663 npm run build -- --target aarch64-unknown-linux-musl
57- name : stable - ${{ matrix.settings.target }} - node@22
58- runs-on : ${{ matrix.settings.host }}
5964 steps :
6065 - uses : actions/checkout@v4
6166 - name : Setup node
@@ -103,8 +108,9 @@ jobs:
103108 name : bindings-${{ matrix.settings.target }}
104109 path : ${{ env.APP_NAME }}.*.node
105110 if-no-files-found : error
111+
106112 test-macos-binding :
107- name : Test bindings on ${{ matrix.settings.target }} - node@${{ matrix.node }}
113+ name : Test ${{ matrix.settings.target }} with node@${{ matrix.node }}
108114 needs :
109115 - build
110116 strategy :
@@ -142,8 +148,9 @@ jobs:
142148 shell : bash
143149 - name : Test bindings
144150 run : npm test
151+
145152 test-linux-x64-gnu-binding :
146- name : Test bindings on Linux-x64-gnu - node@${{ matrix.node }}
153+ name : Test Linux-x64-gnu with node@${{ matrix.node }}
147154 needs :
148155 - build
149156 strategy :
@@ -173,8 +180,9 @@ jobs:
173180 shell : bash
174181 - name : Test bindings
175182 run : docker run --rm -v $(pwd):/build -w /build node:${{ matrix.node }}-slim npm test
183+
176184 test-linux-x64-musl-binding :
177- name : Test bindings on x86_64-unknown-linux-musl - node@${{ matrix.node }}
185+ name : Test x86_64-unknown-linux-musl with node@${{ matrix.node }}
178186 needs :
179187 - build
180188 strategy :
@@ -205,8 +213,9 @@ jobs:
205213 shell : bash
206214 - name : Test bindings
207215 run : docker run --rm -v $(pwd):/build -w /build node:${{ matrix.node }}-alpine npm test
216+
208217 test-linux-aarch64-gnu-binding :
209- name : Test bindings on aarch64-unknown-linux-gnu - node@${{ matrix.node }}
218+ name : Test aarch64-unknown-linux-gnu with node@${{ matrix.node }}
210219 needs :
211220 - build
212221 strategy :
@@ -244,8 +253,9 @@ jobs:
244253 set -e
245254 npm test
246255 ls -la
256+
247257 test-linux-aarch64-musl-binding :
248- name : Test bindings on aarch64-unknown-linux-musl - node@lts
258+ name : Test aarch64-unknown-linux-musl with node@22
249259 needs :
250260 - build
251261 runs-on : ubuntu-latest
@@ -270,11 +280,12 @@ jobs:
270280 - name : Setup and run tests
271281 uses : addnab/docker-run-action@v3
272282 with :
273- image : node:lts -alpine
283+ image : node:22 -alpine
274284 options : ' --platform linux/arm64 -v ${{ github.workspace }}:/build -w /build'
275285 run : |
276286 set -e
277287 npm test
288+
278289 publish :
279290 name : Publish
280291 runs-on : ubuntu-latest
0 commit comments