]> xenbits.xensource.com Git - people/aperard/osstest.git/log
people/aperard/osstest.git
6 years agoOsstest/RedHat: fix deletion of generated network profile, keep lo redhat
Anthony PERARD [Fri, 17 Aug 2018 16:48:47 +0000 (17:48 +0100)]
Osstest/RedHat: fix deletion of generated network profile, keep lo

6 years agomake-centos-flight: Add propmin:xenmin hostflags
Anthony PERARD [Thu, 12 Jul 2018 16:11:35 +0000 (17:11 +0100)]
make-centos-flight: Add propmin:xenmin hostflags

6 years agoDEBUG: RedHat: debug print in bootif hook
Anthony PERARD [Thu, 21 Jun 2018 14:05:40 +0000 (15:05 +0100)]
DEBUG: RedHat: debug print in bootif hook

6 years agoNOTES
Anthony PERARD [Tue, 12 Jun 2018 14:26:40 +0000 (15:26 +0100)]
NOTES

6 years agots-host-install: XXX Stuff to check if it can work and need works
Anthony PERARD [Fri, 8 Jun 2018 17:58:17 +0000 (18:58 +0100)]
ts-host-install: XXX Stuff to check if it can work and need works

6 years agots-leak-check: ignore udevd, for centos6
Anthony PERARD [Sun, 24 Jun 2018 20:37:59 +0000 (21:37 +0100)]
ts-leak-check: ignore udevd, for centos6

6 years agots-logs-capture: Collect more logs from CentOS
Anthony PERARD [Fri, 15 Jun 2018 10:14:19 +0000 (11:14 +0100)]
ts-logs-capture: Collect more logs from CentOS

- Installation logs for both CentOS 6 and 7
- Failed systemd services for CentOS 7

6 years agoWORKAROUND: TestSupport: Make target_reboot works with systemd
Anthony PERARD [Wed, 15 Nov 2017 12:31:04 +0000 (12:31 +0000)]
WORKAROUND: TestSupport: Make target_reboot works with systemd

On host running with systemd as init, doing `ssh host reboot` will
result in ssh returning an error. It is likely that systemd kill sshd
before the `reboot`/`init 6` command return.

This patch works around by calling `shutdown -r` instead. By default
shutdown will have the host reboot 1 minute after invocation.

With systemd, an alternative would be to call reboot remotely:
  systemctl -H root@host reboot
That would return cleanly ($?==0) like `ssh host init 6` does without
systemd involved.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agots-debian-di-install: Use guests suite name for DI path from tftp
Anthony PERARD [Thu, 21 Jun 2018 13:40:32 +0000 (14:40 +0100)]
ts-debian-di-install: Use guests suite name for DI path from tftp

6 years agomg-centos-installer-update: To download kernel and initrd
Anthony PERARD [Wed, 6 Dec 2017 19:06:42 +0000 (19:06 +0000)]
mg-centos-installer-update: To download kernel and initrd

Also one would need to `mkdir centos-installer` in TftpPlayDir for the
script to work, this is the same behavior as with
mg-debian-installer-update.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agomake-centos-flight: Create a flight with CentOS as dom0
Anthony PERARD [Tue, 21 Nov 2017 18:05:13 +0000 (18:05 +0000)]
make-centos-flight: Create a flight with CentOS as dom0

This is based on make-flight, with the added all_host_os=centos runvar,
and without test that can not be run.

Anything based on the recipe "test-debian" or "test-pair" is remove, as
they require xen-tools. There is no XSM tests as the CentOS packages is
built without. There is no build jobs as the Xen packages been tested
are built in the CentOS CBS.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoTestSupport: Handle qemu-img location on CentOS
Anthony PERARD [Wed, 22 Nov 2017 18:27:05 +0000 (18:27 +0000)]
TestSupport: Handle qemu-img location on CentOS

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agots-xen-install: Adapt to install package from a centos repo
Anthony PERARD [Mon, 11 Jun 2018 18:36:37 +0000 (19:36 +0100)]
ts-xen-install: Adapt to install package from a centos repo

6 years agoTestSupport: Adapt target_https_mitm_proxy_setup to CentOS
Anthony PERARD [Thu, 30 Nov 2017 18:24:54 +0000 (18:24 +0000)]
TestSupport: Adapt target_https_mitm_proxy_setup to CentOS

The location for new certificates is different, and
update-ca-certificates is Debian specific.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoTestSupport: In host_install_postboot, don't call update-rc.d on CentOS
Anthony PERARD [Thu, 30 Nov 2017 18:07:18 +0000 (18:07 +0000)]
TestSupport: In host_install_postboot, don't call update-rc.d on CentOS

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoTestSupport: With sysload, use short option of --load
Anthony PERARD [Wed, 3 Jan 2018 11:59:09 +0000 (11:59 +0000)]
TestSupport: With sysload, use short option of --load

The long option --load does not work on CentOS 6, but the short
one -p is working. Have check --help of sysctl on Debian.

6 years agots-host-install: ntpserver fix is debian specific
Anthony PERARD [Fri, 8 Jun 2018 15:38:51 +0000 (16:38 +0100)]
ts-host-install: ntpserver fix is debian specific

6 years agoTestSupport: Add centos to package_install_cmd
Anthony PERARD [Fri, 24 Nov 2017 13:00:05 +0000 (13:00 +0000)]
TestSupport: Add centos to package_install_cmd

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agots-host-install: No chmod 2775 /root for redhat
Anthony PERARD [Mon, 11 Jun 2018 17:30:47 +0000 (18:30 +0100)]
ts-host-install: No chmod 2775 /root for redhat

