]> xenbits.xensource.com Git - people/iwj/osstest.git/log
people/iwj/osstest.git
8 years agoREADME: Also mention other requirements. wip.konrad-fixes
Konrad Rzeszutek Wilk [Tue, 18 Oct 2016 14:56:27 +0000 (10:56 -0400)]
README: Also mention other requirements.

Mainly dctrl-grep which is in the dctrl-tools.

Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
CC: Marcos Matsunaga <Marcos.Matsunaga@oracle.com>
8 years agomgi-common: Support empty (unset) HttpProxy properly
Ian Jackson [Tue, 18 Oct 2016 15:46:20 +0000 (16:46 +0100)]
mgi-common: Support empty (unset) HttpProxy properly

mg_update_proxy ends up being set to the empty string so the {...:+-x}
form is needed to expand only non-empty values to `-x'.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Reported-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
CC: Marcos Matsunaga <Marcos.Matsunaga@oracle.com>
8 years agostandlone-reset: mkdir some directories
Ian Jackson [Tue, 18 Oct 2016 15:22:33 +0000 (16:22 +0100)]
standlone-reset: mkdir some directories

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
CC: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
CC: Marcos Matsunaga <Marcos.Matsunaga@oracle.com>
8 years agostandalone-reset: Fix when TftpDiVersion not set in config
Ian Jackson [Tue, 18 Oct 2016 14:50:16 +0000 (15:50 +0100)]
standalone-reset: Fix when TftpDiVersion not set in config

In b8134c7fa60d "mg-debian-installer-update: Print the correct value
for TftpDiVersion", the output of mg-debian-installer-update was
changed to be a config fragment.  But standalone-reset expected it to
be just the date value, and was not updated.

Update it now.  And leave a comment in mg-debian-installer-update to
stop this happening again.

CC: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
CC: Marcos Matsunaga <Marcos.Matsunaga@oracle.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agosupport check: Style improvements - rename _check_for_command
Ian Jackson [Fri, 14 Oct 2016 14:37:11 +0000 (15:37 +0100)]
support check: Style improvements - rename _check_for_command

Put an underscore in front.  This is not a public method.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agosupport check: Style improvements - general
Ian Jackson [Fri, 14 Oct 2016 14:35:31 +0000 (15:35 +0100)]
support check: Style improvements - general

Many of these functions are quite verbose - otiose, even.

No substantial change.  Some redundant log messages go away.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agosupport check: Reverse sense of return values
Ian Jackson [Fri, 14 Oct 2016 14:33:03 +0000 (15:33 +0100)]
support check: Reverse sense of return values

The toolstack()->check_blah functions would return an exit status.
This is very confusing.  Instead, have them return a booleanish value
representing the support status: ie, truthy if supported.

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agosupport check: Provide helper function to print nice log message
Ian Jackson [Fri, 14 Oct 2016 14:24:45 +0000 (15:24 +0100)]
support check: Provide helper function to print nice log message

Makes ts-migrate-support-check and ts-saverestore-support-check
slightly clearer.

This function takes $yes, which is truthish if the feature is
supported.  We are going to replace use of exit status truth values in
the various check functions in just a moment.

No functional change other than to log output.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agolibvirt: Check /capabilities/host/migration_features/live for live migration
Ian Jackson [Thu, 6 Oct 2016 16:38:29 +0000 (17:38 +0100)]
libvirt: Check /capabilities/host/migration_features/live for live migration

libvirt is capable of advertising this separately from
/capabilities/host/migration_features, so if save/restore is supported
but live migration is not, this will do the right thing.

We would have preferred libvirt to advertise
  /capabilities/host/migration_features/save
or something, but it doesn't right now, so we continue to use
  /capabilities/host/migration_features
to detect save/restore support.

If libvirt changes its feature presentation, then at some future point
we should change osstest too.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
CC: Martin Kletzander <mkletzan@redhat.com>
CC: Jim Fehlig <jfehlig@suse.com>
---
v3: Call correct function name.

8 years agolibvirt: Do not attempt save/restore when migration not advertised
Ian Jackson [Tue, 4 Oct 2016 16:24:17 +0000 (17:24 +0100)]
libvirt: Do not attempt save/restore when migration not advertised

Currently, osstest wrongly thinks that ARM can do save/restore,
because `virsh help' does mention the save command (on all
architectures).

So, additionally, check the virth capabilities xpath
   /capabilities/host/migration_features
to try to see whether this host supports migration.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
CC: Julien Grall <julien.grall@arm.com>
CC: Jim Fehlig <jfehlig@suse.com>
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
---
v3: Removed questioning and uncertain remarks from commit message,
    following appropriate confirmation from libvirt folks.
    Get sense of conditional combination right.

8 years agolibvirt: Check migration capabilities using proper XML parser
Ian Jackson [Tue, 4 Oct 2016 16:15:55 +0000 (17:15 +0100)]
libvirt: Check migration capabilities using proper XML parser

Do not grep the virsh capabilities output (!)  Instead, parse the XML
using perl's XML modules and look for the specific feature flag using
an XPATH pattern.

AFAICT from looking at the XML, that's

    <capabilities>
      <host>
<migration_features>
  <live/>

But the original code does not test for <live/>.

