[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH OSSTEST v3 2/2] cambridge: arrange to test each new baseline



Provide a new cr-daily-branch setting OSSTEST_BASELINES_ONLY which
causes it to only attempt to test the current baseline (if it is
untested) and never the tip version. Such tests will not result in any
push.

Each new baseline is tested exactly once (i.e. we aren't repeating
hoping for a pass), hence the correct revision is just the one tested
by the last run on the branch.

Add a cronjob to Cambridge which runs in this manner, ensuring that
there will usually be some sort of reasonably up to date baseline for
any given branch which can be used for comparisons in adhoc testing or
bisections.

This will also give us some data on the success of various branches on
the set of machines in Cambridge, which can be useful/interesting.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
---
v2: Wording tweak.
v3: Pick correct OLD_REVISION (drop Ack), set $subject_prefix
---
 cr-daily-branch   | 23 +++++++++++++++++++++--
 crontab-cambridge |  1 +
 2 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/cr-daily-branch b/cr-daily-branch
index 06df5a0..c864ba2 100755
--- a/cr-daily-branch
+++ b/cr-daily-branch
@@ -91,12 +91,24 @@ if [ "x$OLD_REVISION" = x ]; then
            OSSTEST_NO_BASELINE=y
            OLD_REVISION=flight-`check_tested`
            ;;
-       *) OLD_REVISION="`./ap-fetch-version-old $branch`";;
+       *)
+           if [ "x$OSSTEST_BASELINES_ONLY" = xy ] ; then
+               # We run on each upstream baseline exactly once so the
+               # last test will have tested the previous upstream baseline
+               OLD_REVISION=`check_tested --print-revision=$tree`
+           else
+               OLD_REVISION="`./ap-fetch-version-old $branch`"
+           fi
+           ;;
     esac
     export OLD_REVISION
 fi
 
-if [ "x$OSSTEST_NO_BASELINE" != xy ] ; then
+if [ "x$OSSTEST_BASELINES_ONLY" = xy ] ; then
+    force_baseline=baselines-only
+    wantpush=false
+    skipidentical=true
+elif [ "x$OSSTEST_NO_BASELINE" != xy ] ; then
        testedflight=`check_tested --revision-$tree="$OLD_REVISION"`
 
        if [ "x$testedflight" = x ]; then
@@ -274,6 +286,13 @@ any, is the most recent actually tested revision.
 
 END
     ;;
+    baselines-only)
+        subject_prefix="[$branch baseline-only test] "
+        cat >> $heading <<END
+This run is configured for baseline tests only.
+
+END
+    ;;
     '') # Not forcing a baseline, nothing to say.
     ;;
 esac
diff --git a/crontab-cambridge b/crontab-cambridge
index b2de44e..7393fe5 100644
--- a/crontab-cambridge
+++ b/crontab-cambridge
@@ -2,6 +2,7 @@ 
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 MAILTO=ian.jackson@xxxxxxxxxx,ian.campbell@xxxxxxxxxxxxx
 # m            h       dom mon dow     command
 4-59/30                *       * * *           cd testing.git && 
BRANCHES='osstest'                    ./cr-for-branches branches -q 
"./cr-daily-branch --real"
+11-59/30       *       * * *           cd testing.git && 
OSSTEST_BASELINES_ONLY=y              ./cr-for-branches branches -q 
"./cr-daily-branch --real"
 46             7       * * 6           cd testing.git && 
BRANCHES='distros-debian-snapshot'    ./cr-for-branches branches -w 
"./cr-daily-branch --real"
 46             7       * * 5           cd testing.git && 
BRANCHES='distros-debian-sid'         ./cr-for-branches branches -w 
"./cr-daily-branch --real"
 46             7       * * 4           cd testing.git && 
BRANCHES='distros-debian-jessie'      ./cr-for-branches branches -w 
"./cr-daily-branch --real"
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.