enh(ci): macOS thread sanitizer

This commit is contained in:
Matej Kenda 2023-12-15 14:07:51 +01:00
parent 446741666f
commit 35075dae8c

View File

@ -273,19 +273,25 @@ jobs:
PWD=`pwd`
ctest --output-on-failure -E "(DataMySQL)|(DataODBC)|(PostgreSQL)|(MongoDB)|(Redis)"
macos-clang-cmake-openssl3-tsan:
macos-clang-make-openssl3-tsan:
runs-on: macos-12
steps:
- uses: actions/checkout@v3
- run: brew install openssl@3
- run: CXXFLAGS=-fsanitize=thread cmake -H. -Bcmake-build -DENABLE_CPPPARSER=OFF -DENABLE_DATA_ODBC=OFF -DENABLE_DATA_MYSQL=OFF -DENABLE_DATA_POSTGRESQL=OFF -DENABLE_MONGODB=OFF -DENABLE_PDF=OFF -DENABLE_PAGECOMPILER=OFF -DENABLE_ENCODINGS=OFF -DENABLE_REDIS=OFF -DENABLE_TESTS=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl@3 && cmake --build cmake-build --target all
- run: >-
./configure --everything --no-prefix --no-samples --omit=CppParser,Encodings,Data/MySQL,Data/ODBC,Data/PostgreSQL,MongoDB,PageCompiler,PDF,PocoDoc,ProGen,Redis,SevenZip
--odbc-include=/usr/local/opt/unixodbc/include --odbc-lib=/usr/local/opt/unixodbc/lib
--mysql-include=/usr/local/opt/mysql-client/include --mysql-lib=/usr/local/opt/mysql-client/lib
--include-path="/usr/local/opt/openssl@3/include" --library-path="/usr/local/opt/openssl@3/lib" &&
make all -s -j4 SANITIZEFLAGS=-fsanitize=thread
- uses: ./.github/actions/retry-action
with:
timeout_minutes: 90
max_attempts: 3
retry_on: any
command: >-
cd cmake-build &&
sudo -s
CPPUNIT_IGNORE="
CppUnit::TestCaller<ThreadTest>.testTrySleep,
CppUnit::TestCaller<TimestampTest>.testTimestamp,
@ -293,9 +299,34 @@ jobs:
CppUnit::TestCaller<ExpireLRUCacheTest>.testAccessExpireN,
CppUnit::TestCaller<UniqueExpireLRUCacheTest>.testExpireN,
CppUnit::TestCaller<ExpireLRUCacheTest>.testAccessExpireN,
CppUnit::TestCaller<PollSetTest>.testPollClosedServer"
PWD=`pwd`
ctest -V
CppUnit::TestCaller<PollSetTest>.testPollClosedServer,
CppUnit::TestCaller<CryptoTest>.testEncryptDecryptGCM"
EXCLUDE_TESTS="Redis Data/MySQL Data/ODBC Data/PostgreSQL MongoDB PDF"
./ci/runtests.sh TSAN
# macos-clang-cmake-openssl3-tsan:
# runs-on: macos-12
# steps:
# - uses: actions/checkout@v3
# - run: brew install openssl@3
# - run: CXXFLAGS=-fsanitize=thread cmake -H. -Bcmake-build -DENABLE_CPPPARSER=OFF -DENABLE_DATA_ODBC=OFF -DENABLE_DATA_MYSQL=OFF -DENABLE_DATA_POSTGRESQL=OFF -DENABLE_MONGODB=OFF -DENABLE_PDF=OFF -DENABLE_PAGECOMPILER=OFF -DENABLE_ENCODINGS=OFF -DENABLE_REDIS=OFF -DENABLE_TESTS=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl@3 && cmake --build cmake-build --target all
# - uses: ./.github/actions/retry-action
# with:
# timeout_minutes: 90
# max_attempts: 3
# retry_on: any
# command: >-
# cd cmake-build &&
# CPPUNIT_IGNORE="
# CppUnit::TestCaller<ThreadTest>.testTrySleep,
# CppUnit::TestCaller<TimestampTest>.testTimestamp,
# CppUnit::TestCaller<ExpireLRUCacheTest>.testExpireN,
# CppUnit::TestCaller<ExpireLRUCacheTest>.testAccessExpireN,
# CppUnit::TestCaller<UniqueExpireLRUCacheTest>.testExpireN,
# CppUnit::TestCaller<ExpireLRUCacheTest>.testAccessExpireN,
# CppUnit::TestCaller<PollSetTest>.testPollClosedServer"
# PWD=`pwd`
# ctest -V
# windows-2019-msvc-cmake:
# runs-on: windows-2019