Skip to content

Commit cb0f825

Browse files
targossantigimeno
authored andcommitted
tools: update sccache to support GH cache changes
Refs: https://github.blog/changelog/2025-03-20-notification-of-upcoming-breaking-changes-in-github-actions/ Refs: mozilla/sccache#2339 PR-URL: nodejs/node#57573 Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Yagiz Nizipli <[email protected]>
1 parent a8803ab commit cb0f825

File tree

5 files changed

+64
-31
lines changed

5 files changed

+64
-31
lines changed

.github/workflows/build-tarball.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,13 @@ jobs:
4646
with:
4747
persist-credentials: false
4848
- name: Set up Python ${{ env.PYTHON_VERSION }}
49-
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
49+
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
5050
with:
5151
python-version: ${{ env.PYTHON_VERSION }}
5252
- name: Set up sccache
53-
uses: mozilla-actions/sccache-action@9e326ebed976843c9932b3aa0e021c6f50310eb4 # v0.0.6
53+
uses: Mozilla-Actions/sccache-action@65101d47ea8028ed0c98a1cdea8dd9182e9b5133 # v0.0.8
5454
with:
55-
version: v0.8.1
55+
version: v0.10.0
5656
- name: Environment Information
5757
run: npx envinfo
5858
- name: Make tarball
@@ -64,7 +64,7 @@ jobs:
6464
mkdir tarballs
6565
mv *.tar.gz tarballs
6666
- name: Upload tarball artifact
67-
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
67+
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
6868
with:
6969
name: tarballs
7070
path: tarballs
@@ -76,17 +76,17 @@ jobs:
7676
with:
7777
persist-credentials: false
7878
- name: Set up Python ${{ env.PYTHON_VERSION }}
79-
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
79+
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
8080
with:
8181
python-version: ${{ env.PYTHON_VERSION }}
8282
- name: Set up sccache
83-
uses: mozilla-actions/sccache-action@9e326ebed976843c9932b3aa0e021c6f50310eb4 # v0.0.6
83+
uses: Mozilla-Actions/sccache-action@65101d47ea8028ed0c98a1cdea8dd9182e9b5133 # v0.0.8
8484
with:
85-
version: v0.8.1
85+
version: v0.10.0
8686
- name: Environment Information
8787
run: npx envinfo
8888
- name: Download tarball
89-
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
89+
uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
9090
with:
9191
name: tarballs
9292
path: tarballs
@@ -105,4 +105,4 @@ jobs:
105105
- name: Test
106106
run: |
107107
cd $TAR_DIR
108-
make run-ci -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=spec' --measure-flakiness 9"
108+
make run-ci -j4 V=1 TEST_CI_ARGS="-p dots --measure-flakiness 9"

.github/workflows/coverage-linux-without-intl.yml

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,13 +54,13 @@ jobs:
5454
with:
5555
persist-credentials: false
5656
- name: Set up Python ${{ env.PYTHON_VERSION }}
57-
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
57+
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
5858
with:
5959
python-version: ${{ env.PYTHON_VERSION }}
6060
- name: Set up sccache
61-
uses: mozilla-actions/sccache-action@9e326ebed976843c9932b3aa0e021c6f50310eb4 # v0.0.6
61+
uses: Mozilla-Actions/sccache-action@65101d47ea8028ed0c98a1cdea8dd9182e9b5133 # v0.0.8
6262
with:
63-
version: v0.8.1
63+
version: v0.10.0
6464
- name: Environment Information
6565
run: npx envinfo
6666
- name: Install gcovr
@@ -70,13 +70,17 @@ jobs:
7070
# TODO(bcoe): fix the couple tests that fail with the inspector enabled.
7171
# The cause is most likely coverage's use of the inspector.
7272
- name: Test
73-
run: NODE_V8_COVERAGE=coverage/tmp make test-cov -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=spec' --measure-flakiness 9" || exit 0
73+
run: NODE_V8_COVERAGE=coverage/tmp make test-cov -j4 V=1 TEST_CI_ARGS="-p dots --measure-flakiness 9" || exit 0
74+
- name: Report JS
75+
run: npx c8 report --check-coverage
76+
env:
77+
NODE_OPTIONS: --max-old-space-size=8192
7478
- name: Report C++
7579
run: gcovr --object-directory=out -v --filter src --xml -o ./coverage/coverage-cxx.xml --root=./ --gcov-executable="llvm-cov-18 gcov"
7680
# Clean temporary output from gcov and c8, so that it's not uploaded:
7781
- name: Clean tmp
7882
run: rm -rf coverage/tmp && rm -rf out
7983
- name: Upload
80-
uses: codecov/codecov-action@015f24e6818733317a2da2edd6290ab26238649a # v5.0.7
84+
uses: codecov/codecov-action@0565863a31f2c772f9f0395002a31e3f06189574 # v5.4.0
8185
with:
8286
directory: ./coverage