Xen could in principle (and is expected to, in the future, on ARM)
support save/restore but not live migration.  Currently it supports
neither on ARM.  libvirt's capabilities system does in principle
capture this distinction, but only in an adhoc way.

For now, this osstest commit has no ultimate functional change (with
libvirt output as it currently appears on our real hosts).

Deployment note: Requires libxml-libxml-perl to be installed.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
CC: Julien Grall <julien.grall@arm.com>
CC: Jim Fehlig <jfehlig@suse.com>
---
v3: Mention newly-required Perl libraries in README and commit message
    Get answers and syntax right (!)

8 years agomake-flight: XTF: honour $bfi (ie build flight)
Ian Jackson [Thu, 6 Oct 2016 18:39:02 +0000 (19:39 +0100)]
make-flight: XTF: honour $bfi (ie build flight)

If make-flight is run with a $buildflight argument, it does not create
any build jobs.  The test jobs are supposed to refer to the build jobs.

This was not done correctly for the XTF tests.  Add the missing ${bfi}.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Reviewed-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorump kernels: Build with RUMP_DEV_XEN_DEBUG and filter out debug messages
Ian Jackson [Fri, 7 Oct 2016 15:43:54 +0000 (16:43 +0100)]
rump kernels: Build with RUMP_DEV_XEN_DEBUG and filter out debug messages

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agomake-flight: Honour $bfi (build flight) for rump tests
Ian Jackson [Thu, 6 Oct 2016 18:36:37 +0000 (19:36 +0100)]
make-flight: Honour $bfi (build flight) for rump tests

A quick search suggests there are other a similar bugs...

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorump kernels: Install binutils on test box
Ian Jackson [Thu, 6 Oct 2016 18:11:09 +0000 (19:11 +0100)]
rump kernels: Install binutils on test box

The `rumprun' tool needs `readelf' which is in binutils.

This introduces a new test step, which is idempotent.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorump kernels: Adjust indentation in run-job/test-rumprun
Ian Jackson [Thu, 6 Oct 2016 18:09:33 +0000 (19:09 +0100)]
rump kernels: Adjust indentation in run-job/test-rumprun

Whitespace change only.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: Disable unwanted builds
Ian Jackson [Thu, 6 Oct 2016 12:03:34 +0000 (13:03 +0100)]
rumprun: Disable unwanted builds

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: xenstorels: Better new regexps for finding output
Ian Jackson [Wed, 5 Oct 2016 15:10:48 +0000 (16:10 +0100)]
rumprun: xenstorels: Better new regexps for finding output

There is no need to match the _exit.  We can match the main return as
before, provided we tolerate the way it now says
   main() of "program" returned 0

This is an update to ea13503bc853 "rumprun: xenstorels: New regexps
for finding output" (which was insufficient to get the xenstorels test
to pass).

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoTestSupport: guest_unprepare_disk: Make a no-op for guests with no Lvdev
Ian Jackson [Wed, 5 Oct 2016 15:07:53 +0000 (16:07 +0100)]
TestSupport: guest_unprepare_disk: Make a no-op for guests with no Lvdev

This includes some rump kernel tests.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorump kernels: Provide networking test
Ian Jackson [Wed, 5 Oct 2016 14:09:49 +0000 (15:09 +0100)]
rump kernels: Provide networking test