6 years agoTestSupport: host_vg_name
Anthony PERARD [Tue, 12 Jun 2018 17:02:12 +0000 (18:02 +0100)]
TestSupport: host_vg_name

6 years agots-host-install: Override $kernel and $initrd with centos values
Anthony PERARD [Fri, 8 Jun 2018 17:57:51 +0000 (18:57 +0100)]
ts-host-install: Override $kernel and $initrd with centos values

6 years agoTestSupport: host_installcmdline_core, along with ks_installcmdline_core
Anthony PERARD [Fri, 8 Jun 2018 14:56:02 +0000 (15:56 +0100)]
TestSupport: host_installcmdline_core, along with ks_installcmdline_core

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoTestSupport: host_installer_path, along with ks_installer_path
Anthony PERARD [Fri, 8 Jun 2018 16:10:59 +0000 (17:10 +0100)]
TestSupport: host_installer_path, along with ks_installer_path

6 years agots-host-install: Use host_install_recipe_create
Anthony PERARD [Tue, 12 Jun 2018 16:57:24 +0000 (17:57 +0100)]
ts-host-install: Use host_install_recipe_create

In order to call the right function to create an install script, either
preesed_create for Debian or kickstart_create for RedHat/CentOS.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoOsstest/RedHat: osstest-confirm-booted for centos6
Anthony PERARD [Thu, 21 Jun 2018 15:25:02 +0000 (16:25 +0100)]
Osstest/RedHat: osstest-confirm-booted for centos6

6 years agoOsstest/RedHat: systemd set-default osstest.target, that goes with the overlay
Anthony PERARD [Tue, 12 Jun 2018 17:37:47 +0000 (18:37 +0100)]
Osstest/RedHat: systemd set-default osstest.target, that goes with the overlay

XXX May want to do that in kickstart_create, so that would not be executed
in guests.

6 years agokickstart_hook_overlay
Anthony PERARD [Tue, 12 Jun 2018 17:06:11 +0000 (18:06 +0100)]
kickstart_hook_overlay

6 years agooverlay-centos: RedHat: Add sysvinit script osstest-confirm-booted overlay-centos
Anthony PERARD [Tue, 9 Jan 2018 14:47:28 +0000 (14:47 +0000)]
overlay-centos: RedHat: Add sysvinit script osstest-confirm-booted overlay-centos

This is to be used by CentOS 6, as the systemd units are to be used with
CentOS 7.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---

There are several way to implement the Debian Require: $all (or the
update-rc.d start 99 2 .) in CentOS6:
- Add chkconfig comment in the main script
  (chkconfig will only take into account the priority, and get the start
  level from the "INIT INFO" as it take precedence)
- Add the same comment in an override file in /etc/chkconfig.d/$service
  (Only the information present in the override file are taken into
  account)

First one might be better, as Debian probably don't care about this
extra comment.

6 years agooverlay-centos: RedHat: Setup osstest-confirm-booted.service (systemd)
Anthony PERARD [Wed, 15 Nov 2017 15:18:46 +0000 (15:18 +0000)]
overlay-centos: RedHat: Setup osstest-confirm-booted.service (systemd)

This emulate the osstest-confirm-booted service that is done on Debian.

In order to have the service been started last:
- it is made dependent on multi-user.target which is the default target on systemd.
- it is part of osstest.target which depend on multi-user.target.
- the osstest.target is set as the new default.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoOsstest/RedHat: kickstart: handle httpproxy in %post hook
Anthony PERARD [Fri, 8 Jun 2018 15:37:26 +0000 (16:37 +0100)]
Osstest/RedHat: kickstart: handle httpproxy in %post hook

6 years agoOsstest/RedHat: Introduce kickstart_create
Anthony PERARD [Tue, 12 Jun 2018 16:48:35 +0000 (17:48 +0100)]
Osstest/RedHat: Introduce kickstart_create

This creates an autoinstall script that can be used to install a host.
It can install both CentOS 6 and CentOS 7.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoredhat_repo_url
Anthony PERARD [Tue, 12 Jun 2018 16:35:55 +0000 (17:35 +0100)]
redhat_repo_url

6 years agoTestSupport: Override $ho->{Suite} in selecthost
Anthony PERARD [Fri, 8 Jun 2018 15:37:48 +0000 (16:37 +0100)]
TestSupport: Override $ho->{Suite} in selecthost

6 years agomake-flight: Set redhat_redhatversion runvar
Anthony PERARD [Mon, 11 Jun 2018 13:55:52 +0000 (14:55 +0100)]
make-flight: Set redhat_redhatversion runvar

This can be used by ts-redhat-install to find out what version of RHEL
is going to be installed. Right now only used to create a kickstart
file.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoTestSupport: selectguest set RedhatRelease
Anthony PERARD [Wed, 13 Jun 2018 16:37:01 +0000 (17:37 +0100)]
TestSupport: selectguest set RedhatRelease

6 years agoTestSupport: Add RedhatRelease in selecthost
Anthony PERARD [Tue, 12 Jun 2018 16:40:53 +0000 (17:40 +0100)]
TestSupport: Add RedhatRelease in selecthost