.github/workflows/coverage-linux.yml

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,13 +54,13 @@ jobs:
5454
with:
5555
persist-credentials: false
5656
- name: Set up Python ${{ env.PYTHON_VERSION }}
57-
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
57+
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
5858
with:
5959
python-version: ${{ env.PYTHON_VERSION }}
6060
- name: Set up sccache
61-
uses: mozilla-actions/sccache-action@9e326ebed976843c9932b3aa0e021c6f50310eb4 # v0.0.6
61+
uses: Mozilla-Actions/sccache-action@65101d47ea8028ed0c98a1cdea8dd9182e9b5133 # v0.0.8
6262
with:
63-
version: v0.8.1
63+
version: v0.10.0
6464
- name: Environment Information
6565
run: npx envinfo
6666
- name: Install gcovr
@@ -70,13 +70,17 @@ jobs:
7070
# TODO(bcoe): fix the couple tests that fail with the inspector enabled.
7171
# The cause is most likely coverage's use of the inspector.
7272
- name: Test
73-
run: NODE_V8_COVERAGE=coverage/tmp make test-cov -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=spec' --measure-flakiness 9" || exit 0
73+
run: NODE_V8_COVERAGE=coverage/tmp make test-cov -j4 V=1 TEST_CI_ARGS="-p dots --measure-flakiness 9" || exit 0
74+
- name: Report JS
75+
run: npx c8 report --check-coverage
76+
env:
77+
NODE_OPTIONS: --max-old-space-size=8192
7478
- name: Report C++
7579
run: gcovr --object-directory=out -v --filter src --xml -o ./coverage/coverage-cxx.xml --root=./ --gcov-executable="llvm-cov-18 gcov"
7680
# Clean temporary output from gcov and c8, so that it's not uploaded:
7781
- name: Clean tmp
7882
run: rm -rf coverage/tmp && rm -rf out
7983
- name: Upload
80-
uses: codecov/codecov-action@015f24e6818733317a2da2edd6290ab26238649a # v5.0.7
84+
uses: codecov/codecov-action@0565863a31f2c772f9f0395002a31e3f06189574 # v5.4.0
8185
with:
8286
directory: ./coverage

.github/workflows/test-linux.yml

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,22 +35,34 @@ permissions:
3535
jobs:
3636
test-linux:
3737
if: github.event.pull_request.draft == false
38-
runs-on: ubuntu-24.04
38+
runs-on: ${{ matrix.os }}
39+
strategy:
40+
fail-fast: false
41+
matrix:
42+
os: [ubuntu-24.04, ubuntu-24.04-arm]
3943
steps:
4044
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4145
with:
4246
persist-credentials: false
47+
path: node
4348
- name: Set up Python ${{ env.PYTHON_VERSION }}
44-
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
49+
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
4550
with:
4651
python-version: ${{ env.PYTHON_VERSION }}
4752
- name: Set up sccache
48-
uses: mozilla-actions/sccache-action@9e326ebed976843c9932b3aa0e021c6f50310eb4 # v0.0.6
53+
uses: Mozilla-Actions/sccache-action@65101d47ea8028ed0c98a1cdea8dd9182e9b5133 # v0.0.8
4954
with:
50-
version: v0.8.1
55+
version: v0.10.0
5156
- name: Environment Information
5257
run: npx envinfo
5358
- name: Build
54-
run: make build-ci -j4 V=1 CONFIG_FLAGS="--error-on-warn"
59+
run: make -C node build-ci -j4 V=1 CONFIG_FLAGS="--error-on-warn"
5560
- name: Test
56-
run: make run-ci -j4 V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=spec' --node-args='--test-reporter-destination=stdout' --measure-flakiness 9"
61+
run: make -C node run-ci -j4 V=1 TEST_CI_ARGS="-p actions --measure-flakiness 9"
62+
- name: Re-run test in a folder whose name contains unusual chars
63+
run: |
64+
mv node "$DIR"
65+
cd "$DIR"
66+
./tools/test.py --flaky-tests keep_retrying -p actions -j 4
67+
env:
68+
DIR: dir%20with $unusual"chars?'åß∂ƒ©∆¬…`

