summaryrefslogtreecommitdiff
path: root/Tools
diff options
context:
space:
mode:
authorSatoshi Asami <asami@FreeBSD.org>2000-08-29 08:21:47 +0000
committerSatoshi Asami <asami@FreeBSD.org>2000-08-29 08:21:47 +0000
commit04694e899017de7c20c8433680eee420357397cb (patch)
tree74d4a26a41599b4e2028f59a36f3a97c3d55228d /Tools
parentHandle arbitrary number of log directories instead of just two. (diff)
Run build on three branches. Check the status file filled out by
dopackages and abort build if there were any errors. It intentionally leaves lock files behind in that case because it usually requires my manual intervention to fix whatever's wrong (usually a botched INDEX build due to someone forgetting to update dependency lines) and we don't want subsequent failed tries to wipe out all the good packages and distfiles we have accumulated.
Notes
Notes: svn path=/head/; revision=32085
Diffstat (limited to 'Tools')
-rwxr-xr-xTools/portbuild/scripts/dopackages242
1 files changed, 39 insertions, 3 deletions
diff --git a/Tools/portbuild/scripts/dopackages2 b/Tools/portbuild/scripts/dopackages2
index c464dfdf690d..83998cb004a3 100755
--- a/Tools/portbuild/scripts/dopackages2
+++ b/Tools/portbuild/scripts/dopackages2
@@ -5,23 +5,59 @@ pb=/a/asami/portbuild
mailto=asami@freebsd.org
lock=${pb}/lock
+status=${pb}/status
date=$(date '+%Y%m%d')
if [ -e ${lock} ]; then
- echo "Skipped package build since lock file exists" | sendmail $mailto
+# echo "Skipped package build since lock file exists" | sendmail $mailto
exit 1
fi
touch ${lock}
+rm -f ${status}
mkdir -p ${pb}/archive/buildlogs
+if [ -f ${pb}/scripts/dopackages.new ]; then
+ mv -f ${pb}/scripts/dopackages.new ${pb}/scripts/dopackages
+fi
ln -sf ${pb}/archive/buildlogs/log.4.${date} ${pb}/4/build.log
-${pb}/scripts/dopackages 4 2>&1 \
+${pb}/scripts/dopackages $@ 4 ${date} 2>&1 \
| tee ${pb}/archive/buildlogs/log.4.${date} \
| sendmail $mailto
+if [ -f ${status} ]; then
+ exit "$(cat ${status})"
+fi
+
+if [ -f ${pb}/scripts/dopackages.new ]; then
+ mv -f ${pb}/scripts/dopackages.new ${pb}/scripts/dopackages
+fi
+ln -sf ${pb}/archive/buildlogs/log.5.${date} ${pb}/5/build.log
+${pb}/scripts/dopackages -nocvsup $@ 5 ${date} 2>&1 \
+ | tee ${pb}/archive/buildlogs/log.5.${date} \
+ | sendmail $mailto
+if [ -f ${status} ]; then
+ exit "$(cat ${status})"
+fi
+
+if [ -f ${pb}/scripts/dopackages.new ]; then
+ mv -f ${pb}/scripts/dopackages.new ${pb}/scripts/dopackages
+fi
ln -sf ${pb}/archive/buildlogs/log.3.${date} ${pb}/3/build.log
-${pb}/scripts/dopackages -nocvsup 3 2>&1 \
+${pb}/scripts/dopackages -nocvsup $@ 3 ${date} 2>&1 \
| tee ${pb}/archive/buildlogs/log.3.${date} \
| sendmail $mailto
+if [ -f ${status} ]; then
+ exit "$(cat ${status})"
+fi
+
+cd ${pb}/archive/errorlogs/e.3.${date} && ${pb}/scripts/processlogs
+cd ${pb}/archive/errorlogs/e.4.${date} && ${pb}/scripts/processlogs
+cd ${pb}/archive/errorlogs/e.5.${date} && ${pb}/scripts/processlogs
+cd ${pb}/archive/errorlogs
+${pb}/scripts/comparelogs e.3.${date} e.4.${date}
+${pb}/scripts/comparelogs e.4.${date} e.3.${date}
+${pb}/scripts/comparelogs e.5.${date} e.4.${date}
+${pb}/scripts/comparelogs e.4.${date} e.5.${date}
+${pb}/scripts/bothlogs e.3.${date} e.4.${date} e.5.${date}
rm -f ${lock}