]> xenbits.xensource.com Git - osstest.git/log
osstest.git
9 years agocs-bisection-step: Properly handle external job refs in template flight-61349 flight-61350 flight-61351 flight-61352 flight-61353 flight-61354 flight-61355 flight-61356 flight-61357 flight-61358 flight-61359 flight-61360 flight-61361 flight-61362 flight-61363 flight-61364 flight-61365 flight-61366 flight-61367 flight-61368 flight-61369 flight-61370 flight-61371 flight-61372 flight-61373 flight-61374 flight-61375 flight-61376 flight-61377 flight-61378 flight-61379 flight-61380 flight-61381 flight-61382 flight-61383 flight-61384 flight-61385 flight-61386 flight-61387 flight-61388 flight-61389 flight-61390 flight-61391 flight-61392 flight-61393 flight-61394 flight-61395 flight-61396 flight-61397 flight-61398 flight-61399 flight-61400 flight-61401 flight-61402 flight-61403 flight-61404 flight-61405 flight-61406 flight-61407 flight-61408 flight-61409 flight-61410 flight-61411 flight-61412 flight-61413 flight-61414 flight-61415 flight-61416 flight-61417 flight-61418 flight-61419 flight-61420 flight-61421 flight-61422 flight-61423 flight-61424 flight-61425 flight-61426 flight-61427 flight-61428 flight-61429 flight-61430 flight-61431 flight-61432 flight-61433 flight-61434 flight-61435 flight-61436 flight-61437 flight-61438 flight-61439 flight-61440 flight-61441 flight-61442 flight-61443 flight-61444 flight-61445 flight-61446 flight-61447 flight-61448 flight-61449 flight-61450 flight-61452 flight-61453 flight-61454 flight-61455 flight-61456 flight-61457 flight-61458 flight-61459 flight-61460 flight-61461 flight-61462 flight-61463 flight-61464 flight-61465 flight-61466 flight-61467 flight-61468 flight-61470 flight-61471 flight-61472 flight-61473 flight-61474 flight-61475 flight-61476 flight-61477 flight-61478 flight-61479 flight-61480 flight-61481 flight-61482 flight-61483 flight-61484 flight-61485 flight-61486 flight-61487 flight-61488 flight-61490 flight-61491 flight-61492 flight-61493 flight-61494 flight-61495 flight-61496 flight-61497 flight-61498 flight-61499 flight-61500 flight-61501 flight-61503 flight-61504 flight-61505 flight-61506 flight-61507 flight-61508 flight-61509 flight-61511 flight-61512 flight-61513 flight-61514 flight-61515 flight-61516 flight-61517 flight-61518 flight-61519 flight-61520 flight-61521 flight-61522 flight-61523 flight-61524 flight-61525 flight-61526 flight-61527 flight-61528 flight-61529 flight-61530 flight-61531 flight-61532 flight-61533 flight-61534 flight-61535 flight-61536 flight-61537 flight-61538 flight-61539 flight-61540 flight-61541 flight-61542 flight-61543 flight-61544 flight-61545 flight-61546 flight-61547 flight-61548 flight-61549 flight-61550 flight-61551 flight-61553 flight-61555 flight-61556 flight-61559 flight-61561 flight-61562 flight-61563 flight-61565 flight-61566 flight-61567 flight-61569 flight-61571 flight-61572 flight-61573 flight-61576 flight-61578 flight-61580 flight-61581 flight-61583 flight-61584 flight-61588 flight-61589 flight-61590 flight-61591 flight-61592 flight-61593 flight-61594 flight-61597 flight-61598 flight-61599 flight-61600 flight-61603 flight-61604 flight-61605 flight-61606 flight-61607 flight-61608 flight-61609 flight-61610 flight-61611 flight-61612 flight-61614 flight-61615 flight-61616 flight-61617 flight-61618 flight-61619 flight-61620 flight-61621 flight-61622 flight-61623 flight-61624 flight-61625 flight-61626 flight-61627 flight-61628 flight-61629 flight-61630 flight-61631 flight-61632 flight-61633 flight-61634 flight-61635 flight-61636 flight-61637 flight-61638 flight-61639 flight-61640 flight-61641 flight-61642 flight-61643 flight-61644 flight-61645 flight-61646 flight-61647 flight-61648 flight-61649 flight-61650 flight-61651 flight-61652 flight-61653 flight-61654 flight-61655 flight-61656 flight-61657 flight-61658 flight-61660 flight-61661 flight-61662 flight-61663 flight-61666 flight-61671 flight-61674 flight-61675 flight-61677 flight-61682 flight-61684 flight-61685 flight-61686 flight-61687 flight-61688 flight-61689 flight-61690 flight-61691 flight-61692 flight-61693 flight-61694 flight-61695 flight-61696 flight-61697 flight-61701 flight-61702 flight-61704 flight-61705
Ian Jackson [Fri, 4 Sep 2015 10:46:37 +0000 (11:46 +0100)]
cs-bisection-step: Properly handle external job refs in template

cs-bisection-step has had, for a long time, code which is supposed to
handle the situation where the template flight contains build job
references to other flights.

However:

 - The regexp to spot these other-flight job reference runvars would
   never match because it said \s where \S was probably intended (and
   . would be better);

 - If it were to match, the flight and job arguments to the recursive
   preparejob invocation were the wrong way round.  preparejob takes
   the job name first.

Fix these two bugs.  Now it does seem to work properly.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agocs-bisection-step: Print our command line at the start
Ian Jackson [Fri, 4 Sep 2015 10:38:35 +0000 (11:38 +0100)]
cs-bisection-step: Print our command line at the start

The usual approach for debugging the cs-bisection-step is to repro the
problem (with --max-flight), which is most easily done by copying the
command line provided during a run which did the wrong thing.

Print the command line at startup, so that it appears in the report.
This will save us grobbling through the logs and cron mail.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoadhoc-revtuple-generator: Honour OSSTEST_AHRTG_SETX elsewhere
Ian Jackson [Fri, 4 Sep 2015 10:31:39 +0000 (11:31 +0100)]
adhoc-revtuple-generator: Honour OSSTEST_AHRTG_SETX elsewhere

