Skip to content

Commit b74d3ce

Browse files
committed
Update GitHub Actions dependencies to v4
upload-artifact and download-artifact v3 are deprecated and failing. v4 no longer allows multiple uploads to the same artifact name, so each matrix job now uploads to a unique name (native-addon-<os>) and the download steps use merge-multiple to recombine them. Also bumps checkout, setup-node, and cache to v4 across all workflows.
1 parent 1443f89 commit b74d3ce

3 files changed

Lines changed: 26 additions & 25 deletions

File tree

.github/workflows/release.yaml

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ jobs:
2121
runs-on: ${{ matrix.os }}
2222
steps:
2323
- name: checkout
24-
uses: actions/checkout@v3
24+
uses: actions/checkout@v4
2525
- name: node
26-
uses: actions/setup-node@v3
26+
uses: actions/setup-node@v4
2727
with:
2828
node-version: 22
2929
cache: "npm"
@@ -37,9 +37,10 @@ jobs:
3737
npm run prebuild --workspace=@jazzer.js/fuzzer -- ${{ matrix.opts }}
3838
npm run build --workspace=@jazzer.js/fuzzer -- ${{ matrix.opts }}
3939
- name: upload
40-
uses: actions/upload-artifact@v3
40+
uses: actions/upload-artifact@v4
4141
with:
42-
name: native-addon
42+
name:
43+
native-addon-${{ matrix.os }}${{ matrix.opts && '-arm64' || '' }}
4344
path: packages/fuzzer/prebuilds
4445
if-no-files-found: error
4546

@@ -51,11 +52,11 @@ jobs:
5152
contents: read
5253
steps:
5354
- name: download prebuilds
54-
uses: actions/download-artifact@v3
55+
uses: actions/download-artifact@v4
5556
with:
56-
name: native-addon
57+
pattern: native-addon-*
5758
path: prebuilds
58-
if-no-files-found: error
59+
merge-multiple: true
5960
- name: list prebuilds
6061
run: ls -lh prebuilds/
6162

@@ -68,9 +69,9 @@ jobs:
6869
contents: write # for creating releases
6970
steps:
7071
- name: checkout
71-
uses: actions/checkout@v3
72+
uses: actions/checkout@v4
7273
- name: node
73-
uses: actions/setup-node@v3
74+
uses: actions/setup-node@v4
7475
with:
7576
node-version: 22
7677
cache: "npm"
@@ -80,11 +81,11 @@ jobs:
8081
- name: build
8182
run: npm run build
8283
- name: download prebuilds
83-
uses: actions/download-artifact@v3
84+
uses: actions/download-artifact@v4
8485
with:
85-
name: native-addon
86+
pattern: native-addon-*
8687
path: packages/fuzzer/prebuilds
87-
if-no-files-found: error
88+
merge-multiple: true
8889
- name: publish
8990
run: npm publish --workspaces --access public
9091
env:

.github/workflows/run-all-tests-main.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ jobs:
1212
runs-on: ubuntu-latest
1313
steps:
1414
- name: checkout
15-
uses: actions/checkout@v3
16-
- uses: actions/cache@v3
15+
uses: actions/checkout@v4
16+
- uses: actions/cache@v4
1717
id: cache-fuzzer
1818
with:
1919
path: |
@@ -23,7 +23,7 @@ jobs:
2323
hashFiles('packages/fuzzer/CMakeLists.txt',
2424
'packages/fuzzer/**/*.h', 'packages/fuzzer/**/*.cpp') }}
2525
- name: node
26-
uses: actions/setup-node@v3
26+
uses: actions/setup-node@v4
2727
with:
2828
node-version: 22
2929
cache: "npm"

.github/workflows/run-all-tests-pr.yaml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ jobs:
1818
runs-on: ubuntu-latest
1919
steps:
2020
- name: checkout
21-
uses: actions/checkout@v3
21+
uses: actions/checkout@v4
2222
- name: node
23-
uses: actions/setup-node@v3
23+
uses: actions/setup-node@v4
2424
with:
2525
node-version: 22
2626
cache: "npm"
@@ -52,8 +52,8 @@ jobs:
5252
node: 24
5353
steps:
5454
- name: checkout
55-
uses: actions/checkout@v3
56-
- uses: actions/cache@v3
55+
uses: actions/checkout@v4
56+
- uses: actions/cache@v4
5757
id: cache-fuzzer
5858
with:
5959
path: |
@@ -63,7 +63,7 @@ jobs:
6363
hashFiles('packages/fuzzer/CMakeLists.txt',
6464
'packages/fuzzer/**/*.h', 'packages/fuzzer/**/*.cpp') }}
6565
- name: node
66-
uses: actions/setup-node@v3
66+
uses: actions/setup-node@v4
6767
with:
6868
node-version: ${{ matrix.node }}
6969
cache: "npm"
@@ -88,10 +88,10 @@ jobs:
8888
os: [ubuntu-latest, macos-latest, windows-latest, ubuntu-24.04-arm]
8989
steps:
9090
- name: checkout
91-
uses: actions/checkout@v3
91+
uses: actions/checkout@v4
9292
# Build with node.js 22
9393
- name: node
94-
uses: actions/setup-node@v3
94+
uses: actions/setup-node@v4
9595
with:
9696
node-version: 22
9797
cache: "npm"
@@ -109,7 +109,7 @@ jobs:
109109
# all in one job to avoid rebuilding
110110
- name: "node 14"
111111
if: matrix.os != 'macos-latest' && matrix.os != 'ubuntu-24.04-arm'
112-
uses: actions/setup-node@v3
112+
uses: actions/setup-node@v4
113113
with:
114114
node-version: 14
115115
- name: run tests (node 14)
@@ -118,15 +118,15 @@ jobs:
118118
shell: bash
119119

120120
- name: "node 20"
121-
uses: actions/setup-node@v3
121+
uses: actions/setup-node@v4
122122
with:
123123
node-version: 20
124124
- name: run tests (node 20)
125125
run: cd end-to-end && npx jest
126126
shell: bash
127127

128128
- name: "node 24"
129-
uses: actions/setup-node@v3
129+
uses: actions/setup-node@v4
130130
with:
131131
node-version: 24
132132
- name: run tests (node 24)

0 commit comments

Comments
 (0)