6 years agoOsstest.pm: Add RedHat configure options for Relase and Mirror.
Anthony PERARD [Tue, 12 Jun 2018 16:33:19 +0000 (17:33 +0100)]
Osstest.pm: Add RedHat configure options for Relase and Mirror.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoOsstest/RedHat: Split kickstart_create_guest to have reusable fns
Anthony PERARD [Thu, 7 Jun 2018 13:35:31 +0000 (14:35 +0100)]
Osstest/RedHat: Split kickstart_create_guest to have reusable fns

So the functions can be use for create a kickstart file for a host.
This includes these functions:
- kickstart_base(), which have common options
- kickstart_hook_command() and kickstart_hook_cmds() which helps create
  hooks that can be runned once the installation is almost over ('post'
  hooks), but could also be used with 'pre' for having script runned
  prior to the installation.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoOsstest/RedHat: Move redhat guest kickstart creation
Anthony PERARD [Thu, 7 Jun 2018 11:12:13 +0000 (12:12 +0100)]
Osstest/RedHat: Move redhat guest kickstart creation

.. to a new RedHat module which can be reused later.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agots-redhat-install: root password can be in plain text
Anthony PERARD [Wed, 6 Jun 2018 15:46:35 +0000 (16:46 +0100)]
ts-redhat-install: root password can be in plain text

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
6 years agoTestSupport: In teditfileex, get the file with the requested user
Anthony PERARD [Wed, 15 Nov 2017 18:35:07 +0000 (18:35 +0000)]
TestSupport: In teditfileex, get the file with the requested user

e.g. If the file to be edited is only accessible to the root user,
target_getfile() would not work.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoJobDB-Standalone.tcl: Fix read-runvar
Anthony PERARD [Wed, 15 Nov 2017 18:56:01 +0000 (18:56 +0000)]
JobDB-Standalone.tcl: Fix read-runvar

This fix the error bellow, when the runvar exist:
can't read "runvarinfo()": no such element in array
    while executing
"set val $runvarinfo($val)"
    invoked from within
"osstestdb eval {
        SELECT val FROM runvars
         WHERE flight = $flight
           AND job = $job
           AND name = $name
    } runvarinfo {
        se..."
    (procedure "jobdb::read-runvar" line 3)
    invoked from within
"jobdb::read-runvar $flight $job all_host_os"
    (procedure "run-job" line 13)
    invoked from within
"run-job $job"
    (file "./sg-run-job" line 767)

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agocs-adjust-flight: Allow runvar-build-set new value to be just "."
Ian Jackson [Fri, 6 Jul 2018 13:36:37 +0000 (14:36 +0100)]
cs-adjust-flight: Allow runvar-build-set new value to be just "."

This is useful because if you say new: for the flight to be adjusted,
you don't have the flight number.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agots-depriv-audit-qemu: Leaked substeps are `blocked', and then script is fail
Ian Jackson [Fri, 6 Jul 2018 11:08:33 +0000 (12:08 +0100)]
ts-depriv-audit-qemu: Leaked substeps are `blocked', and then script is fail

If thus script crash in some non-substep-specific operation, the
substeps may have been created (and thus be in the db as `running').
Leaving them like this is not allowed: it is treated by sg-run-job,
and by the archaeologists as an internal error.

If this happens, what we want is for the script as a whole to be
`fail', and for the failing tests to be `blocked'.  The former will
spot if this crash is a regression.  The latter will avoid treating
the substeps themselves as regressions.

Reported-by: Anthony PERARD <anthony.perard@citrix.com>
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agoarmhf, xsm: Drop XSM tests on 32-bit ARM
Ian Jackson [Fri, 6 Jul 2018 11:05:37 +0000 (12:05 +0100)]
armhf, xsm: Drop XSM tests on 32-bit ARM

We are at the limit of ARM capacity, which has not kept pace with X86
expansion.  New hardware is on the way but it is not here yet.

Dropping the XSM tests drops one test, but also one build, which saves
considerable effort.  Builds are currently the bottleneck, because we
avoid building on the unreliable Arndale boards.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Julien Grall <julien.grall@arm.com>
6 years agoxsm_variants: Allow XSM enablement to depend on the architecture
Ian Jackson [Fri, 6 Jul 2018 11:04:25 +0000 (12:04 +0100)]
xsm_variants: Allow XSM enablement to depend on the architecture

Builds and tests have different ideas about arch variables, because
tests have dom0 arch, xen arch, etc.  So pass it in as a parameter.

No functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agolibvirt build: Set make_njobs=1 except when testing libvirt
Ian Jackson [Fri, 6 Jul 2018 10:36:59 +0000 (11:36 +0100)]
libvirt build: Set make_njobs=1 except when testing libvirt

libvirt has a -j bug.  This is allegedly going to be fixed in upstream
RSN ?  Anyway, for now, serialise all the builds on other branches so
they are not affected.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agoBuildSupport: Honour new runvar make_njobs
Ian Jackson [Fri, 6 Jul 2018 10:25:36 +0000 (11:25 +0100)]
BuildSupport: Honour new runvar make_njobs

Having a hardcoded -j4, and having this come via DefMakeFlags, is not
brilliant.  But at least this make_njobs variable has better semantics
so won't make it harder to make this more sophisticated later.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agoPDU::ipmi_try: New method
Ian Jackson [Mon, 2 Jul 2018 16:40:40 +0000 (16:40 +0000)]
PDU::ipmi_try: New method

For power on, this is just like ipmi.

For power off, it doesn't mind errors (although it has three
attempts).  This is useful when combined with pdu power: if the
chassis power is already off, ipmi will fail.

