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

[Xen-devel] [OSSTEST PATCH RFC] do not install xend for xl tests



We need to check that xl works correctly when xend is not even installed (in
case we are subtly relying on some file which xend installs).

Therefore for xen 4.4 onwards never build xend in the default build job and
instead create two new build jobs (for i386 and amd64) with xend enabled.
Update the tests to use the correct xenbuildjob.

Tested only to the extent of running make-flight for xen-4.{2,3,4}-testing and
xen-unstable and observing that the jobs do not differ for 4.2 and 4.3 and the
4.4 and unstable have gained the new build-{i386,and64}-xend jobs and that the
relevant tests have switched their xenbuildjob runvar to have the suffix.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
---
Relies on the xen-create-image workaround which I send earier today
---
 make-flight |   72 +++++++++++++++++++++++++++++++++++++++++++++--------------
 1 file changed, 55 insertions(+), 17 deletions(-)

diff --git a/make-flight b/make-flight
index 5b96153..703006e 100755
--- a/make-flight
+++ b/make-flight
@@ -83,9 +83,22 @@ if [ x$buildflight = x ]; then
         suite_runvars=
     fi
 
+    # In 4.4 onwards xend is off by default. If necessary we build a
+    # separate set of binaries with xend enabled in order to run those
+    # tests which use xend.
     case "$arch" in
-    i386|amd64) enable_xend=true;;
-    *) enable_xend=false;;
+    i386|amd64) want_xend=true;;
+    *) want_xend=false;;
+    esac
+
+    case "$xenbranch" in
+    xen-3.*-testing) build_defxend=$want_xend; build_extraxend=false;;
+    xen-4.0-testing) build_defxend=$want_xend; build_extraxend=false;;
+    xen-4.1-testing) build_defxend=$want_xend; build_extraxend=false;;
+    xen-4.2-testing) build_defxend=$want_xend; build_extraxend=false;;
+    xen-4.3-testing) build_defxend=$want_xend; build_extraxend=false;;
+    *) build_defxend=false;
+       build_extraxend=$want_xend
     esac
 
     case "$xenbranch" in
@@ -104,7 +117,7 @@ if [ x$buildflight = x ]; then
     
build_hostflags=share-build-$suite-$arch,arch-$arch,suite-$suite,purpose-build
 
     ./cs-job-create $flight build-$arch build                               \
-               arch=$arch enable_xend=$enable_xend enable_ovmf=$enable_ovmf    
     \
+               arch=$arch enable_xend=$build_defxend enable_ovmf=$enable_ovmf  
     \
        tree_qemu=$TREE_QEMU         \
        tree_qemuu=$TREE_QEMU_UPSTREAM       \
        tree_xen=$TREE_XEN                   \
@@ -115,6 +128,20 @@ if [ x$buildflight = x ]; then
                revision_qemu=$REVISION_QEMU                                 \
                revision_qemuu=$REVISION_QEMU_UPSTREAM
 
+    if [ $build_extraxend = "true" ] ; then
+    ./cs-job-create $flight build-$arch-xend build                          \
+               arch=$arch enable_xend=true enable_ovmf=$enable_ovmf         \
+       tree_qemu=$TREE_QEMU         \
+       tree_qemuu=$TREE_QEMU_UPSTREAM       \
+       tree_xen=$TREE_XEN                   \
+               $RUNVARS $BUILD_RUNVARS $BUILD_XEN_RUNVARS $arch_runvars     \
+               $suite_runvars                                               \
+               host_hostflags=$build_hostflags    \
+               revision_xen=$REVISION_XEN                                   \
+               revision_qemu=$REVISION_QEMU                                 \
+               revision_qemuu=$REVISION_QEMU_UPSTREAM
+    fi
+
     ./cs-job-create $flight build-$arch-pvops build-kern                    \
                arch=$arch kconfighow=xen-enable-xen-config                  \
        tree_xen=$TREE_XEN                   \
@@ -198,10 +225,20 @@ job_create_test () {
        local job=$1; shift
        local recipe=$1; shift
        local toolstack=$1; shift
+       local xenbuildjob=$1; shift
 
         local job_md5=`echo "$job" | md5sum`
         job_md5="${job_md5%  -}"
 
+        case "$xenbranch:$toolstack" in
+        xen-3.*-testing:*) ;;
+        xen-4.0-testing:*) ;;
+        xen-4.1-testing:*) ;;
+        xen-4.2-testing:*) ;;
+        xen-4.3-testing:*) ;;
+        *:xend) xenbuildjob="$xenbuildjob-xend";;
+        esac
+
         if [ "x$JOB_MD5_PATTERN" != x ]; then
                 case "$job_md5" in
                 $JOB_MD5_PATTERN)       ;;
@@ -237,7 +274,7 @@ job_create_test () {
         esac
 
        ./cs-job-create $flight $job $recipe toolstack=$toolstack \
-               $RUNVARS $TEST_RUNVARS $most_runvars "$@"
+               $RUNVARS $TEST_RUNVARS $most_runvars xenbuildjob=$xenbuildjob 
"$@"
 }
 
 for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
@@ -329,28 +366,29 @@ for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
 
       
most_hostflags="arch-$dom0arch,arch-xen-$xenarch,suite-$suite,purpose-test"
 
+      xenbuildjob="${bfi}build-$xenarch"
+
       most_runvars="
                arch=$dom0arch                                  \
-               xenbuildjob=${bfi}build-$xenarch                \
                kernbuildjob=${bfi}build-$dom0arch-$kernbuild   \
                buildjob=${bfi}build-$dom0arch                  \
                kernkind=$kernkind                              \
                $arch_runvars $suite_runvars
                "
       if [ $dom0arch = armhf ]; then
