shift; shift; shift; shift
fi
+# failed will be set to 1 if any build fails
+failed=
for a in $arch; do
# default
options="$opts"
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, %K mem, %O out" -o "${tsfile}" \
+ /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'
-
- timeinfo=$(cat "${tsfile}")
+ "$@" && status='OK' || { status='FAILED'; failed=1; }
+ timeinfo=$(tail -n 1 "${tsfile}")
# Update the summary of builds
touch summary.build # Assure existence
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