If the ipmi operation does fail, then the chassing pdu power operation
will do the job.  So this will also fix things if the test case
crashed the bmc or something.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoPDU::pause: Better pause time configuration
Ian Jackson [Mon, 2 Jul 2018 15:39:47 +0000 (15:39 +0000)]
PDU::pause: Better pause time configuration

If no time is specified, use 120 (or the PowerOnTime host property
value) when powering on, or 10 when powering off.

This is all intended to be used like this:
  HostProp_rimava0_PowerMethod nest; msw --apc6 pdu2 19; pause; ipmi rimava0m

This means:
  * For power on, first turn on the APC PDU pdu2 port 19
  * Wait 120s (or HostProp_rimava0_PowerOnTime)
  * Then ipmi to the host name rimava0m with ADMIN/ADMIN
    (or HostProp_rimava0_IpmiUser/HostProp_rimava0_IpmiPassword)
  * For power off, do that in reverse, only with a 10s pause.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agoPowerMethod: New pause functionality
Ian Jackson [Fri, 29 Jun 2018 16:32:16 +0000 (16:32 +0000)]
PowerMethod: New pause functionality

And, an abbreviation for invoking it: just writing numbers (or
<on>/<off> pair of numbers).

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoPowerMethod: New "nest" psuedo-method
Ian Jackson [Fri, 29 Jun 2018 16:29:45 +0000 (16:29 +0000)]
PowerMethod: New "nest" psuedo-method

If specified as the first method, it means to reverse the order when
powering off.

There don't seem to be any docs for PowerMethod, so I have not
documented this right now.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoPDU::ipmi: Better username/password configuration
Ian Jackson [Mon, 2 Jul 2018 15:46:20 +0000 (15:46 +0000)]
PDU::ipmi: Better username/password configuration

This can now come from host properties, or failing that we use
ADMIN/ADMIN which seems common.

No functional change with working existing configs.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agoPDU::ipmi: Do not return until the power state has changed
Ian Jackson [Fri, 29 Jun 2018 16:11:35 +0000 (16:11 +0000)]
PDU::ipmi: Do not return until the power state has changed

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agocrontabs: Run freebsd-master only three times per week
Ian Jackson [Wed, 27 Jun 2018 13:39:29 +0000 (14:39 +0100)]
crontabs: Run freebsd-master only three times per week

freebsd master seems to update very frequently and our tests are
pretty minimal.  Right now having a permanent freebsd build test going
is probably not a very good use of our resources.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Roger Pau Monné <roger.pau@citrix.com>
6 years agoosstest: move install of FreeBSD build deps to build-prep
Roger Pau Monne [Fri, 29 Jun 2018 06:58:57 +0000 (08:58 +0200)]
osstest: move install of FreeBSD build deps to build-prep

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoosstest: allow to treat host install errors as failures
Roger Pau Monne [Fri, 29 Jun 2018 06:58:57 +0000 (08:58 +0200)]
osstest: allow to treat host install errors as failures

And use it for the build-amd64-freebsd-again job, which should test
the new FreeBSD build produced by build-amd64-freebsd and a host
install error should be treated as a failure in order to trigger the
bisection.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoDebian preseed: Disable security archive for jessie arm64
Ian Jackson [Fri, 29 Jun 2018 11:15:35 +0000 (11:15 +0000)]
Debian preseed: Disable security archive for jessie arm64

jessie arm64 is out of security support, see
  https://wiki.debian.org/LTS
and the security archive at
  http://security.debian.org/dists/jessie/updates/main/binary-arm64
