1#! /bin/sh 2 3set -e 4 5if test -z "$BUILD_HAVE_SOURCES"; then 6 echo -n "Building source code distribution..." 7 ./utils/build-sources.sh > /dev/null 8 echo "OK" 9fi 10 11if test -z "$*"; then 12 for f in tests/build-hosts/*; do 13 if test -f $f; then 14 hosts="$hosts `basename $f`" 15 fi 16 done 17else 18 hosts="$*" 19fi 20 21for hostfile in $hosts; do 22 ( 23 . tests/build-hosts/$hostfile 24 pkg=`ls dist/tre-*.tar.gz` 25 pkg=`basename $pkg` 26 dir=`basename $pkg .tar.gz` 27 if test -z "$scp_host"; then 28 echo foo 29 scp_host="$host" 30 fi 31 32 cat tests/build-hosts/$hostfile > $hostfile.tmp 33 echo "pkg=$pkg" >> $hostfile.tmp 34 echo "dir=$dir" >> $hostfile.tmp 35 chmod +x $hostfile.tmp 36 37 echo "Copying files to $scp_host..." 38 scp dist/$pkg tests/build-run.sh $scp_host:build-tmp 39 scp $hostfile.tmp $scp_host:build-tmp/build-params.sh 40 rm -f $hostfile.tmp 41 echo "Starting job on $host..." 42 ( ssh $host "cd build-tmp; ./build-run.sh"; 43 if test $? -ne 0; then 44 echo "$host: FAILED:" 45 exit 1 46 fi ) 47 ) & 48done 49wait 50