Introduce our own version of `nc -e echo', to replace the removed rump
kernel WOPR test (which we were using to check that networking
worked).

This test program works when compiled on Linux too.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorump kernels: Provide proper DHCP instructions to rumprun
Ian Jackson [Wed, 5 Oct 2016 14:07:57 +0000 (15:07 +0100)]
rump kernels: Provide proper DHCP instructions to rumprun

Otherwise we just get an unconfigured network interface.  (Requesting
DHCP used to be implicit.)

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorump kernels: ts-rumprun-bake: Do not tolerate errors
Ian Jackson [Wed, 5 Oct 2016 14:06:14 +0000 (15:06 +0100)]
rump kernels: ts-rumprun-bake: Do not tolerate errors

If we skip due to missing the input pieces, make the warning noiser.

If we think we have all the input pieces, bomb out if they don't seem
to contain the right bits, or if rumpbake fails.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorump kernels: Specify toolstack for rumprun demo to be rumprun
Ian Jackson [Wed, 5 Oct 2016 13:41:20 +0000 (14:41 +0100)]
rump kernels: Specify toolstack for rumprun demo to be rumprun

This causes ts-guest-start to use rumprun, rather than xl.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorump kernels: Provide rumprun toolstack
Ian Jackson [Wed, 5 Oct 2016 13:43:34 +0000 (14:43 +0100)]
rump kernels: Provide rumprun toolstack

This is suitable as a guest-specific toolstack: it defers to xl for
everything other than guest creation.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoSupport guest-specific "toolstack" for guest creation
Ian Jackson [Wed, 5 Oct 2016 13:39:11 +0000 (14:39 +0100)]
Support guest-specific "toolstack" for guest creation

Some guests need creation in a special way.  For example, rump kernels
are ideally started with rumprun.  Honour a guest var which specifies
a toolstack name.

Osstest::TestSupport::toolstack now takes an optional $gho so it can
do this lookup when appropriate.

After creation the guest is necessarily managed with the toolstack for
the host, so we honour this (ie we pass the $gho) only for create.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoBuildSupport: builddirsprops: Clean up each builddir
Ian Jackson [Wed, 5 Oct 2016 13:37:08 +0000 (14:37 +0100)]
BuildSupport: builddirsprops: Clean up each builddir

This makes prepbuilddirs work if it is run a second time for the same
builddirs, which is useful for ad-hoc testing.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorump-test-net: setsockopt V6ONLY off
Ian Jackson [Thu, 29 Sep 2016 12:57:05 +0000 (13:57 +0100)]
rump-test-net: setsockopt V6ONLY off

NetBSD (unlike Linux) has the V6ONLY socket option turned on by
default.  So to work in the rump kernel environment when tested with
IPv4 we need to adjust this setting.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agorump-test-net: New test program
Ian Jackson [Thu, 29 Sep 2016 10:36:23 +0000 (11:36 +0100)]
rump-test-net: New test program

The rump kernel WOPR test is no more, so we reimplement it.  This test
program simply listens on a TCP socket and says hi when you connect to
it.  It's a portable program.  So far, this has been tested on Linux,
but not in the rump environment.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agomg-allocate: Provide command line way to list allocated resources
Ian Jackson [Thu, 6 Oct 2016 15:49:28 +0000 (16:49 +0100)]
mg-allocate: Provide command line way to list allocated resources

Freely shareable resources don't appear in the plan, and the plan is
not always immediately updated, and is generally not always a
convenient interface.  Provide a command line way to list allocated
resources.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoExecutive: Break out task_spec_desc (no functional change)
Ian Jackson [Thu, 6 Oct 2016 15:48:53 +0000 (16:48 +0100)]
Executive: Break out task_spec_desc (no functional change)

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agosg-report-flight: Avoid some warnings when reporting unexecuted jobs
Ian Jackson [Thu, 6 Oct 2016 12:10:20 +0000 (13:10 +0100)]
sg-report-flight: Avoid some warnings when reporting unexecuted jobs

If no steps in a job are executed, there can be a failure with a
synthetic step row, containing a stepno of ''.  This causes a perl
warning when compared with <=>:
  Argument "" isn't numeric in numeric comparison (<=>) at ./sg-report-flight line 774.

Fix this by replacing falseish values with 0.

Bug introduced in 0e09a8b00ec6 "sg-report-flight: Report earlier,
earlier step failures".

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agohost allocation: Fix duration estimate to not include host allocation
Ian Jackson [Tue, 4 Oct 2016 18:09:18 +0000 (18:09 +0000)]
host allocation: Fix duration estimate to not include host allocation

In 720f08cb9052 "Executive: Previous duration estimator: use overall
time, not sum of steps" we introduced a bug: the condition to exclude
the host allocation time is now not effective if there are any steps
before host allocation.  Usually there are.

This means that the host allocation duration estimator has been
including the host allocation time from previous jobs, which is quite
wrong.

Fix this by subtracting the maximum duration of any host allocation
step.  Hopefully there will only be one.

If any host allocation runs concurrently with other steps (including
other host allocations) then this will start to give wrong answers.
But there are other reasons why we wouldn't want to do that.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v2: Fix sql syntax.

8 years agohost allocation: Dedupe "other hosts" flights in duration estimation
Ian Jackson [Tue, 4 Oct 2016 18:02:33 +0000 (18:02 +0000)]
host allocation: Dedupe "other hosts" flights in duration estimation

The old query would return one row for each step in each relevant
flight.  But we are really only interested in the flight.

Group by the flight and sort on max(finished).

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agohost allocation: Pass a debug function in find_recent_duration
Ian Jackson [Tue, 4 Oct 2016 17:23:23 +0000 (17:23 +0000)]
host allocation: Pass a debug function in find_recent_duration

We provide only a commented-out debug print.  This produces more
copius output than is desirable even to a compressed debug log.

No functional change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agohost allocation: Support -B<blessing> option
Ian Jackson [Tue, 4 Oct 2016 17:20:51 +0000 (17:20 +0000)]
host allocation: Support -B<blessing> option

The flight's intended affects the hostflags required, the duration
searches, and other decisions.  It is particularly useful for
debugging, where it can be desirable to try replaying a production
job's allocation with a "play" job.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agoms-planner: Improve an error message
Ian Jackson [Thu, 6 Oct 2016 11:52:25 +0000 (12:52 +0100)]
ms-planner: Improve an error message

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoms-planner: Ignore freely-shareable resources
Ian Jackson [Thu, 6 Oct 2016 11:50:01 +0000 (12:50 +0100)]
ms-planner: Ignore freely-shareable resources

Resource shares with no resource_sharing entry are freely shareable
and do not need the planning system.  Indeed, they currently break the
planner.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoflight preservation: Provide a way to allocate flights
Ian Jackson [Tue, 4 Oct 2016 12:24:34 +0000 (13:24 +0100)]
flight preservation: Provide a way to allocate flights

Teach mg-allocate to create and delete resources table entries for
flights, as necessary.  And, provide a conveniance alias F/<flight>.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoflight preservation: Honour flight allocation during expiry
Ian Jackson [Tue, 4 Oct 2016 12:10:33 +0000 (13:10 +0100)]
flight preservation: Honour flight allocation during expiry

Look in the resources and tasks table for a resources table entry
corresponding to each flight, owned by a live task.  Such flights are
not deleted.

Specifically:
 * At the start, we get a list of all the preserved flights, and
   also print the information to stdout.
 * Whenever we compare flight numbers for inequality (as a proxy
   for flight age), we first compare where the flights are allocated.
   (When there are references, the effect is that an allocated
   referring flight counts as very late, so $latestref will contain it.)
 * Before actually deleting the selected flight we check it's not
   allocated.  (Strictly, we check it's "latest" reference is not
   allocated.)

Currently there is nothing which creates such resources table entries
so there is no overall functional change.  Also, as a result, the doc
reads rather oddly.  This will be fixed in the next patch.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agomg-allocate: Tiny refactoring
Ian Jackson [Tue, 4 Oct 2016 12:20:12 +0000 (13:20 +0100)]
mg-allocate: Tiny refactoring

Break out $shareix assignment from $4.  (We are going to want to put
some code just after this point which will want to do regexp matching,
which would trash $4.)

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agocr-ensure-disk-space: Dry run produces better `die' message.
Ian Jackson [Tue, 4 Oct 2016 12:08:57 +0000 (13:08 +0100)]
cr-ensure-disk-space: Dry run produces better `die' message.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agocr-ensure-disk-space: -F option
Ian Jackson [Tue, 4 Oct 2016 12:07:37 +0000 (13:07 +0100)]
cr-ensure-disk-space: -F option

May be repeated (cuddled with itself) or given a number.  Forces
deletion, even if there is enough space.  Normally clean up one less
flight than specified, since cr-ensure-disk-space reruns its check
after acquiring the lock.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agocr-ensure-disk-space: Do not take out the lock in dry run mode
Ian Jackson [Tue, 4 Oct 2016 12:06:18 +0000 (13:06 +0100)]
cr-ensure-disk-space: Do not take out the lock in dry run mode

This makes testing a bit easier, and is of course fine.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agomg-bisect-activity-dump-periods: Split out windows-install steps
Ian Jackson [Mon, 26 Sep 2016 16:38:42 +0000 (17:38 +0100)]
mg-bisect-activity-dump-periods: Split out windows-install steps

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agomg-bisect-activity-*: New rather ad-hoc scripts for wall clock timing analysys
Ian Jackson [Thu, 22 Sep 2016 17:00:04 +0000 (18:00 +0100)]
mg-bisect-activity-*: New rather ad-hoc scripts for wall clock timing analysys

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agoAdd *.tmp to .gitignore
Ian Jackson [Mon, 26 Sep 2016 11:36:12 +0000 (12:36 +0100)]
Add *.tmp to .gitignore

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoTestSupport: use qemu-img to create vhd image
Wei Liu [Thu, 8 Sep 2016 15:52:48 +0000 (16:52 +0100)]
TestSupport: use qemu-img to create vhd image

We would like to delete blktap2 from xen.git at some point, but vhd-util
is part of blktap2. Let's switch to use qemu-img to create vhd image to
remove the dependency on blktap2 in osstest.

We want to use the distro qemu-utils, so add that to the package list
in ts-xen-install.

Note that vhd format is named "vpc" in qemu-img.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agoproduction-config*: Update to new d-i version 2016-09-20 for jessie
Ian Jackson [Tue, 20 Sep 2016 18:11:53 +0000 (19:11 +0100)]
production-config*: Update to new d-i version 2016-09-20 for jessie

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agomg-debian-installer-update: Honour HttpProxy for wget
Ian Jackson [Tue, 20 Sep 2016 18:03:05 +0000 (19:03 +0100)]
mg-debian-installer-update: Honour HttpProxy for wget

This script uses wget, not just `fetch'.  Set the http_proxy
environment variable, as that's the way to get wget to DTRT.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agomg-* update: Honour HttpProxy
Ian Jackson [Tue, 20 Sep 2016 17:46:26 +0000 (18:46 +0100)]
mg-* update: Honour HttpProxy