is gone.  This causes autoinstallation to fail.  We don't really care
much about the lack of security support, so override the set of `apt
services'.

I have tested that this can once again now install on arm64 on one of
the laxtons.  Because currently all arm64 tests are broken, and this
change affects only arm64, I will force push it right away.

CC: Julien Grall <julien.grall@linaro.org>
CC: Juergen Gross <jgross@suse.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoproduction-config: Update TftpDiVersion
Ian Jackson [Tue, 26 Jun 2018 14:25:09 +0000 (15:25 +0100)]
production-config: Update TftpDiVersion

In both places.  I have run
  ./mg-debian-installer-update-all jessie

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agocr-for-branches: Branch for Xen 4.11
Ian Jackson [Mon, 25 Jun 2018 13:59:41 +0000 (14:59 +0100)]
cr-for-branches: Branch for Xen 4.11

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agoosstest: use -DWITHOUT_AUTO_OBJ with FreeBSD release targets
Roger Pau Monne [Tue, 13 Feb 2018 12:40:30 +0000 (12:40 +0000)]
osstest: use -DWITHOUT_AUTO_OBJ with FreeBSD release targets

Due to a recent FreeBSD change the default output directory of the release
targets is changed to the object directory instead of the source
directory. Use WITHOUT_AUTO_OBJ to restore previous behavior. This is
harmless if used with previous versions, it will be ignored.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoosstest: expand the list of tested disk controllers
Roger Pau Monne [Tue, 13 Feb 2018 12:40:30 +0000 (12:40 +0000)]
osstest: expand the list of tested disk controllers

The Mass osstest instance has a more diverse list of hardware disk
controllers, so expand the list in order to include all the possible
disk drivers.

For the record, this list can be found at:

usr.sbin/bsdconfig/share/device.subr

In the FreeBSD source tree.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoosstest: remove the loader timeout from the install image
Roger Pau Monne [Tue, 13 Feb 2018 12:40:30 +0000 (12:40 +0000)]
osstest: remove the loader timeout from the install image

When the FreeBSD installer is booted on the godello{0/1} boxes it
receives spurious key strokes. This doesn't happen so far when booted
from disk, or with any other boxes.

In order to cope with this remove the loader timeout on the install
image. Note that failure to boot will still drop the loader into a
manual prompt.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoosstest: hook FreeBSD flight into cr-daily-branch
Roger Pau Monne [Wed, 13 Jun 2018 07:40:17 +0000 (09:40 +0200)]
osstest: hook FreeBSD flight into cr-daily-branch

Add the missing pieces so that cr-daily-branch knows how to create a
FreeBSD flight. This has been tested by calling `./cr-daily-branch
freebsd-master`.

Note that there are two missing pieces. The first one is correctly
setting the FREEBSD_<arch>_BUILDJOB environment variable when calling
make-freebsd-flight, without it the installer media will always be
picked from the configuration file. This requires keeping track of
previous FreeBSD successful build jobs, marking them as permanent and
fetching them from the database in order to pass them on the env
variable.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v8.1:  fix ap-fetch-version-old for the freebsd-* branch
       (The remote branch has been changed to tested/master or
       tested/stable/<version> instead of plain master or stable/11.)

Changes since v6:
 - Set the path to the FreeBSD git trees in this patch.
 - Push to tested/master or tested/stable/<version> instead of using
   the same branches as the origin tree.

Changes since v5:
 - Add support for testing multiple FreeBSD branches, default to
   branch master.

Changes since v3:
 - Fix the daily-cron-email-* settings for FreeBSD branch flights.

6 years agoosstest: introduce a script to create a FreeBSD flight
Roger Pau Monne [Wed, 13 Jun 2018 07:40:16 +0000 (09:40 +0200)]
osstest: introduce a script to create a FreeBSD flight

The logic to create a FreeBSD build job is added to
make-freebsd-flight. This includes creating a FreeBSD build job, and
also testing the output of that build job (by creating another build
job that depends on the output of the first).

Note that the FreeBSD build job needs some input in order to setup a
FreeBSD host, and that can be fetched from different places:

1. Env variable FREEBSD_<arch>_BUILDJOB: use the output from a
previous build-<arch>-freebsd job.

2. Env variables FREEBSD_DIST and FREEBSD_VERSION: set before calling
into make-flight, provide the path to the installer image and sets
folder and the version being installed.

3. Config file FreeBSDDist and FreeBSDVersion: same as 2. except that
they are set on the config file.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v6:
 - Re-wrap lines.
 - Remove the freebsd hostflag.
 - Do not set the FreeBSD git trees in this patch.
 - Set all_host_os runvar to freebsd for the FreeBSD build jobs.

Changes since v5:
 - Append the "freebsd" hostflag, the specific version will be set
   dynamically by the ts-freebsd-set-hostflags script.
 - Use FREEBSD_<arch>_BUILDJOB to set the freebsdbuildjob runvar.
 - Loop around arches, although only amd64 is supported ATM. This
   should make it easier to add more arches later on.
 - Expand README comment to describe the expected layout of the
   FreeBSD install media.

Changes since v4:
 - Convert get_freebsdjob_runvars into set_freebsd_runvars, mimic the
   behavior of set_hostos_runvars.

Changes since v3:
 - Split the sg-run-job code into pre-patches.

Changes since v1:
 - Replace freebsd_buildjob with freebsdbuildjob.
 - Replace FREEBSD_SETS/IMAGE with a single FREEBSD_DIST that points
   to a folder that should contain both things.
 - Document the FreeBSDDist and FreeBSDVersion config file options in
   the README file.

6 years agoosstest: add support for FreeBSD buildjobs to sg-run-job
Roger Pau Monne [Wed, 13 Jun 2018 07:40:16 +0000 (09:40 +0200)]
osstest: add support for FreeBSD buildjobs to sg-run-job

Add support and introduce a FreeBSD build job to sg-run-job.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v5:
 - Add a '+' to the arguments passed to ts-freebsd-set-hostflags, so
   they are hidden from testid.

Changes since v4:
 - Use a switch in allocate-build-host.

Changes since v3:
 - New in this version (split from existing patch).

6 years agoosstest: change the meaning of need_build_host
Roger Pau Monne [Wed, 13 Jun 2018 07:40:16 +0000 (09:40 +0200)]
osstest: change the meaning of need_build_host

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

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

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

Changes since v3:
 - New in this version (split from patch).

6 years agoosstest: add script to install build dependencies on FreeBSD
Roger Pau Monne [Wed, 13 Jun 2018 07:40:15 +0000 (09:40 +0200)]
osstest: add script to install build dependencies on FreeBSD

Since at the moment osstest only builds FreeBSD on FreeBSD, there are
no dependencies to install. Just mark the host as ready to share.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoosstest: introduce a script to set the runtime hostflags runvar for FreeBSD jobs
Roger Pau Monne [Wed, 13 Jun 2018 07:40:15 +0000 (09:40 +0200)]
osstest: introduce a script to set the runtime hostflags runvar for FreeBSD jobs

Due to the nature of the FreeBSD install media, which is
self-generated from the ts-freebsd-build script, the hostflags runvar
set to FreeBSD jobs are related to the current version under test.

The following hostflags might need to be fetched from the runvars of a
previous build-$arch-freebsd job:

 - share-build-freebsd-$arch-$hash: the $hash used here is calculated
   from the checksum of the installer image used by this specific job.
   This allows osstest to share FreeBSD build hosts, and be sure the
   exact desired FreeBSD version is used.
 - PropMinVer:Freebsd:$version: $version contains the major FreeBSD
   version under test. This version is obtained from the FreeBSD
   source code used to create the install media.

Note that the share-build-* hostflag is optional, and will only be set
for build jobs.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v5:
 - Fetch the host idents from the arguments, instead of assuming
   "host" always.
 - Set PropMinVer:Freebsd:<version> instead of freebsd-<version> to
   better cope with FreeBSD version bumps. This should only happen
   every ~2 years.

Changes since v4:
 - Make the share-build- flag optional.

Changes since v3:
 - Make use of the set_runtime_hostflag helper.
 - Make use of the sha256file helper.

Changes since v2:
 - New in this version.

6 years agoosstest: add support for runtime_IDENT_hostflags
Roger Pau Monne [Wed, 13 Jun 2018 07:40:15 +0000 (09:40 +0200)]
osstest: add support for runtime_IDENT_hostflags

This is required for FreeBSD, that will need to set some of the
hostflags at runtime. The current IDENT_hostflags will be keep as-is,
and they should only be set at job creation time.

Also introduce a helper to set the runtime hostflags.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v4:
 - Allow runtime flags to be appended instead of overwritten.

Changes since v3:
 - New in this version.

6 years agoosstest: introduce a FreeBSD build script
Roger Pau Monne [Wed, 13 Jun 2018 07:40:15 +0000 (09:40 +0200)]
osstest: introduce a FreeBSD build script

In order to generate the FreeBSD installer image and the install
media.

The install sets are the vanilla ones generated by the 'ftp' release
target.  The installer image is handcrafted based on the filesystem
created by the 'bootonly' target, which is then populated with the ssh
host keys, and setup in order to use the serial console. The other
difference from upstream FreeBSD installer images is that the one
built by osstest uses a ramdisk instead of relying on the installer
media to be somehow attached, either on a CD or USB drive. This is
required in order to boot the image from pxelinux (where no CD or USB
is actually attached to the host, and everything is fetched from
tftp).

Due to the nature of the FreeBSD build, the outputs are different from
what osstest expects from a buildjob, more specifically
path_freebsddist points to a folder that contains the several outputs
form this buildjob.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v4:
 - Remove some useless comments.
 - Use qw(git) instead of 'git'.
 - Replace unicode nonbreaking space.
 - Remove trail ','.
 - Improve the way to fetch the version number.

Changes since v3:
 - Introduce two helpers to perform the build process.
 - Install packages using target_install_packages.

Changes since v2:
 - Increase build target timeouts.
 - Use sysrc instead echo to set rc.conf options.

Changes since v1:
 - Remove the ts-build-check FreeBSD hack.
 - Use pkg-static instead of pkg.
 - Introduce buildcmd_stamped_logged_root and target_cmd_build_root.
 - Use target_cmd_build_root and buildcmd_stamped_logged_root in the
   ts-freebsd-build script.
 - Fix the script snippets to use <<END.<<'END' in order to avoid
   escaping the shell variables.
 - Set path_freebsddist runvar to point to the folder where the build
   files are stashed.
 - Add a comment at the top of the file describing what runvars are
   consumed/produced by the build script.

6 years agoosstest: add support for the FreeBSD package manager
Roger Pau Monne [Wed, 13 Jun 2018 07:40:14 +0000 (09:40 +0200)]
osstest: add support for the FreeBSD package manager

FreeBSD support is added to target_install_packages and
target_install_packages_norec, although there's no equivalent to the
--no-install-recommends in the FreeBSD package manager.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v19: Rework on top of target_run_pkgmanager_install

Changes since v6:
 - Use $ho->{Os} in order to detect the target OS.

Changes since v5:
 - Add prototype for package_install_cmd.
 - Use $ho->{Ident} instead of hardcoding "host" in get_hostflags.

Changes since v4:
 - Unify more code between FreeBSD and Debian: introduce an
   OS-agnostic package_install_cmd to generate the install cmd.

Changes since v3:
 - New in this version.

6 years agoTestSupport: Introduce target_run_pkgmanager_install
Ian Jackson [Thu, 21 Jun 2018 15:44:10 +0000 (16:44 +0100)]
TestSupport: Introduce target_run_pkgmanager_install

This replaces target_run_apt.  It takes more abstract options.  It
also constructs a @cmd, allowing more flexibility, and supports -f.

The use in ts-xen-install, when handling extradebs, is a bit anomalous
because of the empty package list, but it is an anomaly inherited from
apt (and this is an apt-specific context).

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agoosstest: introduce an OS $ho field
Roger Pau Monne [Wed, 13 Jun 2018 07:40:14 +0000 (09:40 +0200)]
osstest: introduce an OS $ho field

In order to differentiate between FreeBSD and Debian hosts.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v7:
 - s/Os/OS/.

Changes since v6:
 - New in this version

6 years agoosstest: add prototypes to target_install_packages{_norec}
Roger Pau Monne [Wed, 13 Jun 2018 07:40:14 +0000 (09:40 +0200)]
osstest: add prototypes to target_install_packages{_norec}

No functional change.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v5:
 - New in this version.

6 years agoosstest: introduce build helpers for FreeBSD
Roger Pau Monne [Wed, 13 Jun 2018 07:40:13 +0000 (09:40 +0200)]
osstest: introduce build helpers for FreeBSD

Some steps of the FreeBSD build process need to be done as root, so
introduce some helpers to perform those steps:
buildcmd_stamped_logged_root and target_cmd_build_root. They behave
exactly the same as the non-root counterparts.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v3:
 - New in this version.

6 years agoosstest: introduce host_shared_mark_ready
Roger Pau Monne [Wed, 13 Jun 2018 07:40:13 +0000 (09:40 +0200)]
osstest: introduce host_shared_mark_ready

That allows marking a host as ready to be shared. Replace the current
callers that open-code it.

This commit also fixes a bug where Ident was used instead of 'host' as
resource.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v4:
 - New in this version.

6 years agoosstest: add executive prefix to resource_shared_mark_ready
Roger Pau Monne [Wed, 13 Jun 2018 07:40:13 +0000 (09:40 +0200)]
osstest: add executive prefix to resource_shared_mark_ready

This is a non-functional change in preparation for introducing a
resource_shared_mark_ready in TestSupport.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
Changes since v4:
 - New in this version.

6 years agoosstest: move known_hosts generation to TestSupport
Roger Pau Monne [Wed, 13 Jun 2018 07:40:12 +0000 (09:40 +0200)]
osstest: move known_hosts generation to TestSupport

This is equivalent to the already existing authorized_keys function,
and generates the contents of the known_hosts file that should be
installed on targets.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agoosstest: make built_stash_file store a path_ runvar for each file
Roger Pau Monne [Wed, 13 Jun 2018 07:40:12 +0000 (09:40 +0200)]
osstest: make built_stash_file store a path_ runvar for each file

And introduce built_stash_debugfile in order the keep the previous
behavior of built_stash_file.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agocr-daily-branch, cr-publish-flight-logs: Tolerate failure to push harness
Ian Jackson [Wed, 13 Jun 2018 13:50:13 +0000 (14:50 +0100)]
cr-daily-branch, cr-publish-flight-logs: Tolerate failure to push harness

Provide cr-publish-flight-logs --push-harness-try, which attempts the
push but doesn't mind if it fails.

If we are not --real, tolerate failure to publish the flight logs.

Also, honour OSSTEST_PUSH_HARNESS which might contain '' or
--push-harness or --push-harness-try.

CC: Roger Pau Monné <roger.pau@citrix.com>
Tested-by: Roger Pau Monné <roger.pau@citrix.com>
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agosg-execute-flight: make nqueued be right
Ian Jackson [Tue, 12 Jun 2018 16:10:21 +0000 (17:10 +0100)]
sg-execute-flight: make nqueued be right

LIMIT 1 means it's either 0 or 1.  It would be nicer for the
transcript to show the real value.  For logic purposes, it's only ever
tested for zero, so no functional change except to messages.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agodm restrict audit: Document future plans
Ian Jackson [Tue, 12 Jun 2018 12:40:56 +0000 (13:40 +0100)]
dm restrict audit: Document future plans

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agodm restrict audit: Run ts-depriv-audit-qemu
Ian Jackson [Thu, 7 Jun 2018 16:02:40 +0000 (17:02 +0100)]
dm restrict audit: Run ts-depriv-audit-qemu

Add the new steps to jobs where the `recipe_dmrestrict' runvars is
set, and set that flag on the relevant job.

