From c0c5fc22f92f199abb808df6047d2b2745d7b168 Mon Sep 17 00:00:00 2001 From: Zhengchao An Date: Wed, 26 Aug 2026 09:33:42 +0800 Subject: [PATCH] ci: preserve ILM timeout diagnostics (#6602) * 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 * test: give lifecycle transition futures a larger stack * ci: preserve ILM timeout diagnostics --- .github/workflows/ci.yml | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d245b0b89..8c532ba3f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -424,9 +424,32 @@ jobs: # noncurrent transition/expiry after an immediate compensation transition. - name: Run ignored ILM integration tests serially run: | - cargo nextest run -j1 --run-ignored ignored-only \ + mkdir -p artifacts/ilm-integration + set +e + NEXTEST_HIDE_PROGRESS_BAR=1 timeout --verbose --signal=TERM --kill-after=30s 80m \ + cargo nextest run -j1 --run-ignored ignored-only \ -p rustfs-scanner -p rustfs \ - -E '(binary(lifecycle_integration_test) or (package(rustfs) and test(lifecycle_transition_api_test))) and not (test(test_noncurrent_expiry_still_works_after_immediate_compensation_transition) or test(test_noncurrent_transition_still_works_after_immediate_compensation_transition))' + -E '(binary(lifecycle_integration_test) or (package(rustfs) and test(lifecycle_transition_api_test))) and not (test(test_noncurrent_expiry_still_works_after_immediate_compensation_transition) or test(test_noncurrent_transition_still_works_after_immediate_compensation_transition))' \ + --status-level all --final-status-level all \ + 2>&1 | tee artifacts/ilm-integration/nextest.log + status=${PIPESTATUS[0]} + { + echo "exit_status=${status}" + echo "finished_at=$(date --utc --iso-8601=seconds)" + echo + echo "Remaining test-related processes:" + pgrep -af 'cargo|nextest|target/.*/deps/' || true + } > artifacts/ilm-integration/diagnostics.txt + exit "${status}" + + - name: Upload ILM test diagnostics + if: always() + uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 + with: + name: ilm-integration-${{ github.run_number }}-${{ github.run_attempt }} + path: | + artifacts/ilm-integration + target/nextest/ci/junit.xml test-and-lint-rio-v2: name: Test and Lint (rio-v2)