fate: support testing of release branches

Adding 'branch=release/10' to the fate config file will check the
release/10 branch instead of master. If no branch is specified it will
use 'master' so that existing config are still valid.

The server side changes are already deployed, see
https://fate.libav.org/v10/ for an example. The server supports only the
release/* branches.

The server enforces that a single slot tests always the same branch.
Please append "-v$RELEASE" to the slot of release branch configs or make
the slot otherwise unique.

A different fate samples dir is needed for each release branch. make
fate-rsync has the correct URL in each branch.
This commit is contained in:
Janne Grunau 2014-07-26 23:29:46 +02:00
parent 541427ab4d
commit 42eb9154a8
1 changed files with 5 additions and 3 deletions

View File

@ -19,6 +19,8 @@ test -n "$slot" || die "slot not specified"
test -n "$repo" || die "repo not specified"
test -d "$samples" || die "samples location not specified"
: ${branch:=master}
lock(){
lock=$1/fate.lock
(set -C; exec >$lock) 2>/dev/null || return
@ -28,14 +30,14 @@ lock(){
checkout(){
case "$repo" in
file:*|/*) src="${repo#file:}" ;;
git:*) git clone --quiet "$repo" "$src" ;;
git:*) git clone --quiet --branch "$branch" "$repo" "$src" ;;
esac
}
update()(
cd ${src} || return
case "$repo" in
git:*) git fetch --force; git reset --hard origin/master ;;
git:*) git fetch --force; git reset --hard "origin/$branch" ;;
esac
)
@ -79,7 +81,7 @@ clean(){
report(){
date=$(date -u +%Y%m%d%H%M%S)
echo "fate:0:${date}:${slot}:${version}:$1:$2:${comment}" >report
echo "fate:1:${date}:${slot}:${version}:$1:$2:${branch}:${comment}" >report
cat ${build}/config.fate ${build}/tests/data/fate/*.rep >>report
test -n "$fate_recv" && $tar report *.log | gzip | $fate_recv
}