.github/workflows/test-macos.yml

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ concurrency:
3030

3131
env:
3232
PYTHON_VERSION: '3.12'
33+
XCODE_VERSION: '16.1'
3334
FLAKY_TESTS: keep_retrying
3435

3536
permissions:
@@ -38,6 +39,8 @@ permissions:
3839
jobs:
3940
test-macOS:
4041
if: github.event.pull_request.draft == false
42+
strategy:
43+
fail-fast: false
4144
runs-on: macos-14
4245
env:
4346
CC: sccache gcc
@@ -47,14 +50,17 @@ jobs:
4750
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4851
with:
4952
persist-credentials: false
53+
path: node
5054
- name: Set up Python ${{ env.PYTHON_VERSION }}
51-
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
55+
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
5256
with:
5357
python-version: ${{ env.PYTHON_VERSION }}
58+
- name: Set up Xcode ${{ env.XCODE_VERSION }}
59+
run: sudo xcode-select -s /Applications/Xcode_${{ env.XCODE_VERSION }}.app
5460
- name: Set up sccache
55-
uses: mozilla-actions/sccache-action@9e326ebed976843c9932b3aa0e021c6f50310eb4 # v0.0.6
61+
uses: Mozilla-Actions/sccache-action@65101d47ea8028ed0c98a1cdea8dd9182e9b5133 # v0.0.8
5662
with:
57-
version: v0.8.1
63+
version: v0.10.0
5864
- name: Environment Information
5965
run: npx envinfo
6066
# The `npm ci` for this step fails a lot as part of the Test step. Run it
@@ -64,7 +70,7 @@ jobs:
6470
# happen anymore running this step here first, that's also useful
6571
# information.)
6672
- name: tools/doc/node_modules workaround
67-
run: make tools/doc/node_modules
73+
run: make -C node tools/doc/node_modules
6874
# This is needed due to https://github.com/nodejs/build/issues/3878
6975
- name: Cleanup
7076
run: |
@@ -80,8 +86,15 @@ jobs:
8086
df -h
8187
echo "::endgroup::"
8288
- name: Build
83-
run: make build-ci -j$(getconf _NPROCESSORS_ONLN) V=1 CONFIG_FLAGS="--error-on-warn"
89+
run: make -C node build-ci -j$(getconf _NPROCESSORS_ONLN) V=1 CONFIG_FLAGS="--error-on-warn"
8490
- name: Free Space After Build
8591
run: df -h
8692
- name: Test
87-
run: make run-ci -j$(getconf _NPROCESSORS_ONLN) V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=spec' --node-args='--test-reporter-destination=stdout' --measure-flakiness 9"
93+
run: make -C node run-ci -j$(getconf _NPROCESSORS_ONLN) V=1 TEST_CI_ARGS="-p actions --measure-flakiness 9"
94+
- name: Re-run test in a folder whose name contains unusual chars
95+
run: |
96+
mv node "$DIR"
97+
cd "$DIR"
98+
./tools/test.py --flaky-tests keep_retrying -p actions -j 4
99+
env:
100+
DIR: dir%20with $unusual"chars?'åß∂ƒ©∆¬…`

0 commit comments

Comments
 (0)