lp:ubuntu/utopic/autopkgtest

Created by Ubuntu Package Importer and last modified
Get this branch:
bzr branch lp:ubuntu/utopic/autopkgtest
Members of Ubuntu branches can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Ubuntu branches
Status:
Mature

Recent revisions

111. By Martin Pitt

Cherry-pick from upstream git:
* adt-virt-ssh: Rewrite adt-ssh-wrapper to not call the readlink command on
  every single /proc/*/fd/*. This is too slow on devices like Ubuntu Touch,
  where it adds an extra ~ 5 seconds to every command.
* ssh-setup/adb: Drop --rw and --apt-update options. They stopped working
  when adb switched to running as user, and can be done with
  --setup-commands.

110. By Martin Pitt

[ Antonio Terceiro ]
* README.package-tests.rst: Make references to the control field consistent.

[ Martin Pitt ]
* When parsing .changes files, always register the debs before the dscs and
  stop assuming Files: having this order already. (Closes: #764795)
* Drop the builtin synthesis of Perl/Ruby tests and use autodep8 instead.
  Update the spec accordingly, and add a Recommends: autodep8.
  (Closes: #763847)
* adt-build-lxc: Implement LXC cache cleanup for btrfs by removing the image
  snapshots instead of rm -r'ing the cache dir, as the latter will fail.
* adt-setup-vm: Fix missing hashbang of generated /etc/init.d/autopkgtest.
  (Regression from 3.5.5)

109. By Martin Pitt

* adt-virt-ssh: Be more liberal when parsing the setup script's
  capabilities, accept spaces and commas.
* adt-virt-ssh: Refactor code so that setup script's "revert" commands can
  update/refresh the ssh config. Often revert translates to close and
  re-open, which changes the IP. Update manpage and ssh-setup/SKELETON
  accordingly.
* ssh-setup/nova: Make parsing commands work with mawk too, to avoid
  depending on gawk.
* ssh-setup/nova: Implement a simple revert by a simple teardown/providing a
  new instance. (This might become more efficient in the future with using
  snapshots.)
* adt-buildvm-ubuntu-cloud: Put vmalloc kernel commandline config into
  separate grub.d/ directory, to avoid subsequent cloud-init invocations
  overwriting it.
* tools/adt-setup-vm: Add setup steps that adt-buildvm-ubuntu-cloud does, so
  that vmdebootstrap generated VMs are functionally on par with the Ubuntu
  cloud images: Set up serial console, dpkg unsafe-io, install some
  additional packages, remove unnecessary packages, bump vmalloc on i386.
* adt-buildvm-ubuntu-cloud: Remove most of the setup steps from user-data,
  and call adt-setup-vm instead. This keeps the knowledge of how to set up
  VM testbeds in one single place.

108. By Martin Pitt

adt-run fixes:
* Make apt-get source calls again show what's being downloaded, but not all
  the other noise around it.
* Avoid copying down the tests tree into the testbed if it already exists
  there. This is the common case for the first test in unbuilt trees, and
  avoids one round of expensive large copying for the ssh and qemu runners.
* Fix relative --override-control paths: They should not be relative to the
  source dir but relative to the current dir where adt-run is called.

ssh-setup/nova fixes:
* Add -N/--net-id argument for OpenStack deployments which require setting
  an explicit --nic net-id.
* Stop using nova boot's --file option, it does not work any more (see
  LP#1376176); use --user-data instead. Also set some go-faster apt options.
* Wait until ssh is available and cloud-init is done.
* Stop making --keyname mandatory. If not given, use the first one from
  "nova keypair-list".
* Fix crash if ~/.ssh/known_hosts does not exist.

ssh-setup/adb fixes:
* Drop the sudo'ing for unlocking the screen. It stopped working and is not
  necessary, now that we don't have images with adb running as root any
  more.
* Fix unity8 restart after disabling first-time wizard to work on current
  Ubuntu Touch images.
* Wait until com.canonical.UnityGreeter becomes available. This is a better
  way to wait for the desktop to be started up, and also reliably unlocks
  the greeter.
* During revert, don't fail if there are no configured networks.
* Add -b/--reboot option to reboot the device before running the test.
* Disable --reset option for now; it is broken as it does not restore the
  password and developer mode. Point towards using --reboot, which should be
  good enough for most cases in r/o mode.

adt-virt-ssh fixes:
* Implement reboot.
* Tests or builds sometimes leak background processes which might still be
  connected to ssh's stdout/err; create and use a wrapper script that kills
  these after the main program (build or test script) finishes, otherwise we
  get eternal hangs as ssh waits until nothing is connected to its tty any
  more.

Other fixes:
* adt-buildvm-ubuntu-cloud: Purge more unnecessary packages.

107. By Martin Pitt

* ssh-setup/adb: Use the new "phablet-config network" to save/restore wifi
  connections, which also works with non-root adb.
* Give adt-run's tee processes some time to catch up between printing
  results and stderr, to avoid scrambled logs. (LP: #1373441)
* Fix NullRunner.test_timeout_no_output for older Python versions.
* tests/pyflakes: Skip test if pyflakes3 is not available (for backports).
* Bump Standards version to 3.9.6 (no changes necessary).
* NullRunner.test_timeout_no_output: Slightly relax time bound to make
  failures less likely on loaded/slow machines.
* Install clicks with --allow-unauthenticated to support local developer
  generated packages. (LP: #1372640)

106. By Martin Pitt

[ Martin Pitt ]
* Make apt-get source and package unpack output a bit less verbose.
* Avoid "grep: debian/tests/control: No such file or directory" warning for
  packages with implicit test control. (Closes: #762009)
* Adjust "unpack into temp dir" mode for multi-archified typelib locations
  introduced in gobject-introspection 1.41.4-1.

[ Niko Tyni ]
* Test perl packages that include test.pl, not just t/. (Closes: #762013)

105. By Martin Pitt

* Fix apt cleanup to remove configuration files before apt-get update.
* When using local binaries, tell apt-get to only download our
  autopkgtest.list, not all apt lists again.
* Move autopkgtest gpg directory from ~/.autopkgtest/gpg to
  ~/.cache/autopkgtest/. Check the former location for backwards
  compatiblity.
* Invoke gpg with --no-random-seed-file to avoid VCS noise when using
  tests/home/.
* run-from-checkout: Use --gnupg-home with our tests/home to avoid GPG key
  generation.
* adt-run: Defer GPG key creation until binary publishing time. This avoids
  key creation entirely for the common case of not using any local or built
  binaries.
* tests: Use apt-doc instead of cpp-doc, as the latter is in Debian contrib
  only. (Closes: #761417)
* When determining whether a testbed reset is necessary in between tests,
  also consider if recommends were/will be installed. (Closes: #761420)
* README.package-tests.rst: Packages with implicit test control (ruby/perl)
  should use a different Testsuite: value, namely
  autopkgtest-pkg-{ruby,perl}, to avoid breaking compatibility with the
  specification and to other implementations like sadt.
* autopkgtest-reboot: Switch from SIGPIPE to SIGKILL, as that is much more
  reliable.
* Reorganize NullRunner tests so that most run also as normal user (and
  hence during package build); only keep four tests in NullRunnerRoot which
  actually do need root privileges.
* Improve NullRunner.test_timeout_no_output test case to ensure that the
  test is properly killed after timing out.
* Fix invocation of tests so that they retain the default SIGINT handler.
  This changes cleanup after a timeout, add new procps dependency for this.
  (Closes: #761596)

104. By Martin Pitt

Improvements:
* VirtSubProc.cmd_reboot(): Save/restore downtmp instead of creating a new
  one. This is more useful for reboot scenarios within tests.
* Support tests that want to reboot the testbed (for runners which support
  rebooting). Document this in doc/README.package-tests.rst.
* tests/testdesc: Add test case for Debian packages without a test control.
* If there is no Debian test control file, synthesize one for Ruby and Perl
  packages, using gem2deb-test-runner and pkg-perl-autopkgtest. Thanks to
  Antonio Terceiro!
* ssh-setup/adb: Unlock the greeter before running tests.

Bug fixes:
* qemu: Reconfigure tzdata after copying /etc/timezone, to make that change
  actually active.
* qemu: Wait an additional 3 seconds after the login prompt appears on
  ttyS0. Without that, the system time is wrong, causing bad file
  timestamps. Unfortunately polling runlevel or the "hwclock" status file
  doesn't help.
* Always keep the same downtmp even after resetting the testbed. Some built
  trees/tests use absolute path names and break when being moved around
  after a reset. This already worked in most cases by accident due to a bug,
  but now clean up the code to be explicit about it.
* Expand '@' to quasi-versioned (>= 0~) dependencies to avoid satisfying
  them by virtual packages. (Closes: #761003)
* Ensure that the build tree is world-readable. Fixes permission error when
  running adt-run as non-root with a different --user and a tight umask.
  (Closes: #761049)
* lxc: Ensure the container root directory is accessible to non-root users.
  Works around lxc-start-ephemeral bug with tight umasks.
  (https://launchpad.net/bugs/1367730)
* lxc: Fix lxc-clone option (--new, not --name).

103. By Martin Pitt

* adt-buildvm-ubuntu-cloud: Use host's http[s] proxy in the VM, rewriting
  localhost addresses accordingly.
* qemu: Accept any runlevel between 2 and 5 as "booted", to also work with
  systemd. (Closes: #760060)
* adt-run: Read built tree changelogs with UTF-8 encoding. (Closes: #759752)
* adt-virt-lxc: Source /etc/profile as well, to get $PATH in Debian
  environments.

102. By Martin Pitt

* Produce a summary file by default when --output-dir is given.
* ssh-setup/adb: Add missing $ADBOPTS for reverting to factory state.
* Add support for retrieving a click source from bzr (from the manifest's
  x-source/vcs-bzr key) if --click-source is not given.
* ssh-setup/adb: Use SystemImage D-BUS call for factory reset instead of
  direct recovery commands, to also work as user.
* ssh-setup/adb: Add --password/-p option to specify a different sudo
  password than "phablet".
* adt-run: Fix $USER in tests if testbed does not have root.
* adt-run: Source shell profiles if testbed does not have root. Fixes
  running click tests on Ubuntu Touch without a sudo password.
* ssh-setup/adb: Try common sudo passwords for CI ("phablet" and "0000"); if
  those do not work, and none is specified with --password, tests cannot run
  as root (which should be fine for most cases).
* ssh-setup/adb: Stop using system-image-cli to detect an Ubuntu phone, as
  that does not work as user. Check for unity8 instead, like in other parts
  of the code.
* ssh-setup/adb: Fix cleaning up of first-time wizard for non-root adb.

Branch metadata

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

Subscribers