We need to use the cache in Massachusetts because of the new strict
firewall.

The code in the fetch subtroutine is a bit fiddly because 1. we want
to memoise the config lookup and 2. fetch can be called in a different
directory, so we need to cd back.

While we're here, document why we use the no-cache pragma.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoCreate XTF branch
Wei Liu [Tue, 26 Jul 2016 15:29:28 +0000 (16:29 +0100)]
Create XTF branch

This branch contains Xen and Linux build jobs and all jobs which contain
xtf in their name.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agomake-flight: create 5 xtf jobs
Wei Liu [Thu, 21 Jul 2016 11:50:41 +0000 (12:50 +0100)]
make-flight: create 5 xtf jobs

Create jobs only for x86 and set host flag diverse-xtf-x86.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agosg-run-job: test-xtf recipe
Wei Liu [Fri, 22 Jul 2016 11:30:57 +0000 (12:30 +0100)]
sg-run-job: test-xtf recipe

Install XTF, run FEP test and then run all available tests.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agoIntroduce ts-xtf-run
Wei Liu [Tue, 26 Jul 2016 11:16:29 +0000 (12:16 +0100)]
Introduce ts-xtf-run

This is the main script for running XTF.  It will first perform
selftest, and then run each XTF test case as a substep.

It does the following things:

1. Run self tests for individual environment and record the result.
2. Collect tests according to available environments.
3. Run the collected tests one by one.

The script may exit early if it detects the test host is down or
xtf-runner returns non-recognisable exit code.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agoIntroduce ts-xtf-fep
Wei Liu [Tue, 26 Jul 2016 11:02:23 +0000 (12:02 +0100)]
Introduce ts-xtf-fep

Test the availability of FEP during runtime.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agomfi-common: create xtf build job for 4.4 onwards
Wei Liu [Thu, 21 Jul 2016 10:50:36 +0000 (11:50 +0100)]
mfi-common: create xtf build job for 4.4 onwards

Xen 4.4 is the oldest one that we still provide security support at this
point in time.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
8 years agoIntroduce ts-xtf-install
Wei Liu [Thu, 21 Jul 2016 09:30:02 +0000 (10:30 +0100)]
Introduce ts-xtf-install

Extract XTF to the desired location.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agosg-run-job: create xtf build recipe
Wei Liu [Thu, 21 Jul 2016 10:31:04 +0000 (11:31 +0100)]
sg-run-job: create xtf build recipe

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agoIntroduce ts-xtf-build
Wei Liu [Thu, 14 Jul 2016 16:50:51 +0000 (17:50 +0100)]
Introduce ts-xtf-build

Clone, build and package XTF for later use.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agoBuildSupport: move buildcmd_stamped_logged here
Wei Liu [Thu, 4 Aug 2016 14:50:36 +0000 (15:50 +0100)]
BuildSupport: move buildcmd_stamped_logged here

... so that other build scripts can use it, too.

It now accepts one more parameter called "component" to be useful in
other build scripts.

No functional change.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agoap-common: add xtf tree
Wei Liu [Thu, 14 Jul 2016 16:44:38 +0000 (17:44 +0100)]
ap-common: add xtf tree

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agots-xen-build: always compile in FEP support
Wei Liu [Thu, 21 Jul 2016 14:37:48 +0000 (15:37 +0100)]
ts-xen-build: always compile in FEP support

By default FEP depends on debug flag. When we are near release the debug
flag will be turned off. In order to test a release build, we explicitly
enable FEP in build configuration.

Since we target Xen versions that already have Kconfig support, only a
Kconfig option is created for now.

We can easily add config option for older Xen when necessary.

Note that this only compiles in FEP support. To enable it a user needs
to explicitly specify fep=1 in hypervisor command line.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
8 years agoExecutive: Support substeps
Ian Jackson [Thu, 7 Jul 2016 18:35:12 +0000 (19:35 +0100)]
Executive: Support substeps

ts-* scripts can now create `substeps'.  For the purposes of
archaeology etc., a substep is just like a step.  But it does
correspond to a single specific ts-* invocation.

Instead, it is started and finished explicitly as required.

The whole job implementation code needs to explicitly assign a unique
stable testid to each substep.

The `script' parameter is stored in the `step' field in the database,
which is used only for reporting.  These do not need to be unique.

All substeps started are should also be finished, by the end of the
job.  If this is not done, the job will be regarded as broken (if it
is not already failed or aborted).  (But a substep might be finished
by a different ts-* script to the one that started it.)

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
CC: Wei Liu <wei.liu2@citrix.com>
8 years agots-hosts-allocate-Executive: Support diverse-CLASS hostflag
Ian Jackson [Wed, 6 Jul 2016 14:22:21 +0000 (15:22 +0100)]
ts-hosts-allocate-Executive: Support diverse-CLASS hostflag

Specifically:
 * Parse it out of the hostflags when constructing the hid
 * Look for the `hostalloc-diverse-FLIGHT-CLASS' ClientNote in
   the resource plan, to avoid inappropriately planning to reuse hosts.
 * Look for the `diversehosts_CLASS' runvar in other jobs in this flight,
   to find out who might have allocated with the same CLASS.  (This
   sort of duplicates information in *hostflags and *host, but digging
   the information out of the latter two would be very tiresome.)
 * Check each of the above for each candidate host.
 * Set the ClientNote when we are preparing a booking.
 * Set the runvar when we do the allocation.
 * Document the ClientNote.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
CC: Wei Liu <wei.liu2@citrix.com>
8 years agots-hosts-allocate-Executive: pass $plan to hid_find_possibilities
Ian Jackson [Wed, 6 Jul 2016 14:10:33 +0000 (15:10 +0100)]
ts-hosts-allocate-Executive: pass $plan to hid_find_possibilities

We are going to want this to implement the new diverse-CLASS hostflag.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
CC: Wei Liu <wei.liu2@citrix.com>
8 years agostep status skip: Implement in sg-report-flight
Ian Jackson [Fri, 8 Jul 2016 19:02:39 +0000 (20:02 +0100)]
step status skip: Implement in sg-report-flight

* When we are doing archaeology, searching for flight(s) which ran a
  particular testid, ignore all flights where the testid was skipped.

* In a flight we are examining for failures we need to justify, do not
  regard `skip' as a failure which requires investigation.  We
  thusg treat `skip' in such a flight very like `pass'.

