Autotest 0.14.0 is a new major release of autotest! The goal here is to
provide the latest advances on autotest while providing a stable ground
for groups and organizations looking for autotest, such as distro
packagers and newcomers.

For the impatient
-----------------

Download autotest here

https://github.com/autotest/autotest/downloads

Or pick the tarballs automatically generated by github here:

https://github.com/autotest/autotest/tarball/0.14.0

Changes
-------

API cleanup
-----------

Autotest 0.14.0 brings major new API changes over the previous 0.13.X
series.
For a long time, we wanted to clean up the API namespace of unneeded
_lib
prefixes to the autotest libraries. The main changes made were:

* No more autotest/client/bin dir, so no more autotest_lib.client.bin
namespace.
   Now all the main libs and entry points are at the top level client.
* API: autotest_lib -> autotest
* API: autotest.client.common_lib -> autotest.client.shared

As an example, here's how the imports on client/bin/job.py used to be
pre-0.14:

    from autotest_lib.client.bin import client_logging_config
    from autotest_lib.client.bin import utils, parallel, kernel, xen
    from autotest_lib.client.bin import profilers, boottool, harness
    from autotest_lib.client.bin import config, sysinfo, test, local_host
    from autotest_lib.client.bin import partition as partition_lib
    from autotest_lib.client.common_lib import base_job
    from autotest_lib.client.common_lib import error, barrier, log, 
logging_manager
    from autotest_lib.client.common_lib import base_packages, packages
    from autotest_lib.client.common_lib import global_config
    from autotest_lib.client.tools import html_report


And that's how it looks now:

    from autotest.client import client_logging_config
    from autotest.client import utils, parallel, kernel, xen
    from autotest.client import profilers, boottool, harness
    from autotest.client import config, sysinfo, test, local_host
    from autotest.client import partition as partition_lib
    from autotest.client.shared import base_job
    from autotest.client.shared import error, barrier, log, logging_manager
    from autotest.client.shared import base_packages, packages
    from autotest.client.shared import global_config
    from autotest.client.tools import html_report

The conversion should be mostly automatic for most users.

Entry names change
------------------

In order to ease discoverability on a system wide install, some widely
used entry point changed names. By entry point, we mean the autotest
high level utility programs. Check out the name changes:

1. client/bin/autotest -> client/autotest-local
2. server/autoserv -> server/autotest-remote
3. cli/atest -> cli/autotest-rpc-client
4. scheduler/monitor_db.py -> scheduler/autotest-scheduler
5. scheduler/monitor_db_babysitter.py -> scheduler/autotest-scheduler-watcher

Boottool
--------

Autotest used a perl based tool to manage bootloader entries, but the
tool did not support grub2. So when Fedora started to use grub2, we took
the opportunity to rewrite the whole thing and ditch the perl based boot
tool. As a side effect, now it supports installing kernels on newer
Ubuntu too (and well, Opensuse and what else). It is based on the open
source project grubby, the tool used by anaconda and therefore, Fedora
and RHEL distros to manipulate boot entries.

Git history rewrite
-------------------

The git repo history was rewritten to properly follow git authorship
conventions. This effort reveals over 200 unique authors that did
contribute to autotest during the last 6 years. May we have many years
more with an active and healthy development community!


What's next?
------------

With the series of cleanups and improvements, here are the next steps:

- Port of the rpc server application to Django 1.4
- Documentation improvements and API documentation generation.
- Further cobbler-autotest integration
- Separation of tests and core autotest code
- Make the autotest test runner to be smarter, more tight in terms of
output

You can also help, please join the mailing lists and happy hacking!

_______________________________________________
Autotest mailing list
[email protected]
http://test.kernel.org/cgi-bin/mailman/listinfo/autotest

Reply via email to