We introduce the new recipe-flag proc in sg-run-job to make this
more convenient.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agodm restrict audit: Provide auditing script
Ian Jackson [Tue, 12 Jun 2018 12:24:21 +0000 (13:24 +0100)]
dm restrict audit: Provide auditing script

ts-depriv-audit-qemu knows how to create a domain paused, and audit
its fds.  It uses
  * osstest-depriv-fd-collector, an on-test-host helper script
  * fishdescriptor, a new utility program in chiark-scripts
  * depriv-fd-checker, a new test program in xen.git

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agodm restrict audit: install newer chiark-scripts for fishdescriptor
Ian Jackson [Thu, 7 Jun 2018 15:57:32 +0000 (16:57 +0100)]
dm restrict audit: install newer chiark-scripts for fishdescriptor

fishdescriptor is not in stretch or earlier.  It will be in buster,
and we expect that a suitable version will be available in
stretch-backports soon.

For jessie, use DebianExtraPackages to install the .deb from buster
(which is directly installable on jessie).

Deployment note: I have already copied the .deb to the images
directories in Massachusetts and Cambridge.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agotoolstack: Provide guest_unpause
Ian Jackson [Tue, 29 May 2018 17:56:50 +0000 (18:56 +0100)]
toolstack: Provide guest_unpause

