On 03/21/2013 11:00 AM, Lucas Meneghel Rodrigues wrote:
Autotest 0.15.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
-----------------

Direct download link:

https://github.com/autotest/autotest/archive/autotest-0.15.0.tar.gz

Now that github removed arbitrary uploads, we now will release directly
fom git tags. The tag name schema changed, in order to get a decent
upstream tarball name.

^ Ok, forget about that, github magically appends a "autotest-" to the tarball name, so the tag name is back to 0.15.0. Sorry about the inconvenience. The actual download name is:

https://github.com/autotest/autotest/archive/0.15.0.tar.gz

The tags now will be signed with my GPG key. So
get your fresh copy of autotest (remember, the tarball does not contain
the tests anymore, those must be picked at the new test repos).


Changes
-------

Tests modules split
-------------------

Since test modules are fairly independent from the core framework, they
have been split into their own new git repos, and were added to autotest
as git submodules. Don't worry, if you want the autotest repo with full
tests, you may only need to execute

git clone --recursive git://github.com/autotest/autotest.git

The new repositories for the client and server tests:

https://github.com/autotest/autotest-client-tests
https://github.com/autotest/autotest-server-tests

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

Following the example of autotest 0.14.0, 0.15.0 brings more API cleanups.

1) global_config -> settings

The library global_config was renamed to settings. As an example of how
the change works, here's an example of how to access settings on autotest
0.14.X:

::

     from autotest.client.shared import global_config

     c = global_config.global_config.get_config_value
     c.get_value("mysection", "mykey")

This is how the same process look on autotest 0.15.0:

::

     from autotest.client.shared.settings import settings

     settings.get_value("mysection", "mykey")

As tests usually have no business with the autotest settings, this means
pretty much no update required from test authors.

Machine installs from the autotest web interface
------------------------------------------------

In autotest 0.14, we introduced preliminary integration between autotest
and the Cobbler install server (http://cobbler.github.com/) was
introduced. However, there was not enough of that integration visible if
you were using the web interface. Now it is possible to select which
cobbler profiles you want to use on your test machines from the web
interface.

DB migration moved to Django South
----------------------------------

When the autotest RPC server application was developed, there was a
database code in place already. In order to move away from having 2 ways
to access the database, this version of autotest introduces a new
migration system, based on Django South (http://south.aeracode.org/).

For people looking for upgrading the database to the latest version,
we've put up a procedure here

https://github.com/autotest/autotest/wiki/MigrateDatabaseToAutotest0.15

Other changes
-------------

* Support for creation of debian packages
* Simplified module import logic
* Simplified unittests execution
* Improved install scripts. Now it is possible to install autotest from
an arbitrary git repo and branch, which will make it easier to test and
validate changes that involve the rpc client/server, scheduler, among
others.

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

We believe the foundation for an autotest version 1.0 is already in
place. So, the next release will be autotest 1.0, bringing polish and
bugfixing to the framework being developed during the previous six years.

You can see the issues open for the Milestone 1.0.0 here:

https://github.com/autotest/autotest/issues/milestones

and here:

https://github.com/autotest/autotest/issues?milestone=2&state=open

For autotest 1.0 we plan on upgrading the stack to the latest versions
of the foundation technologies involved in the server operation, and
package generation:

* Update the web interface (RPC client) to the latest GWT

http://google-web-toolkit.googlecode.com/files/gwt-2.5.1.zip

* Update the RPC server to the latest Django

https://www.djangoproject.com/download/1.5/tarball/

* Functional server packages for Debian
* Automated generation of both rpm and debian packages
* Functional regression test suite for server installs, working out of
the box

We also want to improve the usefulness and usability of our existing tools

* Introduce a 'machine reserve' mode, where you may provision one bare
metal machine with the OS of choice and use the installed machine for a
period of time, in a convenient way.

* Allow to schedule jobs based on machine hardware capabilities, for
example:
- Number of CPUS
- Available Memory
- Virtualization support
among others

* Allow autotest to function well as an alternative test harness for
beaker (http://beaker-project.org/).

* Support to parametrized jobs (be able to set parameters in tests, and
enable people to simply pass parameters to those tests in the cli/web
interface).

_______________________________________________
Autotest-kernel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/autotest-kernel

_______________________________________________
Virt-test-devel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/virt-test-devel

Reply via email to