[PATCH] D11478: test-release.sh: Defer test errors until the end
Hans Wennborg
hans at chromium.org
Thu Jul 23 15:40:10 PDT 2015
hans created this revision.
hans added reviewers: dsanders, rengolin, benpope81.
hans added a subscriber: llvm-commits.
This makes the script run to the end and produce tarballs even on test failures, and then highlights any errors afterwards.
(I first tried just storing the errors in a global variable, but that didn't work as the "test_llvmCore" function invocation is actually running as a sub-shell.)
http://reviews.llvm.org/D11478
Files:
utils/release/test-release.sh
Index: utils/release/test-release.sh
===================================================================
--- utils/release/test-release.sh
+++ utils/release/test-release.sh
@@ -208,6 +208,16 @@
fi
Package=$Package-$Triple
+# Errors to be highlighted at the end are written to this file.
+echo -n > $LogDir/deferred_errors.log
+
+function deferred_error() {
+ Phase="$1"
+ Flavor="$2"
+ Msg="$3"
+ echo "[${Flavor} Phase${Phase}] ${Msg}" >> $LogDir/deferred_errors.log
+}
+
# Make sure that a required program is available
function check_program_exists() {
local program="$1"
@@ -367,13 +377,17 @@
ObjDir="$3"
cd $ObjDir
- ${MAKE} -j $NumJobs -k check-all \
- 2>&1 | tee $LogDir/llvm.check-Phase$Phase-$Flavor.log
+ if ! ( ${MAKE} -j $NumJobs -k check-all \
+ 2>&1 | tee $LogDir/llvm.check-Phase$Phase-$Flavor.log ) ; then
+ deferred_error $Phase $Flavor "check-all failed"
+ fi
if [ "$use_autoconf" = "yes" ]; then
# In the cmake build, unit tests are run as part of check-all.
- ${MAKE} -k unittests \
- 2>&1 | tee $LogDir/llvm.unittests-Phase$Phase-$Flavor.log
+ if ! ( ${MAKE} -k unittests 2>&1 | \
+ tee $LogDir/llvm.unittests-Phase$Phase-$Flavor.log ) ; then
+ deferred_error $Phase $Flavor "unittests failed"
+ fi
fi
cd $BuildDir
@@ -538,4 +552,13 @@
echo "### Package: $Package.tar.xz"
fi
echo "### Logs: $LogDir"
+
+echo "### Errors:"
+if [ -s "$LogDir/deferred_errors.log" ]; then
+ cat "$LogDir/deferred_errors.log"
+ exit 1
+else
+ echo "None."
+fi
+
exit 0
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D11478.30530.patch
Type: text/x-patch
Size: 1611 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150723/eea3b36f/attachment.bin>
More information about the llvm-commits
mailing list