Only for xl (and xm) for now.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agotoolstack: Provide guest_create_paused
Ian Jackson [Tue, 29 May 2018 17:56:05 +0000 (18:56 +0100)]
toolstack: Provide guest_create_paused

Only for xl (and xm) for now.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agots-xen-install: Honour DebianExtraPackages_<suite>
Ian Jackson [Tue, 12 Jun 2018 11:27:03 +0000 (12:27 +0100)]
ts-xen-install: Honour DebianExtraPackages_<suite>

This allows us to specify some packages to install regardless of
firmware and architecture.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agomake-flight: Add a single test with restricted dm
Ian Jackson [Wed, 30 May 2018 16:11:46 +0000 (17:11 +0100)]
make-flight: Add a single test with restricted dm

As of this commit, this test is only functional: we don't do any
auditing yet.

Right now save/restore migration is broken with restricted dm, so
disable that test with the recipe flag.  See
  sg-run-job: Allow flight to specify recipe flag to disable migr tests

Run this only on recent enough Xen: the dm_restrict option was added
as an experimental feature in Xen 4.10 (currently as yet unreleased).
(With older libxl/xl, the option would be ignored and the test would
be a waste of time.)

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agomore_prepareguest_hvm: Honour guest runvar dmrestrict
Ian Jackson [Wed, 30 May 2018 16:06:30 +0000 (17:06 +0100)]
more_prepareguest_hvm: Honour guest runvar dmrestrict

