From cc2d547921789c2e2e9cd51a48416ad826227dce Mon Sep 17 00:00:00 2001 From: Chengzhong Wu Date: Fri, 24 Jul 2026 14:31:21 -0400 Subject: [PATCH 1/2] build: run perfetto build and test on GHA Signed-off-by: Chengzhong Wu --- .github/workflows/test-linux-perfetto.yml | 71 +++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 .github/workflows/test-linux-perfetto.yml diff --git a/.github/workflows/test-linux-perfetto.yml b/.github/workflows/test-linux-perfetto.yml new file mode 100644 index 00000000000000..38b182798383a2 --- /dev/null +++ b/.github/workflows/test-linux-perfetto.yml @@ -0,0 +1,71 @@ +name: Test Linux (with Perfetto) + +on: + workflow_dispatch: + pull_request: + paths-ignore: + - .mailmap + - README.md + - vcbuild.bat + - tools/actions/** + - tools/clang-format/** + - tools/dep_updaters/** + - test/internet/** + - '**.nix' + - .github/** + - '!.github/workflows/test-linux-perfetto.yml' + types: [opened, synchronize, reopened, ready_for_review] + +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +env: + PYTHON_VERSION: '3.14' + FLAKY_TESTS: keep_retrying + CLANG_VERSION: '19' + CC: ${{ (github.base_ref == 'main' || github.ref_name == 'main') && 'sccache' || '' }} clang-19 + CXX: ${{ (github.base_ref == 'main' || github.ref_name == 'main') && 'sccache' || '' }} clang++-19 + SCCACHE_GHA_ENABLED: ${{ github.base_ref == 'main' || github.ref_name == 'main' }} + SCCACHE_IDLE_TIMEOUT: '0' + RUSTC_VERSION: '1.83' + +permissions: + contents: read + +jobs: + test-perfetto: + if: github.event.pull_request.draft == false + runs-on: ubuntu-24.04-arm + steps: + - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + with: + persist-credentials: false + path: node + - name: Install Clang ${{ env.CLANG_VERSION }} + uses: ./node/.github/actions/install-clang + with: + clang-version: ${{ env.CLANG_VERSION }} + - name: Install Rust ${{ env.RUSTC_VERSION }} + run: | + rustup override set "$RUSTC_VERSION" + rustup --version + - name: Set up Python ${{ env.PYTHON_VERSION }} + uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0 + with: + python-version: ${{ env.PYTHON_VERSION }} + allow-prereleases: true + - name: Set up sccache + if: github.base_ref == 'main' || github.ref_name == 'main' + uses: Mozilla-Actions/sccache-action@9e7fa8a12102821edf02ca5dbea1acd0f89a2696 # v0.0.10 + with: + version: v0.16.0 + - name: Build + working-directory: node + run: make build-ci -j4 V=1 CONFIG_FLAGS="--error-on-warn --v8-enable-temporal-support --with-perfetto" + - name: Test + working-directory: node + run: make test-ci -j1 V=1 TEST_CI_ARGS="-p actions --measure-flakiness 9" + - name: Ensure running tests did not cause any change in the tree + working-directory: node + run: git add -A && git diff --name-only --exit-code --staged From 37bba195cbc9f4d03c999811831810982b666444 Mon Sep 17 00:00:00 2001 From: Chengzhong Wu Date: Fri, 24 Jul 2026 16:04:48 -0400 Subject: [PATCH 2/2] fixup! build: run perfetto build and test on GHA --- .github/workflows/test-linux-perfetto.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/test-linux-perfetto.yml b/.github/workflows/test-linux-perfetto.yml index 38b182798383a2..debdcb8b2788f8 100644 --- a/.github/workflows/test-linux-perfetto.yml +++ b/.github/workflows/test-linux-perfetto.yml @@ -41,9 +41,8 @@ jobs: - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 with: persist-credentials: false - path: node - name: Install Clang ${{ env.CLANG_VERSION }} - uses: ./node/.github/actions/install-clang + uses: ./.github/actions/install-clang with: clang-version: ${{ env.CLANG_VERSION }} - name: Install Rust ${{ env.RUSTC_VERSION }} @@ -61,11 +60,8 @@ jobs: with: version: v0.16.0 - name: Build - working-directory: node run: make build-ci -j4 V=1 CONFIG_FLAGS="--error-on-warn --v8-enable-temporal-support --with-perfetto" - name: Test - working-directory: node run: make test-ci -j1 V=1 TEST_CI_ARGS="-p actions --measure-flakiness 9" - name: Ensure running tests did not cause any change in the tree - working-directory: node run: git add -A && git diff --name-only --exit-code --staged