Add a way to collect test artifacts from the testbed

Bug #1137763 reported by Jean-Baptiste Lallement
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
autopkgtest (Ubuntu)
Fix Released
Medium
Martin Pitt

Bug Description

Some tests generate test artifacts that must be available after the run. This is the case for example of jUnit test results that are then published to a third party tool.

This artifacts are created inside the testbed but not copied outside and they are definitely lost because the testbed is destroyed after the run.

adt should provide either:
- a standard location to write test artifacts which would be copied outside of the testbed (in $OUTPUT-DIR for example)
- or a generic option to specify a directory or a list of files to copy from the testbed to the host at the end of the run.

Related branches

summary: - Add a way to collect test artifact from the testbed
+ Add a way to collect test artifacts from the testbed
Changed in autopkgtest (Ubuntu):
importance: Undecided → Medium
Martin Pitt (pitti)
Changed in autopkgtest (Ubuntu):
status: New → Triaged
Martin Pitt (pitti)
Changed in autopkgtest (Ubuntu):
status: Triaged → In Progress
assignee: nobody → Martin Pitt (pitti)
Martin Pitt (pitti)
Changed in autopkgtest (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.6 KiB)

This bug was fixed in the package autopkgtest - 2.5

---------------
autopkgtest (2.5) unstable; urgency=low

  Behaviour changes:
  * Drop --output-dir option. It has never really been useful as it only works
    for paths in the testbed, has a confusing semantics, is redundant with
    --tmp-dir, and currently even crashes adt-run. (Closes: #729790)
  * Rename --tmp-dir option to --output-dir, as its main purpose is really to
    collect test artifacts. Keep --tmp-dir alias for backwards compatibility.
  * Drop --override-control option. It complicates the code too much for its
    very limited utility, and it was not even documented in the manpage.
  * Drop --paths-testbed (and thus also --paths-host) options. There is no
    use case for them.
  * Add short options for common command line options: -B for
    --no-built-binaries, -o for --output-dir, -l for --log-file,
    -u for --user.
  * Clean up uninteresting files from --output-dir directory.
  * Tests which want to create additional artifacts can now put them into the
    $ADT_ARTIFACTS directory. When using the --output-dir option, they will be
    copied into <outputdir>/artifacts/. Document this new feature in
    README.package-tests. (LP: #1137763)

  Packaging changes:
  * Drop obsolete autodebtest Conflicts/Replaces.
  * Update copyright years.
  * Bump Standards-Version to 3.9.5. No changes necessary.
  * CREDITS: Add myself.
  * Makefile: Support $DESTDIR, like automake.
  * Adjust sharedir* defaults in settings.make to what we actually want, and
    drop their overrides in debian/rules
  * Move debian/rules to using dh.
  * Add ./run-from-checkout script to run adt-run from the git checkout or
    source package. Change tests/adt-run to use it.
  * Add tests/run-parallel to run tests for different runners in parallel.

  Bug fixes:
  * Fix OSError crash if --output-dir/--tmp-dir does not exist.
    (Closes: #729791)
  * Pass line number to Test constructor argument, to be able to report proper
    errors instead of crashing. (side issue in #698551)
  * Fix exit code for "Unsupported" error.
  * When encountering an unsupported test, report only this test as skipped,
    not all the others in the same "Tests:" stanza.
  * README.package-tests: Test names must not contain '/'. (Closes: #698551)
  * Create manpage for adt-virt-schroot. (first half of #695974)
  * Fix "su: must be run from a terminal" failure when running as user and
    testbed doesn't provide root-on-testbed. (Closes: #648148)
  * Add bandaid to avoid mixing order of stdout and stderr in the log file
    when reporting results.

  Code cleanup:
  * Simplify logging by dropping the explicit functions for writing to stderr
    plus log, and instead set up pipes so that the whole stdout/stderr will be
    tee'd into the logfile.
  * Replace the usage of the AutoFile classes (which are underdocumented,
    magic, and hard to understand) with a more explicit and much simpler
    TestbedPath class.
  * Stop installing the redundant /etc/apt/apt.conf.d/90autopkgtest into
    testbeds, and simplify invocation of apt-get.

  New test cases:
  * Access /dev/std{out,err} in a non-root test, like the "mafft" autopkgtes...

Read more...

Changed in autopkgtest (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.