Currently nothing sets this.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agots-xen-install: Create xen-qemuuser-range-base
Ian Jackson [Wed, 30 May 2018 16:03:06 +0000 (17:03 +0100)]
ts-xen-install: Create xen-qemuuser-range-base

It is fine to do in all jobs.  libxl will only use this if we ask it
to.

We do need to check whether the user exists already, since adduser
does not seem to have a mode which exits zero in that case.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agosg-run-job: Allow flight to specify recipe flag to disable migr tests
Ian Jackson [Mon, 11 Jun 2018 13:09:35 +0000 (14:09 +0100)]
sg-run-job: Allow flight to specify recipe flag to disable migr tests

We want this because there is no sensible way to probe whether a
restricted qemu can cope with save/restore or migration.  So we will
want to disable it in flight construction (depending on Xen version,
eventually).

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agosg-run-job: Provide new recipe-flag facility
Ian Jackson [Tue, 12 Jun 2018 12:17:19 +0000 (13:17 +0100)]
sg-run-job: Provide new recipe-flag facility

Individual recipes can now honour modifications requested by setting
runvars like recipe_<flag>.

No callers yet so no functional change.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
6 years agoMerge remote-tracking branch 'iwj/master' into wip
Ian Jackson [Tue, 12 Jun 2018 17:52:21 +0000 (18:52 +0100)]
Merge remote-tracking branch 'iwj/master' into wip

6 years agocs-bisection-step: Do explicitly set runvar for suppressed recursion
Ian Jackson [Tue, 12 Jun 2018 15:56:29 +0000 (15:56 +0000)]
cs-bisection-step: Do explicitly set runvar for suppressed recursion

When we detect that we are considering a job which is identically
named to one earlier in the dependency chain, it could happen that the
final referencing runvar in the job at which we break the cycle is
actually to an unqualified job name.

(This cannot happen unless the cycle has more than 2 jobs, and
therefore more than one job name, because otherwise the job we would
be copying would have a self-reference.  So it cannot occur right
now.)

So when breaking the cycle, we should update the job we are building
to refer to the exact flight and job we want it to reuse.

The most convenient way to do this is to reorganise the new recursion
suppression code: we retain the suppressed entries in $subjobs, and
filter them as appropriate.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agocs-bisection-step: Handle build job chains
Ian Jackson [Tue, 12 Jun 2018 15:22:38 +0000 (15:22 +0000)]
cs-bisection-step: Handle build job chains

cs-bisection-step assumes that every job it will need to create has a
unique name.  Indeed, in general, it is probably not reasonable to
expect it to work if that is not the case.

build-amd64-freebsd needs a previous build-amd64-freebsd.

Currently cs-bisection-step confuses itself into writing a flight
where build-amd64-freebsd uses itself as its freebsdbuildjob.
This naturally does not work very well.

I think the right approach is for cs-bisection-step to spot when it
its recursion through the jobs, via *job runvars, would descend into a
job name which it was already encoutered earlier in the dependency
chain, and, when that occurs, to simply skip regenerating that deeper
copy of the job.

That is achieved here by filtering the subjob out of the list, before
we go looking for jobs to reuse.  As a result, not only will no new
job be created, but the original deeper job will be reused because the
runvar value will not be updated.

FTR, the circular dependency produces this error from sg-execute-flight:

  wait for process failed: no children
      while executing
  "wait -nohang"
      (procedure "main_iteration" line 14)
      invoked from within
  "main_iteration"
      (procedure "main" line 8)
      invoked from within
  "main"
      (file "./sg-execute-flight" line 238)

This is because sg-execute-flight's algorithm assumes that if there
are no jobs running there must be some job whose dependencies are done.
That is true if the job graph has no cycles.

Improving the error message from sg-execute-flight is left as an
exercise for the future.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agocs-bisection-step: Refactor $subjobs calculations a bit
Ian Jackson [Tue, 12 Jun 2018 15:20:09 +0000 (15:20 +0000)]
cs-bisection-step: Refactor $subjobs calculations a bit

Parse the runvar name earlier, adding job and orgflight members to the
row hashes we got from the db.  This slightly unifies the call to
preparejob, but more relevantly, makes the effective job and flight
information available earlier.  That will be useful in a moment.

No functional change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agocs-bisection-step: Improve a message
Ian Jackson [Tue, 12 Jun 2018 15:18:27 +0000 (15:18 +0000)]
cs-bisection-step: Improve a message

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
6 years agodb_retry: Honour new OSSTEST_DB_ALWAYS_ABORT variable
Ian Jackson [Tue, 12 Jun 2018 15:18:00 +0000 (15:18 +0000)]
db_retry: Honour new OSSTEST_DB_ALWAYS_ABORT variable

This is useful for debugging.

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