Created by Ubuntu Package Importer on 2015-05-26 and last modified on 2015-10-21
Get this branch:
bzr branch lp:ubuntu/wily-proposed/autopkgtest
Members of Ubuntu branches can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Ubuntu branches
Review team:
Ubuntu Development Team

Recent revisions

152. By Martin Pitt on 2015-10-21

* Fix --apt-pocket for apt sources with [options].
* Add tests/testarchive.py module for creating dynamic archives of mock
  debs, and add a full integration test for --apt-pocket.
* Fix version in adt-run output (@version@ moved to adt_testbed.py).
* adt-setup-vm, cloud-vm-setup: Purge lxc/lxd.
* tests/testdesc: Skip Debian.test_builddeps_profiles test if dpkg is too
  old to support build profiles.

151. By Martin Pitt on 2015-10-06

* Set DEB_BUILD_OPTIONS=parallel=<#cpu> for builds and tests (as they
  sometimes build packages). (LP: #1399177)
* If copying up files/artifacts through shared dir fails because of
  inaccessible files, fall back to piping them through the auxverb.
* adt-build-lxc: Install dbus; a lot of software indirectly expects it
  (e. g. calling systemctl as user).
* tools/adt-setup-vm, setup-commands/cloud-vm-setup: Purge
  libcpan-changes-perl, it breaks some Perl autopkgtests.
* tools/adt-setup-vm, setup-commands/cloud-vm-setup: Purge git, it breaks
  Ruby's autopkgtests.
* NullRunner.test_tmp_install: Explicitly require Json 1.0 GI version, to
  silence warning with current pygobject.

150. By Martin Pitt on 2015-09-20

* ssh-setup/nova: Use instance UUIDs instead of names after initial "nova
  boot", to avoid name collisions. (LP: #1495788)
* adt-setup-vm: Drop "pin eth0 name" hack, this was fixed properly in
  systemd 226-2.
* adt-setup-vm: Generalize ethernet ifupdown setup for net.ifnames.
* adt_binaries.py: Fix resetting of testbed (regression in 3.17).

149. By Martin Pitt on 2015-09-15

* Add new private python modules to Makefile, to actually ship them.
* tests/adt-run: Fix test regression when $ADT_TEST* are not set.

148. By Martin Pitt on 2015-09-14

* setup-commands/cloud-vm-setup: Provide fallback for Ubuntu 12.04 which
  does not yet have /etc/default/grub.cfg.d/.
* adt-virt-ssh: Add --timeout-ssh option. Thanks Leo Arias for the initial
  patch. (LP: #1488358)
* adt-run: Add --env option to pass arbitrary environment variables to the
* adt-virt-lxc: In the auxverb, clean up leaked background processes which
  share the same stdout/stderr, to avoid eternal hangs. (LP: #1488359)
* Move Testbed class and related logic into separate module
  lib/adt_testbed.py, and clean up some unnecessary code interdependencies
  and error handling. This will make it easier to write alternative CLI
  frontents. This also handles test timeouts in a better way: There now is a
  proper "summary" report as "FAIL timed out", and subsequent tests will now
  run. (Closes: #741322)
* Drop the --leave-lang option. Please use the explicit option --set-lang
  instead, to avoid weakly defined behaviour.
* Move Binaries class into separate module lib/adt_binaries.py.
* Testbed.execute(): Explicitly decode output of programs as UTF-8, instead
  of relying on the host locale's encoding.
* tools/adt-setup-vm: Only configure eth0 in ifupdown if it actually exists,
  and then make sure it does not get renamed any more.
* Add @builddeps@ build profile parsing fallback for libdpkg-perl < 1.04;
  just ignore all build profiles.
* ssh-setup/nova: Add workaroud for cloud-init bug writing a wrong
  /etc/hosts. (LP #1494678)
* adt-run: Log running kernel after each boot. (part of LP #1491865)
* Track initial kernel version after test bed setup and when a test/reboot
  changes the running kernel version. Log these, and create a new
  "testinfo.json" in the output dir with this information. (LP: #1491865)
* If --env options are specified, add these as list of name=value strings as
  "custom_environment" key to testinfo.json.
* Put vserver arguments into testinfo.json.

147. By Martin Pitt on 2015-08-27

* adt-setup-vm: Use /etc/cloud.cfg.d/ to avoid conffile prompts on upgrades.
  (LP: #1477626)
* Don't invoke QEMU with -localtime. QEMU defaults to and Linux prefers the
  hw clock in UTC. This avoids large time jumps when doing NTP.
* adt-setup-vm: Start autopkgtest shell after all other SysV init
  scripts/facilities, to avoid a too early start of tests while boot is
  still in progress.
* doc/README.package-tests.rst: Use comma separator in examples.
* VirtSubproc.check_exec(): Actually error out on stderr as documented.
* adt-virt-ssh: Verify that sudo does not write errors, as that
  interferes with auxverbs and generally is a sign of host mis-configuration
  (typically wrong hostname).
* ssh-setup-nova: Set hostname to "adt". This avoids overly long host names
  from defaulting to nova instance names (which can be very long).
* ssh-setup/nova: Fix parsing of IP address from "nova show" to avoid
  tripping over instance names containing "network". (LP: #1481574)
* Fix error message and code for "invalid test depends" errors.
* tests/pep8: Ignore E402 ("module level import not at top of file"), as
  that's impossible to satisfy; we have to set sys.path before.
* ssh-setup/nova: In cleanup(), wait until the instance gets deleted. This
  avoids name collisions and instance quota overflow.
* adt-run: Always show summary at the end, which is particularly helpful for
  multiple tests. (LP: #1484991)
* adt-run.1: Clarify that without any logging options adt-run only logs to
  stderr. (LP: #1485661)
* adt-virt-lxc: If the executed command exits with 255, translate that to
  253 in the auxverb wrapper, as 255 is the exit code for failures of the
  auxverb itself. This avoids considering ordinary test failures as
  temporary testbed failures.
* adt-run: Show host name, to more easily identify hosts with frequent
* adt-virt-lxc: Always call lxc-stop with --kill, as the containers are not
  precious and normal shutdown might hang.
* adt-virt-lxc: In cleanup, stop LXC container before removing the shared
  downtmp, to ensure that we always clean up the running container. Also
  don't fail on errors. (LP: #1488879)
* ssh-setup/nova: Add missing apt sources for -updates/-security
  restricted/multiverse pockets.

146. By Martin Pitt on 2015-07-17

* Exit with code 4 ("test failure") if a test times out, instead of 16
  ("testbed failure").
* Exit with code 12 ("erroneous package") if test dependencies are
  unsatisfiable and put badpkg/blame into summary, instead of exiting with
  code 20 ("other unexpected failures including bad usage").
* Exit with code 12 ("erroneous package") and a proper error message if
  debian/tests/<testname> does not exist, instead of code 20 and a confusing
  message about chmod failing and *-stderr missing.
* Exit with code 12 ("erroneous package") instead of 20 if test dependency
  package install fails.
* adt-virt-ssh: If the executed command exits with 255, translate that to
  253 in the auxverb wrapper, as 255 is ssh's (and auxverb's) exit code if
  something with the connection failed. This avoids considering ordinary
  test failures as temporary testbed failures. (LP: #1475679)

145. By Martin Pitt on 2015-07-17

* setup-commands/cloud-vm-setup: Fix installation of linux-generic on
* ssh-setup/nova: Clean up userdata temp file on failed nova boot.
* If the test fails with exit code 127 (usually "command not found"),
  consider this a test failure (code 4), not a testbed failure (code 16).
* doc/README.package-tests.rst: Document that "Tests:" and similar fields
  can be comma separated too, like everywhere else in Debian's control
* ssh-setup/nova: Show name of created nova instance, so that it's easier to
  map instances to a test.
* run-from-checkout: Exec adt-run to avoid keeping the shell wrapper process
* ssh-setup/snappy: Fix check whether --image and --channel are specified
  together. (LP: #1474735)
* ssh-setup/nova: Allow selecting net IDs by name.

144. By Martin Pitt on 2015-07-10

Behaviour changes and improvements:
* ssh-setup/nova: Re-try nova boot up to three times if it fails, and sleep
  5 minutes in between. This occasionally fails due to exceeding quota or
  temporary glitches.
* Drop gpg-signing local archive and mark it as [trusted=yes] instead. This
  gets rid of the requirement to generate a gpg key on first run. Drop
  corresponding --gnupg-home option. (LP: #1472691)
* Drop long-obsolete --tmp-dir backwards compat option.
* ssh-setup/snappy: Adjust ubuntu-device-flash arguments to new
  release/channel structure from Ubuntu 15.10, and default to rolling/edge.
  Add new --release option.

Bug fixes:
* ssh-setup/nova: Silence "invalid command wait-reboot" warning.
* setup-commands/cloud-vm-setup: Purge cloud-init too. It sometimes causes
  longer hangs on boot and might interfere with tests in other ways, and we
  only need it for first-time initialization anyway.
* adt-virt-qemu: adt-buildvm-ubuntu-cloud: Don't use -enable-kvm QEMU option
  if /dev/kvm does not exist. (Closes: #790650)
* Quiesce warnings from tar. Avoids "time stamp is in the future" log spew.
  (LP: #1468868)
* Move apt sources setup from setup-commands/cloud-vm-setup to
  ssh-setup/nova. --apt-pocket does not work with the former as that runs
  too late.
* Use Dpkg::Deps to evaluate/reduce build dependencies for expanding
  "@builddeps@". This handles build profiles. (Closes: #787093)
* Resolve build profiles when installing build dependencies to build tested
* Adjust NullRunner.test_tmp_install_perl test case to use
  libtest-requires-perl instead of libtest-tester-perl; the latter got
  removed from Debian.

143. By Martin Pitt on 2015-06-29

* adt-buildvm-ubuntu-cloud: Fix lsb_release fallback if python3-distro-info
  is not available.
* adt-buildvm-ubuntu-cloud: Don't move the uninitialized image to final
  location if QEMU failed.
* adt-buildvm-ubuntu-cloud: Check availability of genisoimage and access of
  /dev/kvm before downloading image. (LP: #1466486)
* Get along with dpkg-query not existing, such as in latest Ubuntu Snappy
  images. Skip generation of testbed-packages artifact in that case.
  (LP: #1469647)
* Adjust NullRunner.test_tmp_install test case to work with pygobject 3.16.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
This branch contains Public information 
Everyone can see this information.