Allow to relaunch the "end" of the testsuite: results collection, and

results re-submission.
This commit is contained in:
Laurent Rineau 2008-09-26 10:23:34 +00:00
parent c16a1ec391
commit 2e5889e7a9
1 changed files with 57 additions and 41 deletions

View File

@ -574,7 +574,8 @@ run_test_on_host_and_platform()
rm -f "${CGAL_BINARY_DIR}/localtestscript" rm -f "${CGAL_BINARY_DIR}/localtestscript"
fi fi
cat >> "${CGAL_BINARY_DIR}/localtestscript" <<EOF for file in "${CGAL_BINARY_DIR}/localtestscript" "${CGAL_BINARY_DIR}/localtestscript-redo-results-collection"; do
cat >> "$file" <<EOF
CGAL_TESTER='${CGAL_TESTER}'; CGAL_TESTER='${CGAL_TESTER}';
CGAL_TESTER_NAME='${CGAL_TESTER_NAME}'; CGAL_TESTER_NAME='${CGAL_TESTER_NAME}';
CGAL_TESTER_ADDRESS='${CGAL_TESTER_ADDRESS}'; CGAL_TESTER_ADDRESS='${CGAL_TESTER_ADDRESS}';
@ -592,7 +593,9 @@ export CGAL_DIR;
export CGAL_TEST_HOST CGAL_TEST_PLATFORM; export CGAL_TEST_HOST CGAL_TEST_PLATFORM;
export CMAKE_GENERATOR; export CMAKE_GENERATOR;
export MAKE_CMD; export MAKE_CMD;
EOF
done
cat >> "${CGAL_BINARY_DIR}/localtestscript" <<EOF
LIST_TEST_PACKAGES='${LIST_TEST_PACKAGES}' LIST_TEST_PACKAGES='${LIST_TEST_PACKAGES}'
CGAL_ROOT='${CGAL_ROOT}' CGAL_ROOT='${CGAL_ROOT}'
@ -622,12 +625,16 @@ fi
cd '${CGAL_BINARY_DIR}/test'; cd '${CGAL_BINARY_DIR}/test';
[ -n "${ULIMIT_OPTIONS}" ] && ulimit ${ULIMIT_OPTIONS}; [ -n "${ULIMIT_OPTIONS}" ] && ulimit ${ULIMIT_OPTIONS};
nice ${NICE_OPTIONS} make ${MAKE_OPTS} -k -fmakefile2; nice ${NICE_OPTIONS} make ${MAKE_OPTS} -k -fmakefile2;
EOF
for file in "${CGAL_BINARY_DIR}/localtestscript" "${CGAL_BINARY_DIR}/localtestscript-redo-results-collection"; do
cat >> "$file" <<EOF
echo 'COLLECTING RESULTS'; echo 'COLLECTING RESULTS';
./collect_cgal_testresults_from_cmake; ./collect_cgal_testresults_from_cmake;
echo 'COPYING RESULTS'; echo 'COPYING RESULTS';
cp 'results_${CGAL_TESTER}_${PLATFORM}.tar.gz' 'results_${CGAL_TESTER}_${PLATFORM}.txt' '${CGAL_TEST_DIR}'; cp 'results_${CGAL_TESTER}_${PLATFORM}.tar.gz' 'results_${CGAL_TESTER}_${PLATFORM}.txt' '${CGAL_TEST_DIR}';
cd ..; cd ..;
EOF EOF
done
if [ -z "${KEEP_TESTS}" ]; then if [ -z "${KEEP_TESTS}" ]; then
cat >> "${CGAL_BINARY_DIR}/localtestscript" <<EOF cat >> "${CGAL_BINARY_DIR}/localtestscript" <<EOF
echo 'REMOVING LOCAL_TEST_DIR'; echo 'REMOVING LOCAL_TEST_DIR';
@ -636,7 +643,7 @@ EOF
fi fi
chmod ugo+x "${CGAL_BINARY_DIR}/localtestscript" chmod ugo+x "${CGAL_BINARY_DIR}"/localtestscript*
if [ -n "${SHOW_PROGRESS}" ]; then if [ -n "${SHOW_PROGRESS}" ]; then
remote_command ${HOST} "${CGAL_BINARY_DIR}/localtestscript" | tee "${ACTUAL_LOGFILE}.test.${PLATFORM}" 2>&1 remote_command ${HOST} "${CGAL_BINARY_DIR}/localtestscript" | tee "${ACTUAL_LOGFILE}.test.${PLATFORM}" 2>&1
@ -646,6 +653,14 @@ EOF
log_done "${ACTUAL_LOGFILE}.test.${PLATFORM}" log_done "${ACTUAL_LOGFILE}.test.${PLATFORM}"
fi
}
publish_results()
{
HOST=${1}
PLATFORM=${2}
# #
# collect results and put them on the web # collect results and put them on the web
# #
@ -661,18 +676,18 @@ EOF
${COMPRESSOR} -9f "results_${CGAL_TESTER}_${PLATFORM}.tar" ${COMPRESSOR} -9f "results_${CGAL_TESTER}_${PLATFORM}.tar"
fi fi
${TAR} cf "test_results-${HOST}.tar" "results_${CGAL_TESTER}_${PLATFORM}.tar.gz" "results_${CGAL_TESTER}_${PLATFORM}.txt" ${TAR} cf "test_results-${HOST}_${PLATFORM}.tar" "results_${CGAL_TESTER}_${PLATFORM}.tar.gz" "results_${CGAL_TESTER}_${PLATFORM}.txt"
${COMPRESSOR} -9f "test_results-${HOST}.tar" ${COMPRESSOR} -9f "test_results-${HOST}_${PLATFORM}.tar"
COMPILER=`printf "%s" "$2" | tr -c '[A-Za-z0-9]./[=-=]*_\'\''\":?() ' 'x'` COMPILER=`printf "%s" "$2" | tr -c '[A-Za-z0-9]./[=-=]*_\'\''\":?() ' 'x'`
FILENAME="${CGAL_RELEASE_ID}_${CGAL_TESTER}-test`datestr`-${COMPILER}-cmake.tar.gz" FILENAME="${CGAL_RELEASE_ID}_${CGAL_TESTER}-test`datestr`-${COMPILER}-cmake.tar.gz"
LOGFILENAME="${CGAL_RELEASE_ID}-log`datestr`-${HOST}.gz" LOGFILENAME="${CGAL_RELEASE_ID}-log`datestr`-${HOST}.gz"
${COMPRESSOR} -9f "${ACTUAL_LOGFILE}.test.${PLATFORM}" ${COMPRESSOR} -9f "${ACTUAL_LOGFILE}.test.${PLATFORM}"
mv "${ACTUAL_LOGFILE}.test.${PLATFORM}.gz" "${LOGS_DIR}/${LOGFILENAME}" mv "${ACTUAL_LOGFILE}.test.${PLATFORM}.gz" "${LOGS_DIR}/${LOGFILENAME}"
log "${ACTUAL_LOGFILE}" "Test results: ${CGAL_TEST_DIR}/test_results-${HOST}.tar.gz" log "${ACTUAL_LOGFILE}" "Test results: ${CGAL_TEST_DIR}/test_results-${HOST}_${PLATFORM}.tar.gz"
if [ -z "${DO_NOT_UPLOAD}" ]; then if [ -z "${DO_NOT_UPLOAD}" ]; then
put_on_web "test_results-${HOST}.tar.gz" "${FILENAME}" put_on_web "test_results-${HOST}_${PLATFORM}.tar.gz" "${FILENAME}"
fi fi
# #
@ -684,7 +699,6 @@ EOF
printf "result collection::\n${FILENAME}\n" | ${SENDMAIL} -s "autohandle" ${i} printf "result collection::\n${FILENAME}\n" | ${SENDMAIL} -s "autohandle" ${i}
done done
fi fi
fi
} }
# ---------------------------------------------------------------------------------------- # ----------------------------------------------------------------------------------------
@ -702,6 +716,7 @@ run_test_on_host()
for PLATFORM in ${PLATFORMS}; do for PLATFORM in ${PLATFORMS}; do
run_test_on_host_and_platform "${HOST}" "${PLATFORM}" run_test_on_host_and_platform "${HOST}" "${PLATFORM}"
publish_results "${HOST}" "${PLATFORM}"
done done
} }
@ -717,6 +732,7 @@ run_test()
for HOST in ${BUILD_HOSTS}; do for HOST in ${BUILD_HOSTS}; do
run_test_on_host ${HOST} & run_test_on_host ${HOST} &
publish_results "${HOST}" "${PLATFORM}"
done done
} }