From 54e6f063df424e20c5ecde7fad0e085f90a095a8 Mon Sep 17 00:00:00 2001 From: Keenan Gugeler Date: Wed, 18 Oct 2023 10:03:20 -0400 Subject: [PATCH] ci: use full ASAN Previously we used LD_PRELOAD to add ASAN to our build. This is at best imperfect, since the full benefits of ASAN can only be realized by adding compiler instrumentation. This also makes the job run python, java, and nodejs tests with ASAN. --- .github/workflows/ci-workflow.yml | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci-workflow.yml b/.github/workflows/ci-workflow.yml index 10115d80b7d..871ffdcae35 100644 --- a/.github/workflows/ci-workflow.yml +++ b/.github/workflows/ci-workflow.yml @@ -94,16 +94,17 @@ jobs: run: npm install --include=dev working-directory: tools/nodejs_api - - name: Build debug - run: CC=gcc CXX=g++ make alldebug NUM_THREADS=32 - - - name: Run test with ASan - run: ctest --output-on-failure -j 10 - env: - LD_PRELOAD: "/usr/lib/x86_64-linux-gnu/libasan.so.6" - ASAN_OPTIONS: "detect_leaks=1:log_path=/tmp/asan.log" - working-directory: ./build/debug/test - continue-on-error: true + - name: Test with ASAN + run: CC=gcc CXX=g++ make test ASAN=1 NUM_THREADS=32 + + - name: Python test + run: CC=gcc CXX=g++ make pytest ASAN=1 NUM_THREADS=32 + + - name: Node.js test + run: CC=gcc CXX=g++ make nodejstest ASAN=1 NUM_THREADS=32 + + - name: Java test + run: CC=gcc CXX=g++ make javatest ASAN=1 NUM_THREADS=32 - name: Report ASan log run: |