chiark / gitweb /
changelog: Document reorganisations
[dgit.git] / tests / run-all
index b5c5bb06abeaa13a87abfae1f5a3e208b26e5f01..f72b9fae7d0958d490213027070c2736da87bc98 100755 (executable)
@@ -1,15 +1,22 @@
-#!/bin/sh
+#!/bin/bash
 set -e
 # convenience script for running the tests outside adt-run
 # usage: tests/using-intree tests/run-all
 
-set +e
-jcpus=`perl -MSys::CPU -we 'printf "-j%d\n",Sys::CPU::cpu_count()'`
-set -e
+set -o pipefail
+
+ncpus=$(nproc || echo 1)
+jcpus=-j$(( ncpus * 134 / 100 ))
 
 if [ $# != 0 ]; then
        set TESTSCRIPTS="$*"
 fi
 
-set -x
-exec make $jcpus -k -f tests/Makefile "$@"
+mkdir -p tests/tmp
+
+export DGIT_GNUPG_STUNT_ERRLOG=$( tty -s ||: )
+
+(
+ set -x
+ exec make $jcpus -k -f tests/Makefile "$@"
+) 2>&1 |tee tests/tmp/run-all.log