From 032c5f9ac645a55674803f621ac236f9fb220ee8 Mon Sep 17 00:00:00 2001 From: Zhengchao An Date: Wed, 26 Aug 2026 09:33:16 +0800 Subject: [PATCH] ci: bound feature test link concurrency (#6594) * fix(connect): adapt offline array predicate * test(e2e): update smoke selection baseline * test(ecstore): make slowtail oracle deterministic * test(get): stage relocated fixture after reader opens * ci: bound feature test link concurrency --- .github/workflows/cache-warm.yml | 6 ++++++ .github/workflows/ci.yml | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/.github/workflows/cache-warm.yml b/.github/workflows/cache-warm.yml index 660d96b09..62ecc2010 100644 --- a/.github/workflows/cache-warm.yml +++ b/.github/workflows/cache-warm.yml @@ -212,6 +212,9 @@ jobs: install-build-packaging-tools: 'false' - name: Build ci-feat-rio superset + env: + # --all-targets links the same test binaries as the reader lane. + CARGO_BUILD_JOBS: "2" run: | cargo build -p rustfs -p rustfs-ecstore --all-targets --features rio-v2 cargo build -p rustfs --bins --features rio-v2,e2e-test-hooks @@ -240,6 +243,9 @@ jobs: install-build-packaging-tools: 'false' - name: Build ci-feat-proto superset + env: + # Avoid an unbounded burst of concurrent test-binary links (#5394). + CARGO_BUILD_JOBS: "2" run: | cargo build -p rustfs -p rustfs-protocols --all-targets --features swift cargo build -p rustfs -p rustfs-protocols --all-targets --features sftp diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 664ef7952..d245b0b89 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -457,6 +457,11 @@ jobs: run: cargo clippy -p rustfs -p rustfs-ecstore --all-targets --features rio-v2 -- -D warnings - name: Run rio-v2 feature tests + env: + # Match the main nextest lane's #5394 link-I/O guard. A cold feature + # cache otherwise fans out enough rust-lld processes to exhaust this + # job's 90-minute budget before any test starts. + CARGO_BUILD_JOBS: "2" run: | cargo nextest run -p rustfs -p rustfs-ecstore --features rio-v2 cargo test -p rustfs --doc --features rio-v2 @@ -505,6 +510,10 @@ jobs: cargo clippy -p rustfs -p rustfs-protocols --all-targets ${{ matrix.features.flags }} -- -D warnings - name: Run tests with ${{ matrix.features.name }} + env: + # Keep feature-test linking under the same bounded concurrency as the + # main nextest lane; Clippy is metadata-only and needs no such limit. + CARGO_BUILD_JOBS: "2" run: | cargo nextest run -p rustfs -p rustfs-protocols ${{ matrix.features.flags }}