Hello,

We are happy to announce the availability of kvm-autotest, a test framework for KVM based on autotest. Naturally, the purpose is to make KVM stable, find/fix bugs faster and prevent regressions. It is to serve developers, to test if their new code breaks anything, as well as users, to verify that the KVM they are using is stable in their own environment.

    There are many things to improve. Currently supported are only a few tests
(mainly reboot/migration) and a single guest (Fedora 8 i386). This will change soon as we add tests and guests to the test matrix.

    We've tried to be very flexible with configuration of tests, so there are
quite a few options to choose from (check the documentation). For example
one may choose to download and install the latest (or a specific) KVM release,
the latest (or a specific) daily snapshot, use git, or use other source.
Almost all configuration is located in kvm.cfg (under client directory).

    By default kvm-autotest creates a machine-local subnet with a
local dhcp server. The dhcp server is configured to ignore unknown clients and
only serves KVM guests. One may disable it by changing kvm.cfg (See 
documentation)

    The test framework is based on autotest ( http://test.kernel.org/autotest ).
Currently we only using client tests, later we may want to use server tests
for more complicated tests.

To download the source:
    cd /usr/local ( or another root-writeable directory )
    git clone git://git.kernel.org/pub/scm/virt/kvm/kvm-autotest.git
    cd kvm-autotest/client
To read documentation look at http://kvm.qumranet.com/kvmwiki/KVM_RegressionTest

The simplest way to use it is:
0. login as root (not necessary but simpler, as tests must be run as root)
1. Download kvm-autotest (see a few lines above)
2. Change the following in kvm.cfg according to your preference (or leave the default settings):
       local_kvm_dir   -- "base"   directory
       local_guest_dir -- "images" directroy (may take a lot of disk space)
       local_iso_dir   -- "isos"   directroy (may take a lot of disk space)
       bridge          -- change if your local network conflicts with
                              192.168.1/24 subnet
                          change bridge name if conflicts with a currently used
                              bridge.
       dhcp_net        -- change accordingly (e.g. use 10.0.1.2)
3. Make sure you have enough disk space for isos and images (df -h /var/local)
4. The default guest-installation test requires Fedora-8-i386-DVD.iso.
   It is configured to fetch it automatically from the web unless it already
     exists in the local_iso_dir (default path is
     /var/local/kvm_regression/isos/linux/Fedora-8-i386-DVD.iso).
   If you already have that iso image locally, create a link or change
     local_iso_dir.
   Alternatively, in tests/kvm_guest_install/Fedora-8-i386/Fedora-8-i386.ini
     set iso=/path/to/Fedora-8-i386-DVD.iso.
5. Default machine-local subnet is 192.168.1/24. If it conflicts with your
   network, you need change network configuration in kvm.cfg
6. Run the tests as root (./bin/autotest tests/kvm_runtest/control)
7. Checkout the results at results/default/

Caveats/Issues:
- Upon failure check results/defualt/debug/error-*
- After first download of KVM sources (and building + loading the modules),
    one needs to either manually remove /var/local/kvm_regression/{src,build}
    or set kvm_install=no in kvm.cfg. Otherwise the test will fail.
    The reason for it is that we do not want to remove directories
    automatically.
- The message "Guest installation completed but guest is not responsive",
    usually means that the guest installation failed.
- The tests must be run as root.
- When a guest is installing, do not move its mouse or type its keyboard.
  It confuses the guest installation algorithm (when watching its progress, e.g.
  with vncviewer).
- Guest installation is currently very sensitive to timing. If installation
  fails, sometimes it's helpfull to enlarge sleep time before the reboot and
  between steps. Do it by modifying
  tests/kvm_guest_install/Fedora-8-i386/Fedora-8-i386.steps
- After the guest is installed and you want to rerun the other tests set
    guest_install=no in kvm.cfg
  Also if you want to test an existing image, create a new vm-class (guest
  configuration) and set guest_install=no in kvm.cfg

    We hope many will test KVM on their systems and report results to the
community. We plan to have a web page with results. We hope many will add tests and improve KVM regression tests.

Thanks,
    Uri.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to