Find all the places where adhoc-revtuple-generator runs subprograms
and have it add set -x (either by adding $OSSTEST_AHRTG_SETX to an
existing set -e, or using $setx which is either : or `set -x').

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoadhoc-revtuple-generator: Turn off a set -x
Ian Jackson [Fri, 4 Sep 2015 10:26:10 +0000 (11:26 +0100)]
adhoc-revtuple-generator: Turn off a set -x

This set -x uglified the output.  Provide a way (OSSTEST_AHRTG_SETX)
to turn it on again.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agocr-daily-branch: Make sg-report-flight ignore bisections
Ian Jackson [Thu, 3 Sep 2015 10:39:37 +0000 (11:39 +0100)]
cr-daily-branch: Make sg-report-flight ignore bisections

sg-report-flight when testing X' (with a baseline of X) can justify a
failure of T(X',Y,Z) with a bisection failure of T(X,Y'',Z).

If Y'' breaks T then this makes it look to sg-report-flight like T was
already broken in X; cr-daily-branch could then push X' even though it
is actually broken.

This happened rarely, because cr-daily-branch's sg-report-flight would
only look at flights on the right branch, so only a bisection of T on
that branch can cause this, but nevertheless this can produce bad
pushes.

So: have cr-daily-branch pass a --blessings option to cr-daily-branch,
so that it only looks at (usually) `real' rather than the default of
`real' and also `real-bisect'.

An alternative, more complicated, approach would be for
sg-report-flight to compare versions of Y, Z, et al, when looking for
justifications, but I'm not sure this is desirable because it would
effectively reset the heisenbug compensator each time any other tree
changed.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agocr-daily-branch: Break out blessings_arg variable
Ian Jackson [Thu, 3 Sep 2015 10:37:27 +0000 (11:37 +0100)]
cr-daily-branch: Break out blessings_arg variable

And rewrap check_tested.

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoOther-revision-jobs: Update cs-bisection-step flight-60965 flight-60967 flight-60968 flight-60969 flight-60970 flight-60971 flight-60973 flight-60974 flight-60975 flight-60976 flight-60977 flight-60979 flight-60980 flight-60981 flight-60982 flight-60983 flight-60984 flight-60985 flight-60986 flight-60987 flight-60988 flight-60989 flight-60990 flight-60991 flight-60992 flight-60993 flight-60995 flight-60996 flight-60997 flight-60998 flight-60999 flight-61000 flight-61001 flight-61002 flight-61003 flight-61004 flight-61005 flight-61006 flight-61008 flight-61009 flight-61010 flight-61011 flight-61056 flight-61057 flight-61058 flight-61059 flight-61060 flight-61062 flight-61063 flight-61079 flight-61080 flight-61081 flight-61082 flight-61083 flight-61086 flight-61088 flight-61090 flight-61093 flight-61094 flight-61096 flight-61098 flight-61101 flight-61103 flight-61104 flight-61118 flight-61119 flight-61122 flight-61125 flight-61126 flight-61127 flight-61128 flight-61129 flight-61132 flight-61134 flight-61136 flight-61137 flight-61138 flight-61139 flight-61140 flight-61243 flight-61244 flight-61245 flight-61246 flight-61247 flight-61248 flight-61249 flight-61253 flight-61254 flight-61256 flight-61257 flight-61258 flight-61259 flight-61260 flight-61262 flight-61263 flight-61264 flight-61266 flight-61268 flight-61272 flight-61273 flight-61274 flight-61277 flight-61278 flight-61279 flight-61280 flight-61281 flight-61282 flight-61283 flight-61287 flight-61288 flight-61289 flight-61290 flight-61291 flight-61292 flight-61294 flight-61295 flight-61296 flight-61297 flight-61298 flight-61299 flight-61300 flight-61301 flight-61302 flight-61303 flight-61304 flight-61305 flight-61306 flight-61307 flight-61308 flight-61309 flight-61311 flight-61312 flight-61313 flight-61314 flight-61315 flight-61316 flight-61317 flight-61318 flight-61319 flight-61321 flight-61322 flight-61323 flight-61324 flight-61325 flight-61326 flight-61327 flight-61329 flight-61340 flight-61342 flight-61344
Ian Jackson [Fri, 28 Aug 2015 11:28:26 +0000 (11:28 +0000)]
Other-revision-jobs: Update cs-bisection-step

This is rather more subtle.  We want to be able to bisect over all the
relevant inputs.

What we actually want to do if one of the *prev* tests fail is to
treat the "previous Xen branch" as a separate "tree" when bisecting,
so each revision tuple has both "current" and "old" Xen versions.
That way if the stable-4.x branch has broken forward migration, we
will report it properly.

Indeed, this needs to be extended not just to the Xen revision, but
all the inputs to the *prev* build.

We achieve this with new concept `other-revision job suffix',
introduced in the previous patch.  The bisector now works internally
always with tree names which are `<tree>[ <suffix>]' (delimited by a
space).  (Henceforth, we'll call `[ <suffix>]' the `othrev'.)

That is, all the revisions specified in prev build jobs are treated as
revisions of different trees to the revisions of apparently-same trees
in non-prev jobs.

The specific changes needed to cs-bisection-step are very small.  We
only need to adjust the code which reads and writes the database:

* When we do the cross join on urls and revisions which generates the
  rev tuple for a particular flight, also have the database compute
  the othrev for each tree.  Then, print the othrev in the debug
  output, and append it to the tree name.

  That resulting name is used everywhere:

  It affects `mixed revision' detection, so we consider build-*-prev
  jobs with differing revisions to problematic, or main-revision build
  jobs with differing revisions, but we treat each category of build
  job separately so the fact that the prev and main build jobs have
  different revisions is fine.

  The name is used for the key that is returned from flight_rmap.
  Thence it is used for the Name in @treeinfos, and therefore the
  results from flight_rtuple will be terms of this decorated tree
  namespace.

* When we are preparing a new job to go, we need to (effectively) undo
  this transformation.  The query which finds the `tree_' variables
  for a particular tree name is arranged to take an additional
  parameter, which is the othrev.  If the othrev does not match the
  job, the name is not returned in the results.

  Actually, because both the job and the othrev are query parameters,
  what happens is either that they match (ie, the othrev in the tree
  name from @treeinfos is indeed the othrev for the job we are
  constructing) in which case we process the variable as before; or
  they don't match, in which case the query contains contradictory
  conditions in its AND clauses, and returns no rows.

  So the ultimate effect is that we process each Name from @treeinfos
  only if it is for the this kind of job.  This slightly convoluted
  implementation arises from the fact that the job-to-othrev mapping
  is implemented as SQL, so we need to ask the database.

There is no need to change any of the output processing and reporting,
because "<tree> prev" is a perfectly good thing to print in all the
relevant contexts.

And there is no need to change how we drive adhoc-revtuple-generator,
because we do not pass it tree names at all, only urls.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
9 years agoOther-revision-jobs: Provide other_revision_job_suffix
Ian Jackson [Fri, 28 Aug 2015 14:17:09 +0000 (15:17 +0100)]
Other-revision-jobs: Provide other_revision_job_suffix

This is a string, a function of the job name, that identifies the
class of `other revisions'.  It is empty for main-revision jobs
and currently there is only `<delimiter>prev' for build-*-prev.

We are going to use this in the bisector.

Reimplement main_revision_job_cond in terms of this.  No functional
change, except that the SQL optimiser may have more work to do.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
9 years agoOther-revision-jobs: Update sg-report-flight and -job-history
Ian Jackson [Fri, 28 Aug 2015 11:44:22 +0000 (11:44 +0000)]
Other-revision-jobs: Update sg-report-flight and -job-history

We need adjust only the regression analysis.

The other occurrences of special treatment for revision fields are for
reporting output, and are in the context of a specific job.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoOther-revision-jobs: Update sg-check-tested
Ian Jackson [Fri, 28 Aug 2015 11:43:32 +0000 (11:43 +0000)]
Other-revision-jobs: Update sg-check-tested

These changes are obvious.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoOther-revision-jobs: Update report__find_test
Ian Jackson [Fri, 28 Aug 2015 11:27:28 +0000 (11:27 +0000)]
Other-revision-jobs: Update report__find_test

This is straightforward.  We simply don't look at the revision runvars
in non-main-revision jobs, when searching for suitable flights.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoOther-revision-jobs: Provide central test
Ian Jackson [Fri, 28 Aug 2015 11:16:40 +0000 (11:16 +0000)]
Other-revision-jobs: Provide central test

Since 75fbbc19 "Arrange to test migration from the previous Xen
version", some flights have contained additional jobs build-*-prev,
which build a different revision of xen.git.

However, this violates an existing assumption in several of the
automatic archaeologists, namely that a flight should contain only
runvars referring to a single revision of a tree.

We will need to adjust all the places where this assumption is baked
in.  The question arises, as to how the code in general is supposed to
know.  There are many possible schemes, but almost all of them would
involve some kind of schema change and/or would be violated by
now-recorded history.

For now we adopt the following rule: the job name tells you.  That is,
revision runvars in jobs with certain job names are disregarded.  We
call non-disregarded jobs `main-revision jobs', since they use the
`main' revisions of everything, and others `other-revision jobs'.

We provide a single function in Osstest.pm which takes as argument a
SQL expression string representing a job name, and returns a SQL
expression string evaluating to a boolean, specifying whether the job
is a main revision job.  This can be used in queries.

In subsequent patches I will go through all plausibly-relevant output
from
  git-grep 'revision_\|revision\\\\_'
and update each piece in turn.

There are obviously-irrelevant hits in TestSupport (build_clone and
store_vcs_revision) and in BuildSupport.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agots-xen-install: Install netcat-openbsd flight-60691 flight-60719 flight-60783 flight-60785 flight-60786 flight-60787 flight-60788 flight-60789 flight-60790 flight-60791 flight-60792 flight-60793 flight-60794 flight-60795 flight-60796 flight-60797 flight-60798 flight-60799 flight-60800 flight-60801 flight-60802 flight-60803 flight-60804 flight-60805 flight-60806 flight-60807 flight-60808 flight-60809 flight-60810 flight-60811 flight-60812 flight-60813 flight-60814 flight-60815 flight-60817 flight-60818 flight-60819 flight-60820 flight-60821 flight-60822 flight-60823 flight-60824 flight-60825 flight-60826 flight-60827 flight-60828 flight-60829 flight-60831 flight-60832 flight-60833 flight-60834 flight-60835 flight-60836 flight-60837 flight-60838 flight-60839 flight-60840 flight-60841 flight-60842 flight-60843 flight-60844 flight-60845 flight-60846 flight-60847 flight-60848 flight-60850 flight-60851 flight-60852 flight-60853 flight-60854 flight-60855 flight-60856 flight-60857 flight-60858 flight-60859 flight-60860 flight-60861 flight-60862 flight-60863 flight-60864 flight-60865 flight-60866 flight-60867 flight-60868 flight-60869 flight-60870 flight-60871 flight-60872 flight-60873 flight-60875 flight-60876 flight-60877 flight-60878 flight-60879 flight-60880 flight-60882 flight-60883 flight-60884 flight-60885 flight-60886 flight-60887 flight-60888 flight-60889 flight-60890 flight-60891 flight-60892 flight-60893 flight-60894 flight-60895 flight-60896 flight-60897 flight-60898 flight-60899 flight-60900 flight-60901 flight-60902 flight-60903 flight-60904 flight-60905 flight-60906 flight-60907 flight-60908 flight-60909 flight-60910 flight-60911 flight-60942 flight-60946 flight-60947 flight-60948 flight-60949 flight-60950 flight-60951 flight-60952 flight-60953 flight-60954 flight-60955 flight-60956 flight-60957 flight-60958 flight-60959 flight-60960 flight-60961 flight-60963 flight-60964
Ian Campbell [Wed, 12 Aug 2015 16:09:11 +0000 (17:09 +0100)]
ts-xen-install: Install netcat-openbsd

This is required by libvirt for live migration (netcat-traditional
doesn't cut it).

netcat-openbsd has higher update-alternatives priority, so it will be
used if installed.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Jim Fehlig <jfehlig@suse.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoToolstack/libvirt: use URI in migration command flight-60671
Wei Liu [Tue, 11 Aug 2015 20:25:09 +0000 (21:25 +0100)]
Toolstack/libvirt: use URI in migration command

Virsh migrate expects an URI, not a host. We don't actually care what
kind of transport it uses, the main objective is to test migration, so
use xen+ssh for the time being.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
[ ijc -- added --live and factored out $duri ]

9 years agoArrange to test migration from the previous Xen version
Ian Campbell [Tue, 11 Aug 2015 16:25:10 +0000 (17:25 +0100)]
Arrange to test migration from the previous Xen version

There are several steps to this:

- Identify $prevxenbranch, that is the branch which precedes
  $xenbranch.
- Create appropriate build jobs.
- Add support in ts-xen-install for overriding {xen,}buildjob on a
  per-ident basis
- Add a new receipt test-pair-oneway which only migrates from
  src_host to dst_host and not the reverse
- Create appropriate test jobs, overridding the default builds for
  src_host.

Currently we only do this for xen* branches and using xl, but in the
future we may wish to add to the libvirt branch too.

In make-flight if REVISION_PREVXEN is not supplied (e.g. called from
standalone-reset or by hand etc) then we create the build-$arch-prev jobs
with no revision_xen, same as build-$arch

It would be nice to try and reuse the builds from the last flight
which tested the $prevxenbranch baseline. I've not dont that here.

+build-amd64-prev                                      arch                        amd64
+build-amd64-prev                                      build_lvextend_max          50
+build-amd64-prev                                      enable_ovmf                 true
+build-amd64-prev                                      enable_xend                 false
+build-amd64-prev                                      enable_xsm                  false
+build-amd64-prev                                      host_hostflags              share-build-wheezy-amd64,arch-amd64,suite-wheezy,purpose-build
+build-amd64-prev                                      revision_ovmf
+build-amd64-prev                                      revision_qemu
+build-amd64-prev                                      revision_qemuu              c4a962ec0c61aa9b860a3635c8424472e6c2cc2c
+build-amd64-prev                                      revision_seabios
+build-amd64-prev                                      revision_xen                666b80f239c566283cb1b3435180d99a329d0156
+build-amd64-prev                                      tree_ovmf
+build-amd64-prev                                      tree_qemu                   git://xenbits.xen.org/staging/qemu-xen-unstable.git
+build-amd64-prev                                      tree_qemuu                  git://xenbits.xen.org/staging/qemu-upstream-unstable.git
+build-amd64-prev                                      tree_seabios
+build-amd64-prev                                      tree_xen                    git://xenbits.xen.org/xen.git

+build-i386-prev                                       arch                        i386
+build-i386-prev                                       build_lvextend_max          50
+build-i386-prev                                       enable_ovmf                 true
+build-i386-prev                                       enable_xend                 false
+build-i386-prev                                       enable_xsm                  false
+build-i386-prev                                       host_hostflags              share-build-wheezy-i386,arch-i386,suite-wheezy,purpose-build
+build-i386-prev                                       revision_ovmf
+build-i386-prev                                       revision_qemu
+build-i386-prev                                       revision_qemuu              c4a962ec0c61aa9b860a3635c8424472e6c2cc2c
+build-i386-prev                                       revision_seabios
+build-i386-prev                                       revision_xen                666b80f239c566283cb1b3435180d99a329d0156
+build-i386-prev                                       tree_ovmf
+build-i386-prev                                       tree_qemu                   git://xenbits.xen.org/staging/qemu-xen-unstable.git
+build-i386-prev                                       tree_qemuu                  git://xenbits.xen.org/staging/qemu-upstream-unstable.git
+build-i386-prev                                       tree_seabios
+build-i386-prev                                       tree_xen                    git://xenbits.xen.org/xen.git

+test-amd64-amd64-upgrade                              all_hostflags               arch-amd64,arch-xen-amd64,suite-wheezy,purpose-test,equiv-1
+test-amd64-amd64-upgrade                              arch                        amd64
+test-amd64-amd64-upgrade                              buildjob                    build-amd64
+test-amd64-amd64-upgrade                              debian_arch                 amd64
+test-amd64-amd64-upgrade                              debian_kernkind             pvops
+test-amd64-amd64-upgrade                              kernbuildjob                build-amd64-pvops
+test-amd64-amd64-upgrade                              kernkind                    pvops
+test-amd64-amd64-upgrade                              src_host_buildjob           build-amd64-prev
+test-amd64-amd64-upgrade                              src_host_xenbuildjob        build-amd64-prev
+test-amd64-amd64-upgrade                              toolstack                   xl
+test-amd64-amd64-upgrade                              xenbuildjob                 build-amd64

+test-amd64-i386-upgrade                               all_hostflags               arch-i386,arch-xen-amd64,suite-wheezy,purpose-test,equiv-1
+test-amd64-i386-upgrade                               arch                        i386
+test-amd64-i386-upgrade                               buildjob                    build-i386
+test-amd64-i386-upgrade                               debian_arch                 i386
+test-amd64-i386-upgrade                               debian_kernkind             pvops
+test-amd64-i386-upgrade                               kernbuildjob                build-i386-pvops
+test-amd64-i386-upgrade                               kernkind                    pvops
+test-amd64-i386-upgrade                               src_host_buildjob           build-i386-prev
+test-amd64-i386-upgrade                               src_host_xenbuildjob        build-amd64-prev
+test-amd64-i386-upgrade                               toolstack                   xl
+test-amd64-i386-upgrade                               xenbuildjob                 build-amd64

NB the regular build jobs are, as expected, unchanged (and different to the
ones above):

 build-amd64                                           revision_xen                9256f66c1606cd9339412bff7fbc7bd9e8beb28c
 build-i386                                            revision_xen                9256f66c1606cd9339412bff7fbc7bd9e8beb28c

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agolibvirt: Pass correct arguments to virsh migrate flight-60608 flight-60627 flight-60640 flight-60649 flight-60662 flight-60663 flight-60664 flight-60665 flight-60666 flight-60667 flight-60668 flight-60669 flight-60670 flight-60672 flight-60673 flight-60674 flight-60675 flight-60676 flight-60677 flight-60678 flight-60679 flight-60680 flight-60681 flight-60682 flight-60683 flight-60684 flight-60685 flight-60686 flight-60687 flight-60688 flight-60689 flight-60690 flight-60692 flight-60693 flight-60694 flight-60695 flight-60696 flight-60697 flight-60698 flight-60699 flight-60700 flight-60701 flight-60702 flight-60703 flight-60704 flight-60705 flight-60706 flight-60707 flight-60708 flight-60709 flight-60710 flight-60711 flight-60712 flight-60713 flight-60714 flight-60715 flight-60716 flight-60717 flight-60718 flight-60720 flight-60721 flight-60722 flight-60723 flight-60724 flight-60725 flight-60726 flight-60727 flight-60728 flight-60729 flight-60730 flight-60731 flight-60732 flight-60733 flight-60734 flight-60735 flight-60736 flight-60737 flight-60738 flight-60739 flight-60740 flight-60741 flight-60742 flight-60743 flight-60744 flight-60745 flight-60746 flight-60747 flight-60748 flight-60749 flight-60750 flight-60751 flight-60752 flight-60753 flight-60754 flight-60755 flight-60756 flight-60757 flight-60758 flight-60759 flight-60760 flight-60761 flight-60762 flight-60763 flight-60764 flight-60765 flight-60766 flight-60767 flight-60768 flight-60769 flight-60770 flight-60771 flight-60772 flight-60773 flight-60774 flight-60775 flight-60776 flight-60777 flight-60778 flight-60779 flight-60780 flight-60781 flight-60782
Ian Campbell [Wed, 5 Aug 2015 12:48:27 +0000 (13:48 +0100)]
libvirt: Pass correct arguments to virsh migrate

$dst is a host hash/object, resulting in:

2015-08-04 22:35:25 Z executing ssh ... root@172.16.144.34 virsh
migrate debian.guest.osstest HASH(0x28f4310)
bash: -c: line 0: syntax error near unexpected token `('
bash: -c: line 0: `virsh migrate debian.guest.osstest HASH(0x28f4310)'

Switch to using the same pattern as xl.pm, which is to call the
argument (containing the host hash) $dho and for $dst to be a local
variable containing $dho->{Name}.

Also s/$ho/$sho/ to match xl.pm, since I think that is clearer about
what role everything has.

Fix the prototype too while editing this function.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
9 years agots-debian-hvm-install: Use xargs -0 to avoid massive filelist in logs.
Ian Campbell [Mon, 27 Jul 2015 12:51:27 +0000 (13:51 +0100)]
ts-debian-hvm-install: Use xargs -0 to avoid massive filelist in logs.

The current arrangement is a bit odd, I'm not sure why it would be
that way and it results in a huge list of files in the middle of the
log which is rather boring to scroll through.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agots-debian-hvm-install: use di_installcmdline_core
Ian Campbell [Mon, 27 Jul 2015 12:51:26 +0000 (13:51 +0100)]
ts-debian-hvm-install: use di_installcmdline_core

This is primarily to get DEBIAN_FRONTEND=text, for easier to read
logging.

Previously the command line consisted of the console and
preseed/file=/preseed.cfg. After this it is more complex.

The preseed file uses file= which is an alias for preseed/file. Extra
options are given including DEBIAN_FRONTEND and DEBCONF_DEBUG and the
following are preseeded via the command line:

Previous implied were "auto=true preseed" which are now explicit.

In addition the following harmless (in this context) options are
added:
    hw-detect/load_firmware=
    hostname=
    netcfg/dhcp_timeout=
    netcfg/choose_interface=

The caller could also cause debconf/priority to be set, but doesn't
here.

ts-debian-di-install in the distro test series also uses
di_installcmdline_core for guest uses.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agots-debian-hvm-install: Remove VGA console runes.
Ian Campbell [Mon, 27 Jul 2015 12:51:25 +0000 (13:51 +0100)]
ts-debian-hvm-install: Remove VGA console runes.

I don't think there is any point in these since c60b6d20b0fd
"ts-debian-hvm-install: Arrange for installed guest to use a serial
console" and they represent an unexplained difference between the
islinux and grub cases.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoExecutive: Support host_check_allocated outside a job.
Ian Jackson [Wed, 5 Aug 2015 10:42:10 +0000 (11:42 +0100)]
Executive: Support host_check_allocated outside a job.

When called outside a job there are no hostflags, so get_hostflags
cannot be used. Instead assume a new pseudo-flag "OUTSIDE-JOB" when
there is no $job.

Otherwise uses of select_host such as "mg-hosts mkpxedir" fail.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
[ ijc -- wrong commit message ]

9 years agostandalone: Extend -h to support ident=host style specifications
Ian Campbell [Fri, 31 Jul 2015 08:26:44 +0000 (09:26 +0100)]
standalone: Extend -h to support ident=host style specifications

Allowing for multi-host tests.

Also make reset-host reset all hosts.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agomake-flight, mfi-common: create live migration test for libvirt flight-60196 flight-60540 flight-60603 flight-60605 flight-60609 flight-60610 flight-60611 flight-60612 flight-60613 flight-60614 flight-60615 flight-60616 flight-60617 flight-60618 flight-60619 flight-60620 flight-60621 flight-60622 flight-60623 flight-60624 flight-60625 flight-60626 flight-60628 flight-60629 flight-60630 flight-60631 flight-60632 flight-60633 flight-60634 flight-60636 flight-60637 flight-60638 flight-60639 flight-60641 flight-60642 flight-60643 flight-60644 flight-60645 flight-60646 flight-60647 flight-60648 flight-60650 flight-60651 flight-60652 flight-60653 flight-60654 flight-60655 flight-60656 flight-60657 flight-60658 flight-60659 flight-60660 flight-60661
Wei Liu [Sun, 8 Feb 2015 16:35:22 +0000 (16:35 +0000)]
make-flight, mfi-common: create live migration test for libvirt

Note that we start testing libvirt migration for 4.4 and above.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agomake-flight, mfi-common: rename onetoolstack to pairtoolstack
Wei Liu [Sun, 8 Feb 2015 16:29:17 +0000 (16:29 +0000)]
make-flight, mfi-common: rename onetoolstack to pairtoolstack

The name "onetoolstack" in confusing. Currently it's in fact referring
to the toolstack used to test pair migration, so rename it to
"pairtoolstack".

No functional changes introduced.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agomake-flight: debian hvm tests with libvirt
Wei Liu [Sun, 8 Feb 2015 16:26:57 +0000 (16:26 +0000)]
make-flight: debian hvm tests with libvirt

Since upstream QEMU is the default, that's what libvirt is using. We
generate test case to test libvirt with upstream QEMU.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoTestSupport: don't put kernel= in HVM config when using xl and libvirt
Wei Liu [Sun, 12 Jul 2015 11:29:02 +0000 (12:29 +0100)]
TestSupport: don't put kernel= in HVM config when using xl and libvirt

Setting kernel to hvmloader is ignored in xl but not in libvirt. Libvirt
config converter will translate that then pass it to QEMU. QEMU
complains there is no kernel called hvmloader and exits.

Remove this option for xl and libvirt.  Xl is not affected and libvirt
will be able to create HVM guest. Xend might still need it.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
[ ijc -- use toolstack($ho) not $ho->{Toolstack} ]

9 years agots-debian-hvm-install: stub out libvirt + ovmf / rombios
Wei Liu [Sun, 8 Feb 2015 16:05:16 +0000 (16:05 +0000)]
ts-debian-hvm-install: stub out libvirt + ovmf / rombios

Libvirt's configuration converter doesn't know how to deal with BIOS
selection. The end result is it always use the default one (seabios).
Stub out ovmf and rombios to avoid false positive results.

This restriction will be removed once libvirt's converter knows how to
deal with BIOS selection.

Note that we don't expect to see such configurations any time soon.
These configurations will be filtered in make-flight. The changes here
are more of an extra level of safety check.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agots-xen-build-prep: install ebtables
Wei Liu [Sun, 8 Feb 2015 15:59:15 +0000 (15:59 +0000)]
ts-xen-build-prep: install ebtables

Libvirt's test suite needs it.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agosg-run-job: remove save/restore dependency on local migration support
Wei Liu [Sun, 8 Feb 2015 15:44:31 +0000 (15:44 +0000)]
sg-run-job: remove save/restore dependency on local migration support

Since we've introduced different checks for save / restore and local
migration, it's possible to run save / restore tests without running
local migration tests.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agotoolstack: distinguish local and remote migration support
Wei Liu [Tue, 21 Jul 2015 14:38:17 +0000 (15:38 +0100)]
toolstack: distinguish local and remote migration support

Libvirt supports migrating a guest to remote host but not local host.
Distinguish the concept of local migration support and remote migration
support.

Toolstack's migrate_check now takes an extra argument to indicate which
mode we're interested in.

In sg-run-job we still check for local migration support because that's
the implicit target in test-guest-migr. Libvirt will still be blocked.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agotoolstack/libvirt: guest migrate, save and restore support
Wei Liu [Sun, 8 Feb 2015 15:57:01 +0000 (15:57 +0000)]
toolstack/libvirt: guest migrate, save and restore support

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoosstest migrate support check catch -> variables
Ian Jackson [Tue, 16 Dec 2014 12:12:44 +0000 (12:12 +0000)]
osstest migrate support check catch -> variables

The goal here is to skip the following test steps if the check fails.

Instead of using catch to turn an exception into value, we can just
use spawn-ts and reap-ts to do that. This pattern is useful when we add
in extra check for save / restore check later.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
[ wei: write commit message ]
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoIntroduce ts-saverestore-support-check
Wei Liu [Sun, 8 Feb 2015 15:21:52 +0000 (15:21 +0000)]
Introduce ts-saverestore-support-check

We need this script because we're going to separate the concept of save
/ restore and migration later.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agotoolstack: save / restore check
Wei Liu [Sun, 8 Feb 2015 15:20:17 +0000 (15:20 +0000)]
toolstack: save / restore check

Introduce check_for_command function and use it to check save / restore
functionality.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoExecutive: Change Cambridge specific default
Ian Campbell [Thu, 30 Jul 2015 14:18:25 +0000 (15:18 +0100)]
Executive: Change Cambridge specific default

ControlDaemonHost is unused in production-config* since they both set
{Owner,Queue}DaemonHost explicitly.

Some sort of default seems useful, so switch it to just
"control-daemons" in the DNS domain of the controller.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agocrontab-cambridge: Add a commented out adhoc bisect line
Ian Campbell [Thu, 30 Jul 2015 14:18:20 +0000 (15:18 +0100)]
crontab-cambridge: Add a commented out adhoc bisect line

This is handy to have, editing it in locally just means one cannot
simply use "crontab contab-cambridge" to load a new one without
remembering the content of the line for next time.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agocambridge: Adjust configuration for move to xs.citrite.net subnet
Ian Campbell [Thu, 23 Jul 2015 08:26:31 +0000 (09:26 +0100)]
cambridge: Adjust configuration for move to xs.citrite.net subnet

The Cambridge osstest instance is moving from the .cam.xci-test.com
infrastructure to the xs.citrite.net infrastructure. Adjust the
configuration accordingly.

- The database has been moved from osstestdb.db.cam.xci-test.com to a
  new dedicate pgres server at osstestdb.xs.citrite.net. The data has
  been transfered. (README.dev is updated to use the production
  instance's name instead)
- DHCP leases now come from dns1.uk.xensource.com:5556
- PXE has switched to /usr/groups/netboot. Also switch the templates
  to use %name%/pxelinux.cfg with a symlink from
  pxelinux.cfg/%ipaddrhex%, which will make it easier to find relevant
  files.
- osstser1 is not in the .xs.citrite.net domain
- Logs mount point is now /home/osstest not /home/xc_osstest.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
9 years agotarget_run_apt: Correctly escape line wrapping flight-60083 flight-60111 flight-60115 flight-60116 flight-60120 flight-60121 flight-60127 flight-60133 flight-60134 flight-60138 flight-60139 flight-60140 flight-60141 flight-60146 flight-60147 flight-60148 flight-60150 flight-60151 flight-60152 flight-60153 flight-60154 flight-60155 flight-60156 flight-60157 flight-60158 flight-60159 flight-60160 flight-60161 flight-60162 flight-60163 flight-60164 flight-60165 flight-60166 flight-60167 flight-60168 flight-60169 flight-60170 flight-60171 flight-60172 flight-60173 flight-60174 flight-60175 flight-60176 flight-60177 flight-60178 flight-60179 flight-60180 flight-60181 flight-60182 flight-60183 flight-60185 flight-60186 flight-60187 flight-60188 flight-60189 flight-60190 flight-60191 flight-60192 flight-60193 flight-60194 flight-60195 flight-60197 flight-60198 flight-60199 flight-60200 flight-60201 flight-60202 flight-60203 flight-60204 flight-60205 flight-60206 flight-60207 flight-60208 flight-60209 flight-60210 flight-60211 flight-60212 flight-60213 flight-60214 flight-60215 flight-60216 flight-60217 flight-60218 flight-60219 flight-60220 flight-60221 flight-60222 flight-60223 flight-60224 flight-60225 flight-60226 flight-60227 flight-60228 flight-60229 flight-60373 flight-60374 flight-60384 flight-60385 flight-60386 flight-60387 flight-60388 flight-60389 flight-60390 flight-60391 flight-60392 flight-60393 flight-60394 flight-60395 flight-60396 flight-60397 flight-60539 flight-60541 flight-60542 flight-60543 flight-60544 flight-60545 flight-60546 flight-60547 flight-60548 flight-60549 flight-60550 flight-60551 flight-60552 flight-60553 flight-60554 flight-60555 flight-60556 flight-60557 flight-60558 flight-60559 flight-60560 flight-60561 flight-60562 flight-60563 flight-60564 flight-60565 flight-60566 flight-60567 flight-60568 flight-60569 flight-60570 flight-60571 flight-60572 flight-60573 flight-60574 flight-60575 flight-60576 flight-60577 flight-60578 flight-60579 flight-60580 flight-60581 flight-60582 flight-60583 flight-60584 flight-60585 flight-60586 flight-60587 flight-60588 flight-60589 flight-60590 flight-60591 flight-60592 flight-60593 flight-60594 flight-60595 flight-60596 flight-60597 flight-60598 flight-60599 flight-60600 flight-60601 flight-60602
Ian Campbell [Thu, 23 Jul 2015 16:04:01 +0000 (17:04 +0100)]
target_run_apt: Correctly escape line wrapping

Otherwise the envvars are on the preceding line and therefore not set
in the apt-get process.

I broke this in 6fea4be08306 "apt: lock osstest's usages of apt-get
against each other", committed in January.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoNo longer export $OSSTEST_CONFIG
Ian Campbell [Mon, 13 Jul 2015 08:11:15 +0000 (09:11 +0100)]
No longer export $OSSTEST_CONFIG

All sites now have a suitable $HOME/.xen-osstest/settings in place
which does this.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoxl: Use _VerboseCommand for save/restore/migrate
Ian Campbell [Fri, 17 Jul 2015 13:17:34 +0000 (14:17 +0100)]
xl: Use _VerboseCommand for save/restore/migrate

Additional logging is as useful here as for create.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoMatch $branch against xen-* instead of xen*
Ian Campbell [Fri, 24 Jul 2015 16:20:47 +0000 (17:20 +0100)]
Match $branch against xen-* instead of xen*

In case someone invents a tree `xenblargle'.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoTestSupport: Avoid use of uninitialised $dtbs warning
Ian Campbell [Fri, 24 Jul 2015 12:55:26 +0000 (13:55 +0100)]
TestSupport: Avoid use of uninitialised $dtbs warning

If $xopts{dtbs} wasn't set then neither was $dtbs.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agosg-report-job-history: Colour host column according to whether it changes
Ian Jackson [Thu, 23 Jul 2015 18:15:06 +0000 (19:15 +0100)]
sg-report-job-history: Colour host column according to whether it changes

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agosg-report-job-history: Introduce report_altchangecolour
Ian Jackson [Thu, 23 Jul 2015 18:10:43 +0000 (19:10 +0100)]
sg-report-job-history: Introduce report_altchangecolour

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agocs-bisection-step: Fix memoisation of search_compute_length_at
Ian Jackson [Thu, 23 Jul 2015 16:31:52 +0000 (17:31 +0100)]
cs-bisection-step: Fix memoisation of search_compute_length_at

There was a half-implemented memoisation.  Memoisation is necessary
because otherwise the algorithm is exponential in the commit history
depth (with base equal to the commit parent fanout).

Sort this out:
 * Break out the actual computation into a new
   search_compute_length_at_intern
 * Deleting the individual memo assignments, which incidentally
   means we no longer miss an (unimportant) one.
 * Actually having the new memoising function search_compute_length_at
   check $n->{LengthAt} (this is the bugfix).

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoFlight restriction: Honour --exclude-flights=F1,F2,...
Ian Jackson [Thu, 23 Jul 2015 17:40:37 +0000 (18:40 +0100)]
Flight restriction: Honour --exclude-flights=F1,F2,...

To reproduce a recent bisection problem I needed to exclude not just
all flights after a certain number, but also one earlier flight.  So I
invented this option (and associated yaks).

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoFlight restriction: Change implementation of --max-flight
Ian Jackson [Thu, 23 Jul 2015 17:32:16 +0000 (18:32 +0100)]
Flight restriction: Change implementation of --max-flight

Abolish $maxflight.  All the users outside Osstest::Executive have
been eliminated, so this is fine.  Replace it with
$restrictflight_cond, which can accumulate multiple conditions.

There is a minor functional change: when multiple --max-flight options
are specified, _all_ of them take effect (effectively using the lowest
value).  That option is not used in production, and I don't expect
people elsewhere to be passing multiple different such options.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoFlight restriction: Make report_blessingscond use implicit $maxflight
Ian Jackson [Thu, 23 Jul 2015 16:54:53 +0000 (17:54 +0100)]
Flight restriction: Make report_blessingscond use implicit $maxflight

We have $maxflight in Osstest::Executive now, set appropriately.

Use that in report_blessingscond and all its callers including
report_find_push_age_info and hence in mg-all-branch-statuses and
sg-report-flight and sg-report-job-history.

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoFlight restriction: Update sg-report-flight and sg-report-job-history
Ian Jackson [Thu, 23 Jul 2015 16:57:07 +0000 (17:57 +0100)]
Flight restriction: Update sg-report-flight and sg-report-job-history

Use restrictflight_arg in both these functions.  They still use
$maxflight directly, passing it to report_blessingscond; that will
change in a moment.

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoFlight restriction: Update cs-bisection-step
Ian Jackson [Thu, 23 Jul 2015 17:01:22 +0000 (18:01 +0100)]
Flight restriction: Update cs-bisection-step

Use restrictflight_arg and restrictflight_cond.

This entails replacing $maxflight_cond (which is empty or contains a
series of texts each starting with AND) with $restrictflight_cond
(which is actually an expression, and might be just "TRUE").

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoFlight restriction: Introduce restrictflight_arg and restrictflight_cond
Ian Jackson [Thu, 23 Jul 2015 16:38:27 +0000 (17:38 +0100)]
Flight restriction: Introduce restrictflight_arg and restrictflight_cond

Provide the new functions which we will eventually use everywhere.

* Introduce restrictflight_arg which can be used in an argument loop.
* Introduce restrictflight_cond which generates a SQL condition.
* Have restrictflight_cond's value include surrounding ( ) for safety.
* Use the above in sg-report-host-history, renaming $maxflightcond.

No overall functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoFlight restriction: Move $maxflight to Osstest::Executive
Ian Jackson [Thu, 23 Jul 2015 17:20:33 +0000 (18:20 +0100)]
Flight restriction: Move $maxflight to Osstest::Executive

We are going to move the interpretation of --max-flight into
Osstest::Executive.  Start this by making $maxflight shared between
Executive and the main program.  Later, we will make it no longer
exported.

There are a number of places in Executive where a `my' variable
$maxflight shadows the newly moved global.  These will be got rid of
later, too.

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agomake-distros-flight: Use ftp.debian.org directly flight-59976 flight-60028 flight-60081 flight-60082 flight-60084 flight-60085 flight-60086 flight-60087 flight-60088 flight-60089 flight-60090 flight-60091 flight-60092 flight-60093 flight-60094 flight-60095 flight-60096 flight-60097 flight-60098 flight-60099 flight-60100 flight-60101 flight-60102 flight-60103 flight-60104 flight-60105 flight-60106 flight-60107 flight-60108 flight-60113 flight-60114
Ian Campbell [Wed, 8 Jul 2015 12:31:02 +0000 (13:31 +0100)]
make-distros-flight: Use ftp.debian.org directly

The local proxy seems to serve stale packages for Jessie etc, I blame
the intercepting cache on the way out of our network, similar to
b5f15136900d "mg-debian-installer-update: workaround caching proxies",
except it is between the apt-cache and the world not the osstest vm
and the world.

Since the netboot kernel+initrd are reasonably small, these flights
are infrequent and they are intended to test the current upstream
version I think this is tollerable.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoAdd testing of file backed disk formats
Ian Campbell [Wed, 8 Jul 2015 12:31:01 +0000 (13:31 +0100)]
Add testing of file backed disk formats

xen-create-image makes this tricky to do since it is rather LVM
centric. Now that we have the ability to install from d-i it's
possible to arrange fairly easily that they use something other than
a phy backend over a bare LVM device.

Here we add support to the test script and infra and create a bunch of
new jobs testing the cross product of {xl,libvirt} x {raw,qcow2,vhd}.

A disk format of "raw" means a raw backing file, where as "none" (the
default) means to continue to use the base LVM device.

The test scripts are modified such that when constructing a domain
with a diskfmt runvar specifeies a file backed disk format (i.e. not
"none"):

 - the LVM device is slightly enlarged to account for file format
   headers (1M should be plenty).
 - the LVM device will have an ext3 filesystem created on it instead
   of being used as a phy device for the guest. Reusing the LVM volume
   in this way means we don't need to do more storage management in
   dom0 (i.e. arranging for / to be large enough, or managing a
   special "images" LV)
 - the relevant type of container is created within the filesystem
   using the appropriate tool.
 - New properties Disk{fmt,spec} are added to all $gho, containing
   the format used for the root disk and the xl diskspec to load it.
     - lvm backed guests use a xend/xm compatible spec, everything
       else uses the improved xl syntax which libvirt also supports.
       We won't test non-LVM on xend.
 - New properties Disk{mnt,img} are added to $gho which are not using
   LVM. These contain the mount point to use (configurable via
   OSSTEST_CONFIG and runvars) and the full path (including mount
   point) to the image itself.
 - When starting or stopping a guest we arrange for the filesystem to
   be (u)mounted.
     - The prepearation when starting a guest copes gracefully with
       the disk already being prepared.
     - Hooks are called from guest_create() and guest_destroy() to
       manipulate the disk as needed.

Using standalong-generate-dump-flight-runvars a representative set of
runvars is:
+test-amd64-amd64-xl-qcow2                     all_hostflags               arch-amd64,arch-xen-amd64,suite-wheezy,purpose-test
+test-amd64-amd64-xl-qcow2                     arch                        amd64
+test-amd64-amd64-xl-qcow2                     buildjob                    build-amd64
+test-amd64-amd64-xl-qcow2                     debian_arch                 amd64
+test-amd64-amd64-xl-qcow2                     debian_bootloader           pygrub
+test-amd64-amd64-xl-qcow2                     debian_diskfmt              qcow2
+test-amd64-amd64-xl-qcow2                     debian_kernkind             pvops
+test-amd64-amd64-xl-qcow2                     debian_method               netboot
+test-amd64-amd64-xl-qcow2                     debian_suite                wheezy
+test-amd64-amd64-xl-qcow2                     kernbuildjob                build-amd64-pvops
+test-amd64-amd64-xl-qcow2                     kernkind                    pvops
+test-amd64-amd64-xl-qcow2                     toolstack                   xl
+test-amd64-amd64-xl-qcow2                     xenbuildjob                 build-amd64

Compared to test-amd64-amd64-pygrub (which is the most similar job) and
normalising the test name the difference is:
 test-amd64-amd64-SUFFIX                       all_hostflags               arch-amd64,arch-xen-amd64,suite-wheezy,purpose-test
 test-amd64-amd64-SUFFIX                       arch                        amd64
 test-amd64-amd64-SUFFIX                       buildjob                    build-amd64
 test-amd64-amd64-SUFFIX                       debian_arch                 amd64
 test-amd64-amd64-SUFFIX                       debian_bootloader           pygrub
+test-amd64-amd64-SUFFIX                       debian_diskfmt              qcow2
+test-amd64-amd64-SUFFIX                       debian_kernkind             pvops
 test-amd64-amd64-SUFFIX                       debian_method               netboot
 test-amd64-amd64-SUFFIX                       debian_suite                wheezy
 test-amd64-amd64-SUFFIX                       kernbuildjob                build-amd64-pvops
 test-amd64-amd64-SUFFIX                       kernkind                    pvops
 test-amd64-amd64-SUFFIX                       toolstack                   xl
 test-amd64-amd64-SUFFIX                       xenbuildjob                 build-amd64

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agomake-flight: refactor PV debian tests
Ian Campbell [Wed, 8 Jul 2015 12:31:00 +0000 (13:31 +0100)]
make-flight: refactor PV debian tests

No functional change, standalone-generate-dump-flight-runvars confirms
no change to the runvars.

Includes a hook which is not used yet, $recipe_sfx.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agots-debian-di-install: Refactor root_disk specification
Ian Campbell [Wed, 8 Jul 2015 12:30:59 +0000 (13:30 +0100)]
ts-debian-di-install: Refactor root_disk specification

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoDebian: Handle lack of bootloader support in d-i on ARM.
Ian Campbell [Wed, 8 Jul 2015 12:30:58 +0000 (13:30 +0100)]
Debian: Handle lack of bootloader support in d-i on ARM.

Debian doesn't currently know what bootloader to install in a Xen
guest on ARM. We install pv-grub-menu above which actually does what
we need, but the installer doesn't treat that as a "bootloader".

Most ARM platforms end up installing a u-boot boot.scr, based on a
platform whitelist. This doesn't seem appropriate for us. Grub is not
available for arm32. For arm64 we will eventually end up with in-guest
UEFI and therefore grub-efi and things will work normally. I'm not
sure what the answer is going to be for arm32.

This patch enables the workaround for Wheezy, Jessie and Sid,
post-Jessie should be enabled as we add them. (Pre-wheezy does not
support running as a Xen guest on ARM so we don't test them at all).

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agodistros: Run one suite per day on a weekly basis
Ian Campbell [Wed, 8 Jul 2015 12:30:57 +0000 (13:30 +0100)]
distros: Run one suite per day on a weekly basis

Once a week should be sufficient for these tests. Perhaps in the
future we will want to increase the frequency for the suites under
active development (testing, unstable)

For now run this on the Citrix Cambridge instance until the XenProject
instance has sufficient capacity.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agocrontab-cambridge: Use hard tabs for alignment.
Ian Campbell [Wed, 8 Jul 2015 12:30:56 +0000 (13:30 +0100)]
crontab-cambridge: Use hard tabs for alignment.

Also quote the value of BRANCHES=.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agodistros: add branch infrastructure
Ian Campbell [Wed, 8 Jul 2015 12:30:55 +0000 (13:30 +0100)]
distros: add branch infrastructure

Since the distro nightlies are not version controlled we cannot use
the usual mechanisms for detecting regressions. Special case things
appropriately. We use an OLD_REVISION of "flight-NNN" to signify that
the old revision is another flight and not a tree revision.

A grep over $NEW_REVISION needed adjusting since NEW_REVISION is empty
in this mode, leading to "grep <filename>" which hangs waiting for
stdin.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoTest pygrub and pvgrub on the regular flights
Ian Campbell [Wed, 8 Jul 2015 12:30:54 +0000 (13:30 +0100)]
Test pygrub and pvgrub on the regular flights

Since we now have the ability to test these drop one of each of
pygrub, pvgrub-32 and pvgrub-64 into the standard flights. Omitting
the {Guest}_diver runvar causes ts-debian-di-install to use the d-i
images in the location configured via TftpDiVersion, so they are
Version Controlled along with the d-i version used for the host.

This adds three new jobs:

+test-amd64-amd64-amd64-pvgrub                 all_hostflags               arch-amd64,arch-xen-amd64,suite-wheezy,purpose-test
+test-amd64-amd64-amd64-pvgrub                 arch                        amd64
+test-amd64-amd64-amd64-pvgrub                 buildjob                    build-amd64
+test-amd64-amd64-amd64-pvgrub                 debian_arch                 amd64
+test-amd64-amd64-amd64-pvgrub                 debian_bootloader           pvgrub
+test-amd64-amd64-amd64-pvgrub                 debian_method               netboot
+test-amd64-amd64-amd64-pvgrub                 debian_suite                wheezy
+test-amd64-amd64-amd64-pvgrub                 kernbuildjob                build-amd64-pvops
+test-amd64-amd64-amd64-pvgrub                 kernkind                    pvops
+test-amd64-amd64-amd64-pvgrub                 toolstack                   xl
+test-amd64-amd64-amd64-pvgrub                 xenbuildjob                 build-amd64

+test-amd64-amd64-i386-pvgrub                  all_hostflags               arch-amd64,arch-xen-amd64,suite-wheezy,purpose-test
+test-amd64-amd64-i386-pvgrub                  arch                        amd64
+test-amd64-amd64-i386-pvgrub                  buildjob                    build-amd64
+test-amd64-amd64-i386-pvgrub                  debian_arch                 i386
+test-amd64-amd64-i386-pvgrub                  debian_bootloader           pvgrub
+test-amd64-amd64-i386-pvgrub                  debian_method               netboot
+test-amd64-amd64-i386-pvgrub                  debian_suite                wheezy
+test-amd64-amd64-i386-pvgrub                  kernbuildjob                build-amd64-pvops
+test-amd64-amd64-i386-pvgrub                  kernkind                    pvops
+test-amd64-amd64-i386-pvgrub                  toolstack                   xl
+test-amd64-amd64-i386-pvgrub                  xenbuildjob                 build-amd64

+test-amd64-amd64-pygrub                       all_hostflags               arch-amd64,arch-xen-amd64,suite-wheezy,purpose-test
+test-amd64-amd64-pygrub                       arch                        amd64
+test-amd64-amd64-pygrub                       buildjob                    build-amd64
+test-amd64-amd64-pygrub                       debian_arch                 amd64
+test-amd64-amd64-pygrub                       debian_bootloader           pygrub
+test-amd64-amd64-pygrub                       debian_method               netboot
+test-amd64-amd64-pygrub                       debian_suite                wheezy
+test-amd64-amd64-pygrub                       kernbuildjob                build-amd64-pvops
+test-amd64-amd64-pygrub                       kernkind                    pvops
+test-amd64-amd64-pygrub                       toolstack                   xl
+test-amd64-amd64-pygrub                       xenbuildjob                 build-amd64

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agodistros: Support pvgrub for Wheezy too.
Ian Campbell [Wed, 8 Jul 2015 12:30:53 +0000 (13:30 +0100)]
distros: Support pvgrub for Wheezy too.

This requires us to install pv-grub-menu from backports, which we do
using a late_command.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
[ ijc -- dropped unnecessary quoting of comment in heredoc ]

9 years agodistros: support booting Debian PV (d-i installed) guests with pvgrub.
Ian Campbell [Wed, 8 Jul 2015 12:30:52 +0000 (13:30 +0100)]
distros: support booting Debian PV (d-i installed) guests with pvgrub.

This requires the use of the pv-grub-menu package which is in Jessie
onwards.  (it is in wheezy-backports which is the subject of a
subsequent patch).

The bootloader to use is specified via a runvar {Guest}_bootloader.

Adjust make-distros-flight to use pvgrub for some subset of i386 and
amd64 guests to get coverage.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agodistros: add support for installing Debian PV guests via d-i, flight and jobs
Ian Campbell [Wed, 8 Jul 2015 12:30:51 +0000 (13:30 +0100)]
distros: add support for installing Debian PV guests via d-i, flight and jobs

This patch introduces ts-debian-di-install which can install Debian
from a netboot (PXE) debian installer image. By default it installs
from the d-i image used by osstest (using the special Xen PV guest
enabled flavour where necessary) but it can also fetch the kernel and
ramdisk from URLs specified in runvars. The resulting guests boot the
distro kernel using pygrub (pvgrub will follow).

The distros flights differ substantially from the existing flights.
Introduce make-distros-flight using the functionality previously
refactored into mfi-common. The new flight tests all versions of
Debian from Squeeze onward as an amd64, i386 and armhf guests (armhf
from Jessie onwards only) using the usual smoke tests.

Test names are suffixed -pygrub pending the addition of pvgrub
variants in a future commit.

Add the new cases to sg-run-job

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoTestSupport: Add helper to fetch a URL on a host
Ian Campbell [Wed, 8 Jul 2015 12:30:50 +0000 (13:30 +0100)]
TestSupport: Add helper to fetch a URL on a host

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agomfi-common: Allow make-*flight to filter the set of build jobs to include
Ian Campbell [Wed, 8 Jul 2015 12:30:49 +0000 (13:30 +0100)]
mfi-common: Allow make-*flight to filter the set of build jobs to include

By using the same job_create_build(_filter_callback) scheme used for
the test jobs.

Will be used in make-distros-flight.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agocri-bisect: Provide --html-dir= option introducer flight-59629 flight-59643 flight-59667 flight-59668 flight-59669 flight-59670 flight-59671 flight-59672 flight-59673 flight-59674 flight-59675 flight-59676 flight-59677 flight-59678 flight-59679 flight-59680 flight-59681 flight-59682 flight-59683 flight-59685 flight-59686 flight-59687 flight-59688 flight-59689 flight-59691 flight-59692 flight-59693 flight-59694 flight-59695 flight-59696 flight-59697 flight-59698 flight-59699 flight-59700 flight-59701 flight-59703 flight-59704 flight-59705 flight-59706 flight-59707 flight-59708 flight-59709 flight-59710 flight-59711 flight-59712 flight-59713 flight-59714 flight-59715 flight-59716 flight-59717 flight-59718 flight-59719 flight-59720 flight-59721 flight-59722 flight-59723 flight-59724 flight-59725 flight-59726 flight-59727 flight-59728 flight-59729 flight-59730 flight-59731 flight-59732 flight-59733 flight-59734 flight-59735 flight-59736 flight-59740 flight-59743 flight-59744 flight-59746 flight-59750 flight-59757 flight-59758 flight-59759 flight-59760 flight-59761 flight-59764 flight-59766 flight-59767 flight-59768 flight-59769 flight-59770 flight-59771 flight-59772 flight-59773 flight-59774 flight-59777 flight-59779 flight-59780 flight-59781 flight-59782 flight-59783 flight-59784 flight-59785 flight-59786 flight-59787 flight-59788 flight-59789 flight-59790 flight-59791 flight-59792 flight-59793 flight-59794 flight-59795 flight-59796 flight-59797 flight-59798 flight-59799 flight-59800 flight-59801 flight-59802 flight-59803 flight-59804 flight-59805 flight-59806 flight-59807 flight-59808 flight-59809 flight-59810 flight-59811 flight-59812 flight-59813 flight-59815 flight-59816 flight-59817 flight-59818 flight-59819 flight-59820 flight-59821 flight-59822 flight-59823 flight-59824 flight-59825 flight-59826 flight-59827 flight-59828 flight-59829 flight-59830 flight-59831 flight-59832 flight-59833 flight-59834 flight-59835 flight-59836 flight-59837 flight-59838 flight-59839 flight-59840 flight-59841 flight-59842 flight-59843 flight-59845 flight-59846 flight-59847 flight-59848 flight-59849 flight-59850 flight-59851 flight-59852 flight-59853 flight-59854 flight-59855 flight-59856 flight-59857 flight-59858 flight-59859 flight-59860 flight-59861 flight-59863 flight-59864 flight-59865 flight-59866 flight-59867 flight-59868 flight-59869 flight-59870 flight-59871 flight-59872 flight-59873 flight-59874 flight-59875 flight-59876 flight-59877 flight-59878 flight-59879 flight-59880 flight-59881 flight-59882 flight-59883 flight-59884 flight-59885 flight-59886 flight-59887 flight-59888 flight-59889 flight-59890 flight-59891 flight-59892 flight-59893 flight-59894 flight-59895 flight-59896 flight-59897 flight-59898 flight-59899 flight-59900 flight-59901 flight-59902 flight-59903 flight-59904 flight-59905 flight-59906 flight-59907 flight-59908 flight-59909 flight-59910 flight-59911 flight-59912 flight-59913 flight-59914 flight-59915 flight-59916 flight-59917 flight-59918 flight-59919 flight-59920 flight-59921 flight-59922 flight-59923 flight-59924 flight-59925 flight-59926 flight-59927 flight-59928 flight-59929 flight-59930 flight-59931 flight-59932 flight-59933 flight-59934 flight-59935 flight-59936 flight-59937 flight-59939 flight-59940 flight-59941 flight-59942 flight-59943 flight-59944 flight-59945 flight-59946 flight-59947 flight-59948 flight-59949 flight-59951 flight-59953 flight-59954 flight-59955 flight-59957 flight-59958 flight-59959 flight-59960 flight-59961 flight-59962 flight-59963 flight-59964 flight-59965 flight-59967 flight-59968 flight-59969 flight-59970 flight-59971 flight-59972 flight-59973 flight-59974 flight-59975 flight-59977 flight-59978 flight-59979 flight-59980 flight-59981 flight-59982 flight-59983 flight-59984 flight-59985 flight-59986 flight-59987 flight-59988 flight-59989 flight-59990 flight-59991 flight-59992 flight-59993 flight-59994 flight-59995 flight-59996 flight-59997 flight-59998 flight-59999 flight-60000 flight-60001 flight-60003 flight-60004 flight-60005 flight-60006 flight-60010 flight-60011 flight-60012 flight-60013 flight-60014 flight-60015 flight-60016 flight-60018 flight-60019 flight-60020 flight-60021 flight-60022 flight-60023 flight-60024 flight-60025 flight-60026 flight-60027 flight-60029 flight-60030 flight-60031 flight-60032 flight-60034 flight-60035 flight-60036 flight-60037 flight-60038 flight-60039 flight-60040 flight-60041 flight-60042 flight-60043 flight-60044 flight-60045 flight-60046 flight-60047 flight-60048 flight-60049 flight-60050 flight-60051 flight-60052 flight-60053 flight-60054 flight-60055 flight-60056 flight-60057 flight-60058 flight-60059 flight-60060 flight-60061 flight-60062 flight-60063 flight-60064 flight-60065 flight-60066 flight-60067 flight-60068 flight-60069 flight-60070 flight-60071 flight-60072 flight-60073 flight-60074 flight-60075 flight-60076 flight-60077 flight-60078 flight-60079 flight-60080
Ian Jackson [Thu, 16 Jul 2015 14:53:43 +0000 (15:53 +0100)]
cri-bisect: Provide --html-dir= option introducer

Since 0caf39e6 "Reporting: Make HTML reports for bisection flights too"
we have been running
  ./sg-report-flight /home/logs/logs/59620/ 59620
which is no good.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agomg-list-all-branches: Sort branches according to any embedded version
Ian Campbell [Mon, 13 Jul 2015 08:13:06 +0000 (09:13 +0100)]
mg-list-all-branches: Sort branches according to any embedded version

Many of our branches include a version number, this change results in
e.g. linux-3.0 < linux-3.4 < linux-3.10 rather than linux-3.0 <
linux-3.10 < linux-3.4, which is more natural for uses such as
./mg-all-branch-statuses.

Requires Sort::Versions (Debian package libsort-versions-perl).

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoINSTALL.production: Start writing some stuff down
Ian Campbell [Mon, 13 Jul 2015 08:12:29 +0000 (09:12 +0100)]
INSTALL.production: Start writing some stuff down

I wrote this ages ago while migrating the Cambridge instance to a new
VM and then forgot about it. It's incomplete and I'm not sure where I
was planning to go next, but better than nothing maybe?

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agots-windows-install: Bump RAM from 512M to 1536M
Ian Jackson [Thu, 16 Jul 2015 10:29:00 +0000 (11:29 +0100)]
ts-windows-install: Bump RAM from 512M to 1536M

Sadly we lack a proper infrastructure for handing guest memory size
and fitting it into the host.  We don't currently even have in our
database the amount of RAM the host has.

The recommended minimum for Windows is 2Gby.  But we have (in the
Cambridge instance) some hosts which only have 4Gby.  We allow 512 for
dom0.  We need to leave some spare for Xen and other overheads.  So
set this to 1536 (1.5Gby) which should fit even during localhost
migration.

Later we may want to do something more sophisticated, like adjusting
this to 2048 if the host has enough, or only running the test on
bigger hosts, or something.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
CC: Wei Liu <wei.liu2@citrix.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
---
v2: 1536 not 1700.
    Mention migration in the commit message.

9 years agoMerge branch 'from-cambridge/2015-07-13' into master flight-59514 flight-59541 flight-59559 flight-59560 flight-59564 flight-59567 flight-59568 flight-59571 flight-59576 flight-59579 flight-59587 flight-59590 flight-59592 flight-59596 flight-59598 flight-59602 flight-59604 flight-59606 flight-59607 flight-59611 flight-59613 flight-59616 flight-59617 flight-59623 flight-59626 flight-59631 flight-59634 flight-59639 flight-59640 flight-59649 flight-59650 flight-59654 flight-59659 flight-59661 flight-59664 flight-59665
Ian Jackson [Mon, 13 Jul 2015 17:02:05 +0000 (18:02 +0100)]
Merge branch 'from-cambridge/2015-07-13' into master

9 years agoAutomerge of git://xenbits.xen.org/osstest.git master into production
xen.org [Sat, 11 Jul 2015 07:35:43 +0000 (08:35 +0100)]
Automerge of git://xenbits.xen.org/osstest.git master into production

9 years agomake-flight: Only test ovmf guests on ovmf flight flight-59443 flight-59469 flight-59483 flight-59485 flight-59487 flight-59488 flight-59489 flight-59498 flight-59500 flight-59502 flight-59503 flight-59504 flight-59505 flight-59508 flight-59509 flight-59510 flight-59511 flight-59520 flight-59526 flight-59527 flight-59530 flight-59531 flight-59532 flight-59533 flight-59536 flight-59538 flight-59543 flight-59544 flight-59545 flight-59550 flight-59556
Ian Campbell [Tue, 7 Jul 2015 16:26:45 +0000 (17:26 +0100)]
make-flight: Only test ovmf guests on ovmf flight

Specifically drop all of the following test jobs from the ovmf flight:

-test-amd64-amd64-xl-qemuu-debianhvm-amd64
-test-amd64-amd64-xl-qemuu-debianhvm-amd64-xsm
-test-amd64-amd64-xl-qemuu-win7-amd64
-test-amd64-amd64-xl-qemuu-winxpsp3
-test-amd64-i386-qemuu-rhel6hvm-amd
-test-amd64-i386-qemuu-rhel6hvm-intel
-test-amd64-i386-xl-qemuu-debianhvm-amd64
-test-amd64-i386-xl-qemuu-debianhvm-amd64-xsm
-test-amd64-i386-xl-qemuu-win7-amd64
-test-amd64-i386-xl-qemuu-winxpsp3
-test-amd64-i386-xl-qemuu-winxpsp3-vcpus1

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agomg-all-branch-statuses: Show how up to date each branch is
Ian Campbell [Thu, 9 Jul 2015 14:30:36 +0000 (15:30 +0100)]
mg-all-branch-statuses: Show how up to date each branch is

Using report_find_push_age_info allows us to provide counts of
attempts since the last baseline on current tip as well as the first
attempt of each of those.

Since everything serialises on the repo lock I didn't bother trying to
parallelise anything.

It's a little terse to keep it in 80 chars.

cron infrastructure is added to run this in a new
$HOME/for-maintjobs.git on a daily basis and push the output to the
location given in the Publish config variable, if it is set (it is set
in production but not for cambridge).

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agocr-publish-flight-logs: allow publishing only the Results
Ian Campbell [Thu, 9 Jul 2015 14:30:35 +0000 (15:30 +0100)]
cr-publish-flight-logs: allow publishing only the Results

Removing the requirement that a flight be provided allows this to be
used to publish the results directory even in contexts which have no
flight.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoAllow rumpkernel xenstorels.test failures for all but rumpuserxen branch
Ian Campbell [Thu, 9 Jul 2015 08:45:29 +0000 (09:45 +0100)]
Allow rumpkernel xenstorels.test failures for all but rumpuserxen branch

This test has a long standing heisenbug which even doing 150
iterations is not reliable at detecting. It is unlikely to be fixed
until the long-standing rumpkernel build rework is completed.

So lets mark it as an allowable failure for now, except in the
rumpuserxen branch tests themselves.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoAutomerge of git://xenbits.xen.org/osstest.git master into production
xen.org [Thu, 9 Jul 2015 17:34:59 +0000 (18:34 +0100)]
Automerge of git://xenbits.xen.org/osstest.git master into production

9 years agoJobDB/Executive: Improve an internal `die' error flight-59285 flight-59355 flight-59426 flight-59427 flight-59428 flight-59435 flight-59440 flight-59446 flight-59452 flight-59456 flight-59462 flight-59463 flight-59464 flight-59465 flight-59472 flight-59474 flight-59477 flight-59480
Ian Jackson [Mon, 6 Jul 2015 10:20:28 +0000 (11:20 +0100)]
JobDB/Executive: Improve an internal `die' error

When this assertion fails, dump the troublesome harness revision and
requested host flags, too.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agomg-branch-setup: Get the direction of the tree-bisect link right
Ian Jackson [Mon, 6 Jul 2015 10:08:10 +0000 (11:08 +0100)]
mg-branch-setup: Get the direction of the tree-bisect link right

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoReporting: Make HTML reports for bisection flights too
Ian Jackson [Fri, 3 Jul 2015 18:30:45 +0000 (19:30 +0100)]
Reporting: Make HTML reports for bisection flights too

Provide an appropriate --html-dir option to sg-report-flight.
(Bisection flights still do not run sg-report-host-history and
sg-report-job-history, which are fairly expensive.)

Make references to jobs from sg-report-job-history and
sg-report-host-history go to the /info.html page, not the webserver
directory listing.  (sg-report-flight's references already do.)

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoEmail reports: Sort out recipients and Reply-to
Ian Jackson [Wed, 1 Jul 2015 14:49:35 +0000 (15:49 +0100)]
Email reports: Sort out recipients and Reply-to

No longer send reports, or copies, to named individuals.  Instead,
send all output to 1. appropriate development mailing lists 2. the new
osstest-admin@xenproject administrator alias, and 3. Bcc the new
osstest-output list.

Bisection progress emails go only to osstest-output.  In this case we
provide a Reply-To.

After this patch goes live, people interested in bisection progress
emails will find them in osstest-output.  (There are a lot of these.)
Such people can also subscribe to osstest-output and get copies of
only the main test reports and then use recipient-side filtering to
see the ones they find interesting.

(Configurations for `adhoc' and `play' runs remain unchanged and still
have a tendency to refer to my personal address @citrix.)

Deployment notes:

Keir and Stefano will no longer receive automatic CCs of certain
reports, and should subscribe to the osstest-output list, with
appropriate filtering, if they care.

The new osstest-output list has (I think) been configured to accept
the BCCs.

My personal chiark mail-to-news gateway has already been subscribed to
osstest-output.

One substantial change is that the osstest admin now gets copies of
each final bisection failure.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
CC: keir@xen.org
CC: stefano.stabellini@eu.citrix.com
CC: Lars Kurth <lars.kurth@citrix.com>
9 years agoap-fetch-version: Arrange for osstest merges from upstream to be stable
Ian Campbell [Thu, 2 Jul 2015 12:44:32 +0000 (13:44 +0100)]
ap-fetch-version: Arrange for osstest merges from upstream to be stable

If a downstream osstest instance has nothing to test it its local
pretest then it will attempt to merge from the upstream instance. If
this fails then it will try again and again generating a new merge
commit each time, even if upstream has not moved.

It is desirable that these merges instead be stable i.e. the same if
the inputs have not changed. This is good for potential bisection
attempts, history reporting/mining as well as just being sensible.

Here we arrange for this by recording the last merge "epoch" (being
the first merge of the current input branches) in a new branch
"merge-epoch" in the local testing.git and comparing our fresh merge
against it.

If the tree and parents are the same then the merge is effectively
identical (it may/will differ in the date) and we reuse the epoch
merge.

If they new merge does not match then something has changed (i.e.
upstream has moved on) and so we take the new merge and establish a
new epoch.

Add a couple of ">&2" to some fetches to prevent anything other than
the desired SHA1 leaking onto stdout.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
9 years agots-debian-hvm-install: Arrange for installed guest to use a serial console flight-59150 flight-59201 flight-59282 flight-59283 flight-59284 flight-59286 flight-59287 flight-59288 flight-59289 flight-59290 flight-59291 flight-59292 flight-59293 flight-59294 flight-59295 flight-59296 flight-59297 flight-59298 flight-59299 flight-59300 flight-59301 flight-59302 flight-59303 flight-59304 flight-59305 flight-59306 flight-59307 flight-59308 flight-59309 flight-59310 flight-59311 flight-59312 flight-59313 flight-59314 flight-59315 flight-59316 flight-59317 flight-59318 flight-59319 flight-59320 flight-59321 flight-59322 flight-59323 flight-59324 flight-59325 flight-59326 flight-59327 flight-59328 flight-59329 flight-59330 flight-59331 flight-59332 flight-59333 flight-59334 flight-59335 flight-59336 flight-59337 flight-59338 flight-59339 flight-59340 flight-59341 flight-59342 flight-59343 flight-59344 flight-59345 flight-59346 flight-59347 flight-59348 flight-59349 flight-59350 flight-59351 flight-59352 flight-59353 flight-59354 flight-59356 flight-59357 flight-59358 flight-59359 flight-59360 flight-59361 flight-59362 flight-59363 flight-59364 flight-59365 flight-59366 flight-59367 flight-59368 flight-59369 flight-59370 flight-59371 flight-59372 flight-59373 flight-59374 flight-59375 flight-59376 flight-59377 flight-59378 flight-59379 flight-59380 flight-59381 flight-59382 flight-59383 flight-59384 flight-59385 flight-59386 flight-59387 flight-59388 flight-59389 flight-59390 flight-59391 flight-59392 flight-59393 flight-59394 flight-59395 flight-59396 flight-59397 flight-59398 flight-59399 flight-59400 flight-59401 flight-59402 flight-59403 flight-59404 flight-59405 flight-59406 flight-59407 flight-59408 flight-59409 flight-59410 flight-59411 flight-59412 flight-59413 flight-59415 flight-59416 flight-59417 flight-59418 flight-59419 flight-59420 flight-59421 flight-59422 flight-59423
Ian Campbell [Mon, 6 Jul 2015 13:45:12 +0000 (14:45 +0100)]
ts-debian-hvm-install: Arrange for installed guest to use a serial console

So that the guest boot will be logged somewhere useful (the qemu-dm
log).

It still seems to pickup a "quiet" from somewhere, so it's not as
useful as it might be, but it is an improvement.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoWhen invoking xl create do so verbosely
Ian Campbell [Mon, 6 Jul 2015 13:45:11 +0000 (14:45 +0100)]
When invoking xl create do so verbosely

xend.pm inherits from xl.pm, but I don't know what (if any) support
for verbosity it has, so the xm invocation is unchanged.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agomg-update-live: New script flight-59100 flight-59147 flight-59149 flight-59151 flight-59152 flight-59153 flight-59154 flight-59155 flight-59156 flight-59157 flight-59158 flight-59159 flight-59160 flight-59161 flight-59162 flight-59163 flight-59164 flight-59165 flight-59166 flight-59167 flight-59168 flight-59169 flight-59170 flight-59171 flight-59172 flight-59173 flight-59174 flight-59175 flight-59176 flight-59177 flight-59178 flight-59179 flight-59180 flight-59181 flight-59182 flight-59183 flight-59184 flight-59185 flight-59186 flight-59187 flight-59188 flight-59189 flight-59190 flight-59191 flight-59192 flight-59193 flight-59194 flight-59195 flight-59196 flight-59197 flight-59198 flight-59199 flight-59200 flight-59202 flight-59203 flight-59204 flight-59205 flight-59206 flight-59207 flight-59208 flight-59209 flight-59210 flight-59211 flight-59212 flight-59213 flight-59214 flight-59215 flight-59216 flight-59217 flight-59218 flight-59219 flight-59220 flight-59221 flight-59222 flight-59223 flight-59224 flight-59225 flight-59226 flight-59227 flight-59228 flight-59229 flight-59230 flight-59231 flight-59232 flight-59233 flight-59234 flight-59235 flight-59236 flight-59237 flight-59238 flight-59239 flight-59240 flight-59241 flight-59242 flight-59243 flight-59244 flight-59245 flight-59246 flight-59247 flight-59248 flight-59249 flight-59250 flight-59251 flight-59252 flight-59253 flight-59254 flight-59255 flight-59256 flight-59257 flight-59258 flight-59259 flight-59260 flight-59261 flight-59262 flight-59263 flight-59264 flight-59265 flight-59266 flight-59267 flight-59268 flight-59269 flight-59270 flight-59271 flight-59272 flight-59274 flight-59275 flight-59276 flight-59277 flight-59278 flight-59279 flight-59280 flight-59281
Ian Jackson [Fri, 3 Jul 2015 11:00:24 +0000 (12:00 +0100)]
mg-update-live: New script

This is for deploying an emergency update under the feet of all
running tests.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
9 years agots-logs-capture: Explicitly set xenctx capture filename
Ian Jackson [Fri, 3 Jul 2015 11:22:52 +0000 (12:22 +0100)]
ts-logs-capture: Explicitly set xenctx capture filename

Now that the command contains PATH, the autogenerated filename is very
ugly.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
---
v2: New patch in this version of the series.

9 years agots-logs-capture: Run xenctx twice for each guest vcpu
Ian Jackson [Fri, 3 Jul 2015 11:15:18 +0000 (12:15 +0100)]
ts-logs-capture: Run xenctx twice for each guest vcpu

Two (or more) back-to-back ctxt's can often be useful, by giving a
snapshot of a loop the guest is stuck in.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
---
v2: New patch in this series.

9 years agots-logs-capture: Run xenctx earlier
Ian Jackson [Thu, 2 Jul 2015 17:05:25 +0000 (18:05 +0100)]
ts-logs-capture: Run xenctx earlier

Break fetch_xenctx_guest out into its own function, and run it before
serial_fetch_logs.

This is relevant because serial_fetch_logs sends the Xen debug keys,
which might dislodge a stuck guest - and, if it does, we would like to
have captured the stuck state with xenctx, rather than the unstuck
one.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agots-logs-capture: Break out guest listing and do it earlier
Ian Jackson [Thu, 2 Jul 2015 17:01:52 +0000 (18:01 +0100)]
ts-logs-capture: Break out guest listing and do it earlier

Break out the function find_guests from what was
fetch_logs_host_guests, and have it save its results in the @guests
global.

We do this soon because in the next patch we are going to want to
do something to each guest before we call serial_fetch_logs.

The loop containing fetch_logs_guest is now in the main program.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agots-logs-capture: Find xenctx in /usr/local as well
Ian Jackson [Thu, 2 Jul 2015 16:55:31 +0000 (17:55 +0100)]
ts-logs-capture: Find xenctx in /usr/local as well

xenctx is now in /usr/local/lib/xen/bin/xenctx.
                     ^^^^^^
Find it by setting PATH in the shell command.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoguest_find_domid: Set Vcpus correctly.
Ian Jackson [Thu, 2 Jul 2015 16:54:38 +0000 (17:54 +0100)]
guest_find_domid: Set Vcpus correctly.

The regexp was wrong, resulting in the last digit of the memory being
mistaken for the number of vcpus (!)

The only consumer of this is ts-logs-capture.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agosg-report-flight: Fix --include (broken by 3d56a191) flight-59035 flight-59036 flight-59038 flight-59039 flight-59040 flight-59041 flight-59042 flight-59044 flight-59045 flight-59046 flight-59047 flight-59048 flight-59049 flight-59050 flight-59051 flight-59052 flight-59053 flight-59054 flight-59055 flight-59056 flight-59057 flight-59058 flight-59059 flight-59060 flight-59061 flight-59062 flight-59063 flight-59064 flight-59065 flight-59066 flight-59067 flight-59068 flight-59069 flight-59070 flight-59071 flight-59072 flight-59073 flight-59074 flight-59075 flight-59076 flight-59077 flight-59078 flight-59079 flight-59080 flight-59081 flight-59082 flight-59083 flight-59084 flight-59085 flight-59086 flight-59087 flight-59088 flight-59089 flight-59090 flight-59091 flight-59092 flight-59093 flight-59094 flight-59095 flight-59096 flight-59097 flight-59098 flight-59099 flight-59101 flight-59102 flight-59103 flight-59104 flight-59105 flight-59106 flight-59107 flight-59108 flight-59109 flight-59110 flight-59111 flight-59112 flight-59113 flight-59114 flight-59115 flight-59116 flight-59117 flight-59118 flight-59119 flight-59120 flight-59121 flight-59122 flight-59123 flight-59124 flight-59125 flight-59126 flight-59127 flight-59128 flight-59129 flight-59130 flight-59131 flight-59132 flight-59133 flight-59134 flight-59135 flight-59136 flight-59137 flight-59138 flight-59139 flight-59140 flight-59141 flight-59142 flight-59143 flight-59144 flight-59145 flight-59146 flight-59148
Ian Jackson [Fri, 3 Jul 2015 10:06:40 +0000 (11:06 +0100)]
sg-report-flight: Fix --include (broken by 3d56a191)

In 3d56a191 "sg-report-flight: Make bodyprint[f] defer the output" it
became wrong for anything in the main printout part of
sg-report-flight to write directly to STDOUT.  However, the two (very
similar) bits of code for handling the two kinds of --include still
used cat.

The result is emails looking like this:

  From: osstest service owner <osstest-admin@xenproject.org>
  To: <xen-devel@lists.xensource.com>, <rumpkernel-builds@freelists.org>
CC: <ian.jackson@eu.citrix.com>
  Subject: [rumpuserxen test] People who touched revisions under test:
    Alice Bob <alice@example.com>
    Ian Jackson <Ian.Jackson@eu.citrix.com>
    Carol David <carol@example.com>
  Date: Fri, 3 Jul 2015 06:50:53 +0000

  flight 59037 rumpuserxen real [real]

Fix this by replacing those two near-identical bits of code with calls
to a single function which slurps the required include file into the
body text accumulation variable.

(There is no need to provide a facility for header includes, since
there is no need for a caller to pass headers through
sg-report-flight: they can simply be written into the output file
before running sg-report-flight, as indeed the string `Subject: ' is.

Despite the fact that --include-begin is used only by cr-daily-branch
which passes it a file `heading', the text is intended for the start
of the body, not the email headers.)

I have run

  ./sg-report-flight --include-begin=header --include=bodyinc --this-xen=e13013dbf1d5997915548a3b5f1c39594d8c1d7b --that-xen=84066dd4ef4bb5983e246c629a26ef4f3394e5d5 --html-dir=$HOME/public_html/d --max-flight=37590 37590

with some suitable lorem ipsum in bodyinc and header and observed:

(a) The bug introduced in 3d56a191 is visible in 3c464fbf.

(b) The output after this patch differs from the output produced by
1f0c168d (the previous osstest production commit) only in addition of
the `Last test of basis' and `Testing same since' information, in the
appropriate place.

Deployment note: Because this patch changes only sg-report-flight, it
is safe to deploy under the feet of a running flight.  I intend to do
this for all the production branches in the colo.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
9 years agosg-report-flight: Link from runvars to other jobs flight-59011 flight-59022 flight-59031 flight-59032 flight-59033 flight-59034 flight-59037 flight-59043
Ian Jackson [Wed, 1 Jul 2015 11:53:50 +0000 (12:53 +0100)]
sg-report-flight: Link from runvars to other jobs

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
---
v2: Fix grammar in subject line

9 years agosg-report-flight: Link from runvars to host histories
Ian Jackson [Wed, 1 Jul 2015 11:22:36 +0000 (12:22 +0100)]
sg-report-flight: Link from runvars to host histories

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agosg-report-flight: Convenience aliases for runvar row
Ian Jackson [Wed, 1 Jul 2015 11:21:49 +0000 (12:21 +0100)]
sg-report-flight: Convenience aliases for runvar row

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agosg-report-job-history: Show osstest version too
Ian Jackson [Wed, 1 Jul 2015 10:36:06 +0000 (11:36 +0100)]
sg-report-job-history: Show osstest version too

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agosg-report-job-history: No longer use TestSupport
Ian Jackson [Wed, 1 Jul 2015 11:33:25 +0000 (12:33 +0100)]
sg-report-job-history: No longer use TestSupport

This is for test jobs and not appropriate for a reporting script.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoMove flight_otherjob to Osstest.pm
Ian Jackson [Wed, 1 Jul 2015 11:32:43 +0000 (12:32 +0100)]
Move flight_otherjob to Osstest.pm

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agomake-flight etc.: stop testing SEDF at all
Dario Faggioli [Tue, 30 Jun 2015 17:36:59 +0000 (19:36 +0200)]
make-flight etc.: stop testing SEDF at all

SEDF has been broken and unmaintained at least until Xen 4.2, and most
likely even before! Tests are failing without anyonce caring, and yet
we're keeping using test resources for them.

Let's stop doing this!

Signed-off-by: Dario Faggioli <dario.faggioli@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
9 years agoEmails: Provide X-Osstest-Failures
Ian Jackson [Tue, 30 Jun 2015 13:31:28 +0000 (14:31 +0100)]
Emails: Provide X-Osstest-Failures

Specifically:
 * $cat now contains SORTLETTER BLOCKSTATUS DESCRIPTION...
 * Rewrap the lines setting $cat
 * Add $notsucceeds{$cat}[][2] containing one line for the new header
 * Generate the new header
 * Document the new header

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
9 years agoEmails: Provide X-Osstest-Versions-This and That headers
Ian Jackson [Tue, 30 Jun 2015 13:29:21 +0000 (14:29 +0100)]
Emails: Provide X-Osstest-Versions-This and That headers

Specifically:
 * Provide headerprint() in sg-report-flight
 * Use it to add X-Osstest-Versions headers based on %specver
 * Cause cr-daily-branch to always enable the feature
 * Document this in README.email

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
---
v2: Document This and That