https://svn.lrde.epita.fr/svn/lrde-tools/trunk/build-farm
This is to avoid relying on Subversion's .svn/entries files (to get
this revision number), whose format in not fixed, according to the
project team.
Index: ChangeLog
from Roland Levillain <roland(a)lrde.epita.fr>
* maintainer/update_unpacked (SVN_LATEST_REV): New variable.
For each package, store the latest revision number in the
working copy.
update_unpacked | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
Index: maintainer/update_unpacked
--- maintainer/update_unpacked (revision 434)
+++ maintainer/update_unpacked (working copy)
@@ -2,10 +2,12 @@
# Update svn working copies of rsync's unpacked directory.
-
+# The central pool of working copies, rsync'd by the build farm hosts.
SVN_PATH="/work/master/unpacked"
# List of packages with the corresponding URL.
SVN_PACKAGES="/work/master/maintainer/packages"
+# The name of the file holding the the latest revision
+SVN_LATEST_REV=",latest-svn-revision"
(
cd "$SVN_PATH"
@@ -24,5 +26,13 @@
rm -rf "$package.old"
fi
+ # Store the latest revision number in the working copy.
+ rm -f "$SVN_LATEST_REV"
+ env LANG=C svn status -Nv $package \
+ | perl -n \
+ -e "print \"\$1\n\"" \
+ -e " if (s/\\s*(\\d+)\\s+\\d+\\s+\\S+\\s+$package\$/\\1/)" \
+ >"$package/$SVN_LATEST_REV"
+
done < $SVN_PACKAGES
)