-
- PLDISTRO=$(vserver ${BASE} exec make --no-print-directory -C /build stage1=skip +PLDISTRO)
- PLDISTROTAGS=$(vserver ${BASE} exec make --no-print-directory -C /build stage1=skip +PLDISTROTAGS)
- build_SVNPATH=$(vserver ${BASE} exec make --no-print-directory -C /build stage1=skip +build-SVNPATH)
- PERSONALITY=$(vserver ${BASE} exec make --no-print-directory -C /build stage1=skip +PERSONALITY)
- MAILTO=$(vserver ${BASE} exec make --no-print-directory -C /build stage1=skip +MAILTO)
- WEBPATH=$(vserver ${BASE} exec make --no-print-directory -C /build stage1=skip +WEBPATH)
- TESTBUILDURL=$(vserver ${BASE} exec make --no-print-directory -C /build stage1=skip +TESTBUILDURL)
- WEBROOT=$(vserver ${BASE} exec make --no-print-directory -C /build stage1=skip +WEBROOT)
+ BUILD_SCM_URL=$(vserver ${BASE} exec make --no-print-directory -C /build stage1=skip +build-SVNPATH +build-GITPATH)
+ # for efficiency, crop everything in one make run
+ tmp=/tmp/${BASE}-env.sh
+ vserver ${BASE} exec make --no-print-directory -C /build stage1=skip \
+ ++PLDISTRO ++PLDISTROTAGS ++PERSONALITY ++MAILTO ++WEBPATH ++TESTBUILDURL ++WEBROOT > $tmp
+ . $tmp
+ rm -f $tmp
+ # update build
+ [ -n "$SSH_KEY" ] && setupssh ${BASE} ${SSH_KEY}
+ if echo $BUILD_SCM_URL | grep -q git ; then
+ vserver $BASE exec bash -c "cd /build; git pull; make tests-clean"
+ else
+ vserver $BASE exec svn update /build
+ fi
+ # make sure we refresh the tests place in case it has changed
+ rm -f /build/MODULES/tests
+ options=(${options[@]} -d $PLDISTRO -t $PLDISTROTAGS -s $BUILD_SCM_URL)
+ [ -n "$PERSONALITY" ] && options=(${options[@]} -p $PERSONALITY)
+ [ -n "$MAILTO" ] && options=(${options[@]} -m $MAILTO)
+ [ -n "$WEBPATH" ] && options=(${options[@]} -w $WEBPATH)
+ [ -n "$TESTBUILDURL" ] && options=(${options[@]} -W $TESTBUILDURL)
+ [ -n "$WEBROOT" ] && options=(${options[@]} -r $WEBROOT)