X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=tools%2Fnd_build;h=baf77a8d84cbac2765b172332af47609cacfb038;hb=eda48f271898435920fead35ac3286a6385698da;hp=9987817314b602d137b259322d21c07606f8a97d;hpb=5090ef2209f59db97eb797724cd0d6e244717517;p=neurodebian.git diff --git a/tools/nd_build b/tools/nd_build index 9987817..baf77a8 100755 --- a/tools/nd_build +++ b/tools/nd_build @@ -77,6 +77,8 @@ else shift; shift; shift; shift fi +# failed will be set to 1 if any build fails +failed= for a in $arch; do # default options="$opts" @@ -88,16 +90,23 @@ for a in $arch; do else options="$opts --debbuildopts -B" fi + echo "Building for $family $dist $a ..." buildfile="${dscfile%.dsc}_${a}.build" + tsfile="${buildfile}.timestamp.`date +%s`" # "unique" timestamp file + /usr/bin/time -f "%E real, %U user, %S sys, %O out" -o "${tsfile}" \ cowbuilder --build $dscfile \ --basepath ${cowbuilderroot}/cow/${family}-${dist}-${a}.cow \ --buildresult . \ --logfile "${buildfile}" \ $options \ - "$@" && status='OK' || status='FAILED' + "$@" && status='OK' || { status='FAILED'; failed=1; } + timeinfo=$(tail -n 1 "${tsfile}") # Update the summary of builds touch summary.build # Assure existence - sed -i -e '/${buildfile}/d' summary.build # Prune previous entry - echo -e "${buildfile}\t$status" >> summary.build # Add current one + sed -i -e "s/\(${buildfile}.*out$\)/\1 OLD/g" summary.build # Mark previous entry as OLD + echo -e "${buildfile}\t$status\t$timeinfo" >> summary.build # Add current one + rm -f "${tsfile}" done +# Exit with failure status if any built failed +[ -z $failed ] || exit 1