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

[Xen-devel] [PATCH v6 15/20] osstest: change the meaning of need_build_host



Make need_build_host store a string instead of a boolean. This is
later going to be expanded to handle the FreeBSD build jobs.

Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
---
Changes since v5:
 - Use a regsub to set need_build_host.
 - NB: I would prefer to keep the tolower instead of changing the
   procs to -FREEBSD/-LINUX since I don't really like the SHOUTING.

Changes since v4:
 - Fix the usage of the catching-otherwise blocks.

Changes since v3:
 - New in this version (split from patch).
---
 sg-run-job | 33 +++++++++++++++++++--------------
 1 file changed, 19 insertions(+), 14 deletions(-)

diff --git a/sg-run-job b/sg-run-job
index b1f94f4d..2ec785b4 100755
--- a/sg-run-job
+++ b/sg-run-job
@@ -52,12 +52,11 @@ proc run-job {job} {
     set skip_globs     [jobdb::read-runvar $flight $job skip_testids]
 
     set nh [need-hosts/$jobinfo(recipe)]
-    if {![string compare $nh BUILD]} {
+    if {[regsub {^BUILD_} $nh "" need_build_host]} {
         set need_xen_hosts {}
-        set need_build_host 1
     } else {
         set need_xen_hosts $nh
-        set need_build_host 0
+        set need_build_host {}
     }
     set nested_layers_hosts {}
 
@@ -68,7 +67,9 @@ proc run-job {job} {
         eval run-ts broken  =             ts-hosts-allocate + $need_xen_hosts
     }
 
-    if {$need_build_host} { catching-otherwise broken allocate-build-host }
+    if {[llength $need_build_host]} {
+        catching-otherwise broken { allocate-build-host $need_build_host }
+    }
 
     if {$ok} { setstatus running                                          }
 
@@ -77,7 +78,11 @@ proc run-job {job} {
 
     if {$ok} { set syslog [spawn-ts broken = | ts-syslog-server]          }
 
-    if {$need_build_host} { catching-otherwise broken prepare-build-host }
+    if {[llength $need_build_host]} {
+        catching-otherwise broken {
+            prepare-build-host-[string tolower $need_build_host]
+        }
+    }
 
     per-host-ts broken  host-install/@(*) ts-host-install-twice
 
@@ -95,7 +100,7 @@ proc run-job {job} {
         set need_xen_hosts [lunappend nested_layers_hosts]
     }
 
-    if {$need_build_host && !$ok} {
+    if {[llength $need_build_host] && !$ok} {
        run-ts  !broken capture-logs      ts-logs-capture + host
     }
 
@@ -116,7 +121,7 @@ proc run-job {job} {
 
     if {$ok} { setstatus pass                                             }
 
-    if {$need_build_host && $ok} { jobdb::preserve-task 90 }
+    if {[llength $need_build_host] && $ok} { jobdb::preserve-task 90 }
 
     if {!$ok} {
         jobdb::logputs stdout "job not ok"
@@ -671,11 +676,11 @@ proc need-hosts/host-examine-linux {} { 
examine-host-examine debian }
 
 #---------- builds ----------
 
-proc need-hosts/build {} { return BUILD }
-proc need-hosts/build-kern {} { return BUILD }
-proc need-hosts/build-libvirt {} { return BUILD }
-proc need-hosts/build-rumprun {} { return BUILD }
-proc need-hosts/build-xtf {} { return BUILD }
+proc need-hosts/build {}                { return BUILD_LINUX }
+proc need-hosts/build-kern {}           { return BUILD_LINUX }
+proc need-hosts/build-libvirt {}        { return BUILD_LINUX }
+proc need-hosts/build-rumprun {}        { return BUILD_LINUX }
+proc need-hosts/build-xtf {}            { return BUILD_LINUX }
 
 proc run-job/build {} {
     run-ts . = ts-xen-build
@@ -702,11 +707,11 @@ proc run-job/build-xtf {} {
     run-ts . = ts-xtf-build
 }
 
-proc allocate-build-host {} {
+proc allocate-build-host {ostype} {
     global jobinfo
     run-ts broken = ts-hosts-allocate + host
 }
-proc prepare-build-host {} {
+proc prepare-build-host-linux {} {
     global jobinfo
     run-ts broken host-install(*) ts-host-install-twice
     run-ts . host-build-prep ts-xen-build-prep
-- 
2.11.0 (Apple Git-81)


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

 


Rackspace

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