From 1ece00ff374a73f3dcac65744de24b9f706ef903 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 11 Mar 2026 15:26:39 +0000 Subject: [PATCH 1/3] Initial plan From dcb6b262c11ba946e9a2788b3ec53c30e6405cdc Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 11 Mar 2026 15:31:39 +0000 Subject: [PATCH 2/3] fix: mirror LLVM_PROFILE_FILE env var in t-algorithms-test job to match ctest definition Co-authored-by: wdconinc <4656391+wdconinc@users.noreply.github.com> --- .github/workflows/linux-eic-shell.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/linux-eic-shell.yml b/.github/workflows/linux-eic-shell.yml index 08a14f810c..5ef4a750de 100644 --- a/.github/workflows/linux-eic-shell.yml +++ b/.github/workflows/linux-eic-shell.yml @@ -278,6 +278,8 @@ jobs: export LD_LIBRARY_PATH=$PWD/install/lib:$LD_LIBRARY_PATH export JANA_PLUGIN_PATH=$PWD/install/lib/EICrecon/plugins${JANA_PLUGIN_PATH:+:${JANA_PLUGIN_PATH}} cd build/src/tests/algorithms_test + # Mirror the ctest test definition (see src/tests/algorithms_test/CMakeLists.txt) + export LLVM_PROFILE_FILE=algorithms_test.profraw ./algorithms_test clang-tidy-iwyu: From 3106091dc23d2efcb3be236fa34425512457c298 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 11 Mar 2026 15:43:13 +0000 Subject: [PATCH 3/3] fix: use slim ctest archive and ctest to run t_algorithms_test in CI Co-authored-by: wdconinc <4656391+wdconinc@users.noreply.github.com> --- .github/workflows/linux-eic-shell.yml | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/.github/workflows/linux-eic-shell.yml b/.github/workflows/linux-eic-shell.yml index 5ef4a750de..bbf7d89643 100644 --- a/.github/workflows/linux-eic-shell.yml +++ b/.github/workflows/linux-eic-shell.yml @@ -217,12 +217,16 @@ jobs: name: install-${{ matrix.CXX }}-eic-shell-${{ matrix.CMAKE_BUILD_TYPE }}-${{ env.platform }}-${{ matrix.release }}-ASAN path: install.tar.zst if-no-files-found: error - - name: Upload algorithms_test binary (ASAN) - if: ${{ matrix.USE_ASAN == 'ON' && matrix.USE_TSAN == 'OFF' }} + # Only compress and upload build directory for t_algorithms_test if we are going to use it later + - name: Compress build directory (for t_algorithms_test) + if: ${{ matrix.CXX == 'clang++' && matrix.CMAKE_BUILD_TYPE == 'Release' && matrix.USE_ASAN == 'ON' && matrix.USE_TSAN == 'OFF' }} + run: tar -caf build-t-algorithms-test.tar.zst $(find build -name "CTestTestfile.cmake") build/src/tests/algorithms_test/algorithms_test + - name: Upload build directory (for t_algorithms_test) + if: ${{ matrix.CXX == 'clang++' && matrix.CMAKE_BUILD_TYPE == 'Release' && matrix.USE_ASAN == 'ON' && matrix.USE_TSAN == 'OFF' }} uses: actions/upload-artifact@v7 with: - name: algorithms_test-${{ matrix.CXX }}-eic-shell-${{ matrix.CMAKE_BUILD_TYPE }}-${{ env.platform }}-${{ matrix.release }}-ASAN - path: build/src/tests/algorithms_test/algorithms_test + name: build-t-algorithms-test-${{ matrix.CXX }}-eic-shell-${{ matrix.CMAKE_BUILD_TYPE }}-${{ env.platform }}-${{ matrix.release }}-ASAN + path: build-t-algorithms-test.tar.zst if-no-files-found: error - name: Upload install directory (TSAN) if: ${{ matrix.USE_ASAN == 'OFF' && matrix.USE_TSAN == 'ON' }} @@ -262,11 +266,12 @@ jobs: name: install-clang++-eic-shell-Release-${{ env.platform }}-${{ env.release }}-ASAN - name: Uncompress install directory run: tar -xaf install.tar.zst - - name: Download algorithms_test binary + - name: Download build directory (for t_algorithms_test) uses: actions/download-artifact@v8 with: - name: algorithms_test-clang++-eic-shell-Release-${{ env.platform }}-${{ env.release }}-ASAN - path: build/src/tests/algorithms_test/ + name: build-t-algorithms-test-clang++-eic-shell-Release-${{ env.platform }}-${{ env.release }}-ASAN + - name: Uncompress build directory + run: tar -xaf build-t-algorithms-test.tar.zst - name: Run t_algorithms_test uses: eic/run-cvmfs-osg-eic-shell@main with: @@ -277,10 +282,7 @@ jobs: chmod +x build/src/tests/algorithms_test/algorithms_test export LD_LIBRARY_PATH=$PWD/install/lib:$LD_LIBRARY_PATH export JANA_PLUGIN_PATH=$PWD/install/lib/EICrecon/plugins${JANA_PLUGIN_PATH:+:${JANA_PLUGIN_PATH}} - cd build/src/tests/algorithms_test - # Mirror the ctest test definition (see src/tests/algorithms_test/CMakeLists.txt) - export LLVM_PROFILE_FILE=algorithms_test.profraw - ./algorithms_test + ctest --test-dir build -V -R "^t_algorithms_test$" clang-tidy-iwyu: runs-on: ubuntu-24.04