* Assign a colour (dark grey, almost like the background) and display
  priority (very low) to `skip', so that they turn up nicely in the
  HTML grids.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agostep status skip: Ignore in report_run_getinfo
Ian Jackson [Fri, 8 Jul 2016 18:57:53 +0000 (19:57 +0100)]
step status skip: Ignore in report_run_getinfo

report_run_getinfo is trying to generate some HTML to describe a job's
(current) status.  It sometimes looks at the steps to find
`interesting' information to report.

Completely ignore steps with status `skip' for this purpose, just like
we ignore ones with status `pass'.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agostep status skip: Ignore in cs-bisection-step
Ian Jackson [Fri, 8 Jul 2016 18:56:05 +0000 (19:56 +0100)]
step status skip: Ignore in cs-bisection-step

cs-bisection step wants to completely ignore all skipped steps.  So we
adjust the one query which doesn't already insist on particular status
values, to filter out `skip'.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agosg-run-job: Add emacs mode comment
Ian Jackson [Thu, 7 Jul 2016 18:40:31 +0000 (19:40 +0100)]
sg-run-job: Add emacs mode comment

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agots-hosts-allocate-Executive: Replace some odd commas with semicolons
Ian Jackson [Wed, 6 Jul 2016 14:09:27 +0000 (15:09 +0100)]
ts-hosts-allocate-Executive: Replace some odd commas with semicolons

There does not seem to be any reason for this.  I think it must be a
leftover from a previous use of { A => X, B => Y, ... } syntax.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
CC: Wei Liu <wei.liu2@citrix.com>
8 years agoExecutive: Previous duration estimator: use overall time, not sum of steps
Ian Jackson [Fri, 8 Jul 2016 18:30:58 +0000 (19:30 +0100)]
Executive: Previous duration estimator: use overall time, not sum of steps

Some jobs runs steps in parallel.  Do not add up all the individual
step durations.  Instead, calculate the duration as the time between
first step start and last step finish.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
8 years agorumprun: xenstorels: Improve an error message slightly
Ian Jackson [Fri, 1 Jul 2016 18:17:10 +0000 (19:17 +0100)]
rumprun: xenstorels: Improve an error message slightly

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: xenstorels: New regexps for finding output
Ian Jackson [Fri, 1 Jul 2016 18:16:41 +0000 (19:16 +0100)]
rumprun: xenstorels: New regexps for finding output

The framing output in rumprun upstream has changed.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: xenstorels: Do not attempt to edit the config file
Ian Jackson [Fri, 1 Jul 2016 18:15:11 +0000 (19:15 +0100)]
rumprun: xenstorels: Do not attempt to edit the config file

There is no config file any more, so this function now crashes due to
passing undef to target_editfile_root.

We do not need to edit it to set on_poweroff to preserve because this
is the default for rumprun.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: `rumpbake' our executables and run them with `rumprun'
Ian Jackson [Fri, 1 Jul 2016 15:46:08 +0000 (16:46 +0100)]
rumprun: `rumpbake' our executables and run them with `rumprun'

(Well, our one executable: xenstore-ls)

Modern rumprun requires the output of the linker to be `baked' (second
link phase, where the complete unikernel is assembled).

This has to be done as part of the build, because it needs all the
rumpkernel libraries.  It generates a single image file - there is no
longer any disk image or config file produced by the rump ecosystem.

The baked file needs to be provided in a dist.  We have
ts-rumprun-bake take command line argument specifying which things to
bake.  It reads the runvars for the source executables and creates a
single dist output containing the images.  There are now `executables'
and `images'.

Furthermore modern rumprun requires the image to be run with
`rumprun'.  One underlying reason is that it wants to pass the command
line and some other config parameters to the guest via xenstore, in
/local/domain/GUEST/rumprun/cfg.  To do this outside xl requires the
domain to be created paused.  Another is to abstract away details of
the actual execution environment (compared to other unikernel
execution models).

rumprun has a mode (-D -T) in which it would be possible to fish the
configuration and the desired json object (for the cfg) out of the
tempfile it creates.  It might also be possible for osstest to
construct these out of whole cloth.

However, this would be undesirable because it would break if rumprun
changed (in particular, if the interface to the domain creation
changed).

And because of the cfg wrinkle it still wouldn't let us construct a
domain config file which could be passed to
toolstack($ho)->guest_create.

So instead we invent Osstest::Rumprun::rumprun_guest_create, which
invokes rumprun.  rumprun implicitly invokes xl.

The config editing which was previously done by ts-rumprun-demo-setup
is now done by passing appropriate options to rumprun.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoTestSupport: guest_prepare_disk: cope with no disk
Ian Jackson [Fri, 1 Jul 2016 18:03:19 +0000 (19:03 +0100)]
TestSupport: guest_prepare_disk: cope with no disk

If the guest has no runvars specifying any kind of disk, do not
attempt to mess about with unmounting it etc.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: Do not stash whole build tree
Ian Jackson [Fri, 1 Jul 2016 15:45:12 +0000 (16:45 +0100)]
rumprun: Do not stash whole build tree

Build steps all need the whole build tree in the same location, so
have to be part of this job.