-         job_create_test test-$xenarch$kern-$dom0arch-xl test-debian xl \
+         job_create_test test-$xenarch$kern-$dom0arch-xl test-debian xl 
"$xenbuildjob" \
                debian_kernkind=$kernkind                                 \
                debian_arch=$dom0arch                                     \
                all_hostflags=$most_hostflags
          continue
       fi
 
-      job_create_test test-$xenarch$kern-$dom0arch-pv test-debian xend \
+      job_create_test test-$xenarch$kern-$dom0arch-pv test-debian xend 
"$xenbuildjob" \
                debian_kernkind=$kernkind                                 \
                debian_arch=$dom0arch                                     \
                all_hostflags=$most_hostflags
 
-      job_create_test test-$xenarch$kern-$dom0arch-xl test-debian xl \
+      job_create_test test-$xenarch$kern-$dom0arch-xl test-debian xl 
"$xenbuildjob" \
                debian_kernkind=$kernkind                                 \
                debian_arch=$dom0arch                                     \
                all_hostflags=$most_hostflags
@@ -360,7 +398,7 @@ for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
         for freebsdarch in amd64 i386; do
 
  job_create_test 
test-$xenarch$kern-$dom0arch$qemuu_suffix-freebsd10-$freebsdarch \
-                       test-freebsd xl \
+                       test-freebsd xl "$xenbuildjob" \
                        freebsd_arch=$freebsdarch \
  
freebsd_image=${FREEBSD_IMAGE_PREFIX-FreeBSD-10.0-BETA3-}$freebsdarch${FREEBSD_IMAGE_SUFFIX--20131103-r257580.qcow2.xz}
 \
                        all_hostflags=$most_hostflags
@@ -406,7 +444,7 @@ for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
 
       job_create_test \
                 
test-$xenarch$kern-$dom0arch-$toolstack$qemuu_suffix-winxpsp3$vcpus_suffix \
-                test-win $toolstack $qemuu_runvar \
+                test-win $toolstack "$xenbuildjob" $qemuu_runvar \
                win_image=winxpsp3.iso $vcpus_runvars   \
                all_hostflags=$most_hostflags,hvm
 
@@ -416,7 +454,7 @@ for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
       if [ $xenarch = amd64 ]; then
 
       job_create_test test-$xenarch$kern-$dom0arch-xl$qemuu_suffix-win7-amd64 \
-                test-win xl $qemuu_runvar \
+                test-win xl "$xenbuildjob" $qemuu_runvar \
                win_image=win7-x64.iso \
                all_hostflags=$most_hostflags,hvm
 
@@ -427,7 +465,7 @@ for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
        for cpuvendor in amd intel; do
 
     job_create_test 
test-$xenarch$kern-$dom0arch$qemuu_suffix-rhel6hvm-$cpuvendor \
-                                               test-rhelhvm xl \
+                                               test-rhelhvm xl "$xenbuildjob" \
                redhat_image=rhel-server-6.1-i386-dvd.iso               \
                all_hostflags=$most_hostflags,hvm-$cpuvendor \
                 $qemuu_runvar
@@ -439,7 +477,7 @@ for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
       done # qemuu_suffix
 
       job_create_test test-$xenarch$kern-$dom0arch-pair test-pair \
-               $onetoolstack \
+               $onetoolstack "$xenbuildjob" \
                 !host !host_hostflags \
                debian_kernkind=$kernkind                                 \
                debian_arch=$dom0arch                                     \
@@ -450,7 +488,7 @@ for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
        for pin in '' -pin; do
 
       job_create_test test-$xenarch$kern-$dom0arch-xl-sedf$pin  \
-           test-debian xl guests_vcpus=4 xen_boot_append="sched=sedf 
loglvl=all ${pin:+dom0_vcpus_pin}" linux_boot_append='loglevel=9 debug' \
+           test-debian xl "$xenbuildjob" guests_vcpus=4 
xen_boot_append="sched=sedf loglvl=all ${pin:+dom0_vcpus_pin}" 
linux_boot_append='loglevel=9 debug' \
                debian_kernkind=$kernkind                                 \
                debian_arch=$dom0arch                                     \
                all_hostflags=$most_hostflags
@@ -462,13 +500,13 @@ for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
       if [ $xenarch = amd64 -a $dom0arch = i386 ]; then
 
       job_create_test test-$xenarch$kern-$dom0arch-xl-multivcpu \
-                        test-debian xl guests_vcpus=4 \
+                        test-debian xl "$xenbuildjob" guests_vcpus=4 \
                debian_kernkind=$kernkind                                 \
                debian_arch=$dom0arch                                     \
                all_hostflags=$most_hostflags
 
       job_create_test test-$xenarch$kern-$dom0arch-xl-credit2  \
-           test-debian xl guests_vcpus=4 xen_boot_append='sched=credit2'      \
+           test-debian xl "$xenbuildjob" guests_vcpus=4 
xen_boot_append='sched=credit2'      \
                debian_kernkind=$kernkind                                 \
                debian_arch=$dom0arch                                     \
                all_hostflags=$most_hostflags
@@ -480,7 +518,7 @@ for xenarch in ${TEST_ARCHES- i386 amd64 armhf } ; do
         for cpuvendor in intel; do
 
       job_create_test test-$xenarch$kern-$dom0arch-xl-pcipt-intel \
-                        test-debian-nomigr xl guests_vcpus=4 \
+                        test-debian-nomigr xl "$xenbuildjob" guests_vcpus=4 \
                debian_kernkind=$kernkind                                 \
                debian_arch=$dom0arch                                     \
                debian_pcipassthrough_nic=host                            \
-- 
1.7.10.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®.