Make all test failures non-fatal at build time, so that intermittent test failures do not interfere with possible security updates during Debian stretch-as-stable.

This commit is contained in:
Simon McVittie 2016-12-20 11:28:22 +00:00
parent f7eaa67d1f
commit 3fcd09ca33
2 changed files with 12 additions and 17 deletions

8
debian/changelog vendored
View File

@ -1,3 +1,11 @@
ostree (2016.15-2) UNRELEASED; urgency=medium
* Make all test failures non-fatal at build time, so that intermittent
test failures do not interfere with possible security updates during
Debian stretch-as-stable.
-- Simon McVittie <smcv@debian.org> Tue, 20 Dec 2016 11:27:13 +0000
ostree (2016.15-1) unstable; urgency=medium ostree (2016.15-1) unstable; urgency=medium
* New upstream release * New upstream release

21
debian/test.sh vendored
View File

@ -2,14 +2,6 @@
set -e set -e
ignore=
case "$DEB_HOST_ARCH" in
(mipsel)
ignore=yes
;;
esac
export VERBOSE=1 export VERBOSE=1
try_tests=5 try_tests=5
@ -17,7 +9,7 @@ try_tests=5
failed=0 failed=0
make check || failed=1 make check || failed=1
if [ "$failed" -gt 0 ] || [ -n "$ignore" ]; then if [ "$failed" -gt 0 ]; then
[ "$failed" -eq 0 ] || echo "Test failed! Checking how reproducible it is..." [ "$failed" -eq 0 ] || echo "Test failed! Checking how reproducible it is..."
for i in $(seq 1 "$(( $try_tests - 1 ))"); do for i in $(seq 1 "$(( $try_tests - 1 ))"); do
if ! make check; then if ! make check; then
@ -37,15 +29,10 @@ fi
# There are several race conditions that cause intermittent failures. # There are several race conditions that cause intermittent failures.
# They are not actually a regression - we've just been luckier in the # They are not actually a regression - we've just been luckier in the
# past - so let newer versions build reliably. # past - so let newer versions build reliably.
if [ "$failed" -gt 2 ]; then if [ "$failed" -gt 0 ]; then
echo "Failed $failed out of $try_tests test runs"
if [ -z "$ignore" ]; then
exit 1
else
echo "Ignoring test failure for this architecture"
fi
elif [ "$failed" -gt 0 ]; then
echo "Failed $failed out of $try_tests test runs; continuing anyway" echo "Failed $failed out of $try_tests test runs; continuing anyway"
else
echo "All tests passed"
fi fi
exit 0 exit 0