Test jobs need only rumprun.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoXen built versions: ts-xen-build: check versions of Xen subtrees, only
Ian Jackson [Fri, 1 Jul 2016 14:44:41 +0000 (15:44 +0100)]
Xen built versions: ts-xen-build: check versions of Xen subtrees, only

ts-xen-build has a check that the actually-built versions of the
various subtrees are right.  This allows it to spot if the machinery
for specifying the subtree revision hasn't worked.

However, this machinery is troublesome: it assumes that the value
specified in the revision_TREE runvar is a commit id, just like the
value specified in built_revision_TREE.  This is, currently, true in
flights created by cr-daily-branch and cs-try-bisect.

But it is not necessarily true for flights created other ways.  In
principle it would be possible to look into each checked out subtree,
and use git-rev-parse (and its equivalent for nother VCSs) to check
whether the specified revision is right (by comparing it to
origin/<revision_TREE>, not <revision_TREE>, I guess).  This is quite
fiddly.

The reason this is causing trouble now is that some of the ad-hoc rump
kernel flights I'm currently making contain non-git-revison-id values
for the revision_TREE for parts of the rumprun build.

So for now, limiting this check to TREEs which are actually Xen
subtrees will fix the problem for me (and this will be necessary for
the fuller fix, which I describe above).  So do that.

Specifically:
 * Add a new WHERE clause to the query statement, so that it selects
   only the row for one specific tree
 * Run the query once for each tree in %xensubtrees

This leaves the query overly-complicated, but this doesn't matter,
because if and when we make a fuller fix we'll throw this entire query
away.  So it is easier to put off rewriting it in the hope that this
will never been needed.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoXen built versions: Move list of subtrees to BuildSupport
Ian Jackson [Fri, 1 Jul 2016 14:43:00 +0000 (15:43 +0100)]
Xen built versions: Move list of subtrees to BuildSupport

Turn the adhoc list of tree names and subdirectories in
collect_xen_built_versions into a hash, which we iterate over.

Doing this in a data-driven way allows us to provide this information
to callers of collect_xen_built_versions, which is going to be helpful
in a moment.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: ts-rumprun-build: set up ccache
Ian Jackson [Thu, 30 Jun 2016 15:25:28 +0000 (16:25 +0100)]
rumprun: ts-rumprun-build: set up ccache

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: Break out findtools
Ian Jackson [Thu, 30 Jun 2016 14:29:09 +0000 (15:29 +0100)]
rumprun: Break out findtools

This makes room for setting up ccache.

No functional change yet.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: Do not run xen/Kconfig
Ian Jackson [Wed, 29 Jun 2016 15:04:26 +0000 (16:04 +0100)]
rumprun: Do not run xen/Kconfig

We aren't going to cross-build a Xen hypervisor for the rump
environment.  So don't configure it.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: Drop old rumpuserxen demo
Ian Jackson [Wed, 29 Jun 2016 15:02:58 +0000 (16:02 +0100)]
rumprun: Drop old rumpuserxen demo

The WOPR demo is gone from rumpkernel upstream.

Sadly this leaves us without a test that the rump environment's
networking is functional.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: ts-rumprun-build: Update for newer Xen
Ian Jackson [Thu, 30 Jun 2016 14:19:15 +0000 (15:19 +0100)]
rumprun: ts-rumprun-build: Update for newer Xen

Newer Xen needs more work to make it cross compile for rump.

* Pass --host=TARGET to configure.  This is needed so that configure
  knows that we are deliberately cross compiling.  (Otherwise it
  tries to run target binaries on the host, and crashes when that fails.)

* Pass CROSS_COMPILE in the environment.  This arranges for the Xen
  Makefiles to run the right compiler, ie $(CROSS_COMPILE)-gcc.

* Put the rump compiler directory on PATH, so that the Xen Makefiles
  can find it.

* Pass HOSTCC=gcc in the environment; otherwise it tries to use the
  default CC (which is $(CROSS_COMPILE)gcc), when building
  build-system-internal tools which are to be run on the host as part
  of the build.

  The need for this could be avoided by setting XEN_TARGET_ARCH to the
  rump architecture, but then we would have to provide a Xen arch
  config file for that architecture, which would be meaningless since
  we are not actually building a hypervisor, and would have to contain
  various dummy information.

