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 d6691c596..f4ed1153b 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 ee159ae0a..c587f0048 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