From 2222f82d576bfe03ea0b01d218d72ea16d872fdf Mon Sep 17 00:00:00 2001 From: Mario Salazar de Torres Date: Wed, 9 Feb 2022 10:28:29 +0100 Subject: [PATCH] Update geode-native integration test jobs to run in parallel - Changed both old and new ITs jobs so they are executed in parallel. The number of tests ran in parallel is equivalent to the number of cores divided by 4, meaning that in average, each test will have available 4 cores in computing terms. Change-Id: I8eaeccb45ae41de262ac3c6be5622905b454cf70 --- .../apache-geode-native-test/integrationtest.sh | 10 ++++++++-- .../apache-geode-native-test/new_integrationtest.sh | 10 ++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/jjb/geode-native/apache-geode-native-test/integrationtest.sh b/jjb/geode-native/apache-geode-native-test/integrationtest.sh index d6691c59..f4ed1153 100755 --- a/jjb/geode-native/apache-geode-native-test/integrationtest.sh +++ b/jjb/geode-native/apache-geode-native-test/integrationtest.sh @@ -24,10 +24,16 @@ set -o pipefail GEODE_NATIVE_DIR="${WORKSPACE}/geode-native" SOURCE_DIR="/geode-native" -DOCKER_ARGS="--rm --volume=${GEODE_NATIVE_DIR}:${SOURCE_DIR}" +CTEST_TIMEOUT=2000 +CTEST_JOBS=$(( $(nproc) / 4 )) +CTEST_ARGS="--output-on-failure --repeat until-pass:4 --schedule-random" + +DOCKER_ARGS="--rm --volume=${GEODE_NATIVE_DIR}:${SOURCE_DIR}\ + -e LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libSegFault.so" COMMAND="echo -e '\n*** Build ***\n' && mkdir build && cd build &&\ cmake ${SOURCE_DIR} -DCMAKE_CXX_FLAGS=-stdlib=libc++ -DCMAKE_CXX_CLANG_TIDY=clang-tidy &&\ cmake --build . -- -j${JOBS} && echo -e '\n*** Old Integration Tests ***\n' &&\ - cd /build/cppcache/integration-test && ctest --timeout 2000 -L STABLE -C Release -j1" + cd /build/cppcache/integration-test &&\ + ctest -L STABLE -C Release -j${CTEST_JOBS} --timeout ${CTEST_TIMEOUT} ${CTEST_ARGS}" docker run ${DOCKER_ARGS} "${GEODE_NATIVE_DOCKER_IMAGE}" bash -c "${COMMAND}" diff --git a/jjb/geode-native/apache-geode-native-test/new_integrationtest.sh b/jjb/geode-native/apache-geode-native-test/new_integrationtest.sh index ee159ae0..c587f004 100755 --- a/jjb/geode-native/apache-geode-native-test/new_integrationtest.sh +++ b/jjb/geode-native/apache-geode-native-test/new_integrationtest.sh @@ -24,11 +24,17 @@ set -o pipefail GEODE_NATIVE_DIR="${WORKSPACE}/geode-native" SOURCE_DIR="/geode-native" -DOCKER_ARGS="--rm --volume=${GEODE_NATIVE_DIR}:${SOURCE_DIR}" +CTEST_TIMEOUT=600 +CTEST_JOBS=$(( $(nproc) / 4 )) +CTEST_ARGS="--output-on-failure --repeat until-pass:4 --schedule-random" + +DOCKER_ARGS="--rm --volume=${GEODE_NATIVE_DIR}:${SOURCE_DIR}\ + -e LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libSegFault.so" COMMAND="echo -e '\n*** Build ***\n' && mkdir build && cd build &&\ cmake ${SOURCE_DIR} -DCMAKE_CXX_FLAGS=-stdlib=libc++ \\ -DCMAKE_CXX_CLANG_TIDY=clang-tidy -DWITH_IPV6=ON &&\ cmake --build . -- -j${JOBS} && echo -e '\n*** New Integration Tests ***\n' &&\ - cd /build/cppcache/integration/test && ctest -j1 --extra-verbose" + cd /build/cppcache/integration/test &&\ + ctest -j${CTEST_JOBS} --timeout ${CTEST_TIMEOUT} ${CTEST_ARGS}" docker run ${DOCKER_ARGS} "${GEODE_NATIVE_DOCKER_IMAGE}" bash -c "${COMMAND}" -- 2.25.1