NB in this commit message I use Xen terminology for cross arch names:

 Xen          GCC/GNU        Meaning                   Example for
 terminology  terminology                              rump cross build

 host         build          Native architecture of     i586-linux-gnu
                             the environment in which
     we are running the build.

 target       host           Foreign architecture on    i486-rumprun-netbsdelf
                             which the objects etc.
     which we are now building
     will eventually be run.

 n/a          target         Used only when building a "Canadian"
                     cross compiler: the 2nd foreign
     architecture for which the compiler which
     we are now building (on the `build(gnu)'
     arch) will, when we run it, produce
     binaries (when it is run on the
     `host(gnu)' arch).

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: ts-rumprun-build: Update for new rumprun bin location
Ian Jackson [Wed, 29 Jun 2016 14:48:35 +0000 (15:48 +0100)]
rumprun: ts-rumprun-build: Update for new rumprun bin location

The compiler wrappers are in a different location in the new rumprun
build tree.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agots-xen-build: Support --no-kconfig
Ian Jackson [Wed, 29 Jun 2016 14:48:10 +0000 (15:48 +0100)]
ts-xen-build: Support --no-kconfig

Nothing passes this yet, so no functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agots-xen-build: Support $r{cmdsuffix_configure}
Ian Jackson [Wed, 29 Jun 2016 14:47:52 +0000 (15:47 +0100)]
ts-xen-build: Support $r{cmdsuffix_configure}

Nothing sets this yet, so no functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agots-xen-build: Separate out kconfig from main build step
Ian Jackson [Wed, 29 Jun 2016 14:14:10 +0000 (15:14 +0100)]
ts-xen-build: Separate out kconfig from main build step

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: ts-rumprun-build: Adjust command prefixes for new rumprun
Ian Jackson [Wed, 25 May 2016 15:46:04 +0000 (16:46 +0100)]
rumprun: ts-rumprun-build: Adjust command prefixes for new rumprun

Nowadays the expected use pattern is
   CC=<...rumprun...>-gcc ./configure
etc.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: ts-rumprun-build: Build new rumprun properly, ship the output
Ian Jackson [Wed, 25 May 2016 15:36:52 +0000 (16:36 +0100)]
rumprun: ts-rumprun-build: Build new rumprun properly, ship the output

The command is `build-rr.sh' nowadays.  The output longer includes
test domain image and configuration.  The output is in `rumprun'.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: ts-rumprun-build: Remove $bodges
Ian Jackson [Wed, 25 May 2016 15:01:57 +0000 (16:01 +0100)]
rumprun: ts-rumprun-build: Remove $bodges

This is very obsolete.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: Move xenbits tree to osstest subdir
Ian Jackson [Wed, 25 May 2016 15:00:58 +0000 (16:00 +0100)]
rumprun: Move xenbits tree to osstest subdir

Move our tested tree to /home/xen/git/osstest, where these kind of
things live nowadays.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: Fetch source from new upstream
Ian Jackson [Wed, 25 May 2016 15:00:01 +0000 (16:00 +0100)]
rumprun: Fetch source from new upstream

Also, update for the current set of submodules.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agorumprun: Rename all `rumpuserxen' to `rumprun'
Ian Jackson [Wed, 25 May 2016 14:43:53 +0000 (15:43 +0100)]
rumprun: Rename all `rumpuserxen' to `rumprun'

The names have changed upstream.

Since upstream is no longer compatible and these tests have been
failing since then, we are going to treat this as an entirely new test
series.

In this patch we rename everything mechanically.  More interesting
changes will come later.

git-mv -f ts-rumpuserxen-build ts-rumprun-build
git-mv -f ts-rumpuserxen-demo-setup ts-rumprun-demo-setup
git-mv -f ts-rumpuserxen-demo-xenstorels ts-rumprun-demo-xenstorels

git-ls-files | xargs perl -i~ -pe 's/rumpuserxen/rumprun/g'
git-ls-files | xargs perl -i~ -pe 's/(_|\b)rumpuserxen(_|\b)/$1rumprun$2/g'

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoTestSupport: Produce stack trace for undef tfileex
Ian Jackson [Fri, 1 Jul 2016 18:02:49 +0000 (19:02 +0100)]
TestSupport: Produce stack trace for undef tfileex

Use `confess' to see where an undef $rfile came from.  I think there
will probably be lots more of this pattern.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoExecutive: Allow out-of-order manipulations of flights intended play
Ian Jackson [Fri, 1 Jul 2016 17:30:21 +0000 (18:30 +0100)]
Executive: Allow out-of-order manipulations of flights intended play

Flights being operated on by a developer hacking about with the code,
which were created with intended blessing `play', are usually blessed
`running' or `broken' or something.  So the safety catch bypass needs
to look at the intended blessing too.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agoExecutive: Do update flights_harness_touched for play flights
Ian Jackson [Fri, 1 Jul 2016 17:28:44 +0000 (18:28 +0100)]
Executive: Do update flights_harness_touched for play flights

Have \bplay\b simply bypass the blessing check, but not the harness
revision update which follows.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agomg-db-activity-*: New admin debugging tools for DB queries
Ian Jackson [Tue, 30 Aug 2016 09:58:50 +0000 (10:58 +0100)]
mg-db-activity-*: New admin debugging tools for DB queries

mg-db-activity-logger can be used to sample the activity in the
database, for consumption by mg-db-activity-redactor.

This can be used to look for long-running db queries and to
investigate lock contention.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agomg-report-host-usage-*: New admin debugging tools
Ian Jackson [Thu, 25 Aug 2016 14:59:28 +0000 (15:59 +0100)]
mg-report-host-usage-*: New admin debugging tools

These two tools can be used to dig into the osstest history and
produce some graphs of what the system is spending its resources on.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
8 years agots-coverity-upload: Double coverity upload timeout
Ian Jackson [Mon, 15 Aug 2016 10:44:55 +0000 (11:44 +0100)]
ts-coverity-upload: Double coverity upload timeout

From 3600s to 7200s.  It failed in flight 100483 in the Mass colo,
with a timeout, having uploaded 95% (151Mby) in 3600s.

Ideally we would like to release the build host, but there is no
infrastructure for doing that right now.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>