more robust for parallel runs
[infrastructure.git] / scripts / vbuild-nightly.sh
old mode 100644 (file)
new mode 100755 (executable)
index 6647330..92f5639
@@ -1,10 +1,27 @@
 #!/bin/bash
-REVISION=$(echo '$Revision: 1053 $' | sed -e 's,\$,,g' -e 's,^\w*:\s,,' )
 COMMAND=$(basename $0)
-SVNPATH="http://svn.one-lab.org/build/trunk"
+BUILD_SCM_URL="git://git.onelab.eu/build"
 
-cd /tmp
-svn cat $SVNPATH/$COMMAND  > $COMMAND
-chmod +x $COMMAND
-exec $COMMAND "$@"
+# scan args for any -s option, and set BUILD_SCM_URL in this case
+function scan_build_scm_url () {
+    while [[ -n "$@" ]] ; do
+       if [ "$1" == "-s" ] ; then
+           BUILD_SCM_URL="$2"
+       fi
+       shift
+    done
 
+    GIT_REPO=$(echo $BUILD_SCM_URL | cut -d@ -f1)
+    GIT_TAG=$(echo $BUILD_SCM_URL | cut -s -d@ -f2)
+    GIT_TAG=${GIT_TAG:-master}
+}
+
+scan_build_scm_url "$@"
+
+tmpd=/tmp/git-$$
+tmpc=$tpmd/$COMMAND
+mkdir $tmpd
+git archive --remote=$GIT_REPO $GIT_TAG $COMMAND | tar -C $tmpd -xf -
+chmod +x $tmc
+$tmpc "$@"
+rm -rf $tmpd