kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Lucas Meneghel Rodrigues <lmr@redhat.com>
To: autotest@test.kernel.org
Cc: kvm@vger.kernel.org
Subject: [PATCH 08/11] client.tests: Introducing libvirt test
Date: Tue, 11 Oct 2011 18:07:14 -0300	[thread overview]
Message-ID: <1318367237-26081-9-git-send-email-lmr@redhat.com> (raw)
In-Reply-To: <1318367237-26081-1-git-send-email-lmr@redhat.com>

Introduce libvirt test. The small amount of actual code
on this test is made possible by code reuse, made possible
by the kvm refactor patchset + the previous patches on
this set.

The obvious difference is that some new parameters had
to be introduced to accomplish libvirt testing. A more
complete description of such parameters will be present
on our online documentation (wiki).

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
---
 client/tests/libvirt/README                |   11 +
 client/tests/libvirt/cdkeys.cfg.sample     |   18 +
 client/tests/libvirt/common.py             |    8 +
 client/tests/libvirt/control               |   64 +
 client/tests/libvirt/get_started.py        |   22 +
 client/tests/libvirt/libvirt.py            |    9 +
 client/tests/libvirt/tests.cfg.sample      |   73 +
 client/tests/libvirt/tests_base.cfg.sample | 2918 ++++++++++++++++++++++++++++
 client/tests/libvirt/virtio-win.cfg.sample |  235 +++
 9 files changed, 3358 insertions(+), 0 deletions(-)
 create mode 100644 client/tests/libvirt/README
 create mode 100644 client/tests/libvirt/cdkeys.cfg.sample
 create mode 100644 client/tests/libvirt/common.py
 create mode 100644 client/tests/libvirt/control
 create mode 100755 client/tests/libvirt/get_started.py
 create mode 100644 client/tests/libvirt/libvirt.py
 create mode 100644 client/tests/libvirt/tests.cfg.sample
 create mode 100644 client/tests/libvirt/tests_base.cfg.sample
 create mode 100644 client/tests/libvirt/virtio-win.cfg.sample

diff --git a/client/tests/libvirt/README b/client/tests/libvirt/README
new file mode 100644
index 0000000..7b19979
--- /dev/null
+++ b/client/tests/libvirt/README
@@ -0,0 +1,11 @@
+For the impatient:
+
+Execute the get_started.py script located on this directory,
+that will guide you through setting up the default libvirt test
+scenario:
+
+ * Guest install with Fedora 15
+ * Boot, reboot and shutdown test
+
+The script will help you to create all the directories, and
+even get the OS iso in case you don't have it yet.
diff --git a/client/tests/libvirt/cdkeys.cfg.sample b/client/tests/libvirt/cdkeys.cfg.sample
new file mode 100644
index 0000000..2d1d05d
--- /dev/null
+++ b/client/tests/libvirt/cdkeys.cfg.sample
@@ -0,0 +1,18 @@
+# Copy this file to cdkeys.cfg and edit it.
+#
+# Replace the 'CDKEY' strings with real cdkeys where necessary.
+# Feel free to add additional guests as required.
+
+RHEL.5.3.i386: cdkey = CDKEY
+RHEL.5.3.x86_64: cdkey = CDKEY
+Win2000: cdkey = CDKEY
+WinXP.32: cdkey = CDKEY
+WinXP.64: cdkey = CDKEY
+Win2003.32: cdkey = CDKEY
+Win2003.64: cdkey = CDKEY
+WinVista.32: cdkey = CDKEY
+WinVista.64: cdkey = CDKEY
+Win2008.32: cdkey = CDKEY
+Win2008.64: cdkey = CDKEY
+Win7.32: cdkey = CDKEY
+Win7.64: cdkey = CDKEY
diff --git a/client/tests/libvirt/common.py b/client/tests/libvirt/common.py
new file mode 100644
index 0000000..ce78b85
--- /dev/null
+++ b/client/tests/libvirt/common.py
@@ -0,0 +1,8 @@
+import os, sys
+dirname = os.path.dirname(sys.modules[__name__].__file__)
+client_dir = os.path.abspath(os.path.join(dirname, "..", ".."))
+sys.path.insert(0, client_dir)
+import setup_modules
+sys.path.pop(0)
+setup_modules.setup(base_path=client_dir,
+                    root_module_name="autotest_lib.client")
diff --git a/client/tests/libvirt/control b/client/tests/libvirt/control
new file mode 100644
index 0000000..c73d59b
--- /dev/null
+++ b/client/tests/libvirt/control
@@ -0,0 +1,64 @@
+AUTHOR = """
+Red Hat Inc. Quality Assurance
+uril@redhat.com (Uri Lublin)
+drusso@redhat.com (Dror Russo)
+mgoldish@redhat.com (Michael Goldish)
+dhuff@redhat.com (David Huff)
+aeromenk@redhat.com (Alexey Eromenko)
+mburns@redhat.com (Mike Burns)
+"""
+TIME = 'MEDIUM'
+NAME = 'LIBVIRT test'
+TEST_TYPE = 'client'
+TEST_CLASS = 'Virtualization'
+TEST_CATEGORY = 'Functional'
+
+DOC = """
+Executes the LIBVIRT test framework on a given host. This module is separated in
+minor functions, that execute different tests for doing Quality Assurance on
+LIBVIRT (both kernelspace and userspace) code.
+
+For online docs, please refer to http://www.linux-kvm.org/page/KVM-Autotest
+"""
+
+import sys, os, logging
+from autotest_lib.client.common_lib import cartesian_config
+from autotest_lib.client.virt import virt_utils
+
+# set English environment (command output might be localized, need to be safe)
+os.environ['LANG'] = 'en_US.UTF-8'
+
+str = """
+# This string will be parsed after build.cfg.  Make any desired changes to the
+# build configuration here.  For example:
+#release_tag = 84
+"""
+
+libvirt_test_dir = os.path.join(os.environ['AUTODIR'],'tests/libvirt')
+
+str = """
+# This string will be parsed after tests.cfg.  Make any desired changes to the
+# test configuration here.  For example:
+#display = sdl
+#install, setup: timeout_multiplier = 3
+"""
+
+parser = cartesian_config.Parser()
+parser.parse_file(os.path.join(libvirt_test_dir, "tests.cfg"))
+
+if args:
+    # We get test parameters from command line
+    for arg in args:
+        try:
+            (key, value) = re.findall("^(\w+)=(.*)", arg)[0]
+            if key == "only":
+                str += "only %s\n" % value
+            elif key == "no":
+                str += "no %s\n" % value
+            else:
+                str += "%s = %s\n" % (key, value)
+        except IndexError:
+            pass
+parser.parse_string(str)
+
+virt_utils.run_tests(parser, job)
diff --git a/client/tests/libvirt/get_started.py b/client/tests/libvirt/get_started.py
new file mode 100755
index 0000000..8ea88ce
--- /dev/null
+++ b/client/tests/libvirt/get_started.py
@@ -0,0 +1,22 @@
+#!/usr/bin/python
+"""
+Program to help setup libvirt test environment
+
+@copyright: Red Hat 2011
+"""
+import os, sys
+import common
+from autotest_lib.client.virt import virt_utils
+
+test_name = "libvirt"
+test_dir = os.path.dirname(sys.modules[__name__].__file__)
+test_dir = os.path.abspath(test_dir)
+base_dir = "/tmp/libvirt_autotest_root"
+default_userspace_paths = ["/usr/bin/virt-install"]
+check_modules = None
+online_docs_url = None
+
+if __name__ == "__main__":
+    virt_utils.virt_test_assistant(test_name, test_dir, base_dir,
+                                   default_userspace_paths, check_modules,
+                                   online_docs_url)
\ No newline at end of file
diff --git a/client/tests/libvirt/libvirt.py b/client/tests/libvirt/libvirt.py
new file mode 100644
index 0000000..ac9f919
--- /dev/null
+++ b/client/tests/libvirt/libvirt.py
@@ -0,0 +1,9 @@
+from autotest_lib.client.virt import virt_test
+
+class libvirt(virt_test.virt_test):
+    """
+    Suite of libvirt virtualization functional tests.
+
+    @copyright: Red Hat 2011
+    """
+    pass
diff --git a/client/tests/libvirt/tests.cfg.sample b/client/tests/libvirt/tests.cfg.sample
new file mode 100644
index 0000000..a068587
--- /dev/null
+++ b/client/tests/libvirt/tests.cfg.sample
@@ -0,0 +1,73 @@
+# Copy this file to tests.cfg and edit it.
+#
+# This file contains the test set definitions. Define your test sets here.
+include tests_base.cfg
+include cdkeys.cfg
+include virtio-win.cfg
+
+# Modify/comment the following lines if you wish to modify the paths of the
+# image files, ISO files or qemu binaries.
+#
+# As for the defaults:
+# * qemu and qemu-img are expected to be found under /usr/bin/qemu-kvm and
+#   /usr/bin/qemu-img respectively.
+# * All image files are expected under /tmp/libvirt_autotest_root/images/
+# * All install iso files are expected under /tmp/libvirt_autotest_root/isos/
+# * The parameters cdrom_unattended, floppy, kernel and initrd are generated
+#   by LIBVIRT autotest, so remember to put them under a writable location
+#   (for example, the cdrom share can be read only)
+image_name(_.*)? ?<= /tmp/libvirt_autotest_root/images/
+cdrom(_.*)? ?<= /tmp/libvirt_autotest_root/
+floppy ?<= /tmp/libvirt_autotest_root/
+image_dir = /tmp/libvirt_autotest_root/
+Linux..unattended_install:
+    kernel ?<= /tmp/libvirt_autotest_root/
+    initrd ?<= /tmp/libvirt_autotest_root/
+
+variants:
+    # Runs virt-install, f15 64 bit guest OS, install, boot, shutdown
+    - @libvirt_f15_quick:
+        virt_install_binary = /usr/bin/virt-install
+        qemu_img_binary = /usr/bin/qemu-img
+        only raw
+        only virtio_net
+        only ide
+        only smp2
+        only no_pci_assignable
+        only smallpages
+        only Fedora.15.64
+        only unattended_install.cdrom, boot, reboot, shutdown
+
+    # Runs virt-install, RHEL 6.0 64 bit guest OS, install, boot, shutdown
+    - @libvirt_rhel60_quick:
+        virt_install_binary = /usr/bin/virt-install
+        qemu_img_binary = /usr/bin/qemu-img
+        only raw
+        only virtio_net
+        only virtio_blk
+        only smp2
+        only no_pci_assignable
+        only smallpages
+        only RHEL.6.0.x86_64
+        only unattended_install.cdrom, boot, reboot, shutdown
+
+    - @libvirt_windows:
+        virt_install_binary = /usr/bin/virt-install
+        qemu_img_binary = /usr/bin/qemu-img
+        use_virt_install = yes
+        image_format = raw
+        virt_install_debug = yes
+        hvm_or_pv = --hvm --accelerate
+        mem = 4196
+        install_virtio = no
+        only raw
+        only rtl8139
+        only ide
+        only smp2
+        only no_pci_assignable
+        only smallpages
+        only Windows.Win7.64
+        only unattended_install.cdrom, boot, reboot, shutdown
+
+# Choose your test list from the testsets defined
+only libvirt_f15_quick
diff --git a/client/tests/libvirt/tests_base.cfg.sample b/client/tests/libvirt/tests_base.cfg.sample
new file mode 100644
index 0000000..f2a4e35
--- /dev/null
+++ b/client/tests/libvirt/tests_base.cfg.sample
@@ -0,0 +1,2918 @@
+# Copy this file to tests_base.cfg and edit it.
+#
+# Define the objects we'll be using
+vms = vm1
+vm_type = libvirt
+images = image1
+cdroms = cd1
+nics = nic1
+monitors = 
+
+# Choose the main VM and monitor
+main_vm = vm1
+#main_monitor = humanmonitor1
+
+# Some preprocessor/postprocessor params
+start_vm = yes
+kill_vm = no
+kill_vm_gracefully = yes
+kill_unresponsive_vms = no
+
+# Screendump specific stuff
+convert_ppm_files_to_png_on_error = yes
+#keep_ppm_files = yes
+#keep_ppm_files_on_error = yes
+take_regular_screendumps = yes
+keep_screendumps_on_error = yes
+screendump_delay = 5
+screendump_quality = 30
+screendump_temp_dir = /dev/shm
+screendump_verbose = no
+
+# Some default VM params
+qemu_binary = qemu
+qemu_img_binary = qemu-img
+smp = 1
+mem = 1024
+image_size = 10G
+drive_index_image1 = 0
+drive_cache = none
+shell_port = 22
+display = vnc
+drive_index_cd1 = 1
+
+qxl = on
+qxl_dev_nr = 1
+spice = disable-ticketing
+
+# Monitor params
+monitor_type = human
+
+# Default scheduler params
+used_cpus = 1
+used_mem = 512
+
+# Port redirections
+redirs = remote_shell
+guest_port_remote_shell = 22
+
+# NIC parameters
+#nic_mode = user
+nic_mode = tap
+
+# DO NOT set to 'private when using libvirt client
+bridge = none
+
+# You can set bridge to
+# be a specific bridge
+# name, such as 'virbr0'
+#bridge = virbr0
+# If you need more ports to be available for comm between host and guest,
+# please add them here
+priv_bridge_ports = 53 67
+run_tcpdump = yes
+
+# Misc
+profilers = kvm_stat
+login_timeout = 360
+image_raw_device = no
+
+# NFS directory of guests' images
+images_good = 0.0.0.0:/autotest/images_good
+
+# libvirt (virt-install optional arguments)
+use_connect_uri = yes
+use_autostart = no
+use_check_cpu = yes
+use_debug = yes
+use_no_reboot = no
+use_os_variant = no
+use_os_type = yes
+# libvirt network to use examples network=default or bridge=br0
+virsh_network = network=default
+# wait in minutes for virt-install to finish (bz still open)
+use_virt_install_wait = no
+virt_install_wait_time = 300  
+
+# Tests
+variants:
+    - install:
+        type = steps
+        fail_if_stuck_for = 300
+        stuck_detection_history = 2
+        keep_screendump_history = yes
+        force_create_image = yes
+        kill_vm = yes
+        kill_vm_timeout = 60
+        kill_vm_timeout_on_error = 0
+
+    - setup: install
+        type = steps
+        fail_if_stuck_for = 300
+        stuck_detection_history = 2
+        kill_vm_on_error = yes
+        keep_screendump_history = yes
+
+    - image_copy:
+        type = image_copy
+        vms = ''
+        parallel = no
+        profilers =
+
+    - unattended_install:
+        type = unattended_install
+        start_vm = no
+        kill_vm = yes
+        kill_vm_gracefully = yes
+        kill_vm_on_error = yes
+        shutdown_cleanly = yes
+        shutdown_cleanly_timeout = 120
+        force_create_image = yes
+        guest_port_unattended_install = 12323
+        kernel = vmlinuz
+        initrd = initrd.img
+        image_name_pxe = images/pxeboot
+        # force_remove_vm must be yes when using virt-install
+        force_remove_vm = yes
+        # uncomment the following line to test the migration in parallel
+        # migrate_background = yes
+
+        variants:
+            # Install guest from cdrom (virt-install --cdrom)
+            - cdrom:
+                medium = cdrom
+                redirs += " unattended_install"
+            # Install guest from http/ftp url (virt-install --location)
+            - url:
+                only Linux
+                medium = url
+                url = REPLACE_THIS_WITH_TREE_URL
+            # Install guest from nfs nfs_server:nfs_dir
+            - nfs:
+                only Linux
+                medium = nfs
+                nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+            # Install guest with a remote kickstart
+            - remote_ks:
+                only Linux
+                medium = url
+                extra_params = " ks=REPLACE_THIS_WITH_URL_OF_KS"
+                url = REPLACE_THIS_WITH_TREE_URL
+            # Install guest using pxe/tftp  (virt-install --pxe)
+            - pxe:
+                only Linux
+                medium = pxe
+            # Install guest using kernel/initrd pair from directory
+            - kernel_initrd:
+                only Linux
+                medium = kernel_initrd
+
+    - qemu_img:
+        type = qemu_img
+        vms = ''
+        profilers = ''
+        take_regular_screendumps = no
+        variants:
+            - check:
+                subcommand = check
+                image_name_dd = dd_created_image
+                force_create_image_dd = no
+                remove_image_dd = yes
+                create_image_cmd = "dd if=/dev/zero of=%s bs=1G count=1"
+                # Test the convertion from 'dd_image_name' to specified format
+                supported_image_formats = qcow2 raw
+            - create:
+                subcommand = create
+                images += " large"
+                force_create_image_large = yes
+                image_size_large = 1G
+                image_name_large = create_large_image
+                remove_image_large = yes
+            - convert:
+                subcommand = convert
+                variants:
+                    - to_qcow2:
+                        dest_image_format = qcow2
+                        compressed = no
+                        encrypted = no
+                    - to_raw:
+                        dest_image_format = raw
+            - snapshot:
+                subcommand = snapshot
+            - info:
+                subcommand = info
+            - rebase:
+                subcommand = rebase
+                rebase_mode = unsafe
+                image_name_snapshot1 = sn1
+                image_name_snapshot2 = sn2
+            # Commit is the only subtest that does need an installed guest
+            - commit:  install setup image_copy unattended_install.cdrom
+                subcommand = commit
+
+    - pxe:
+        type = pxe
+        images = pxe
+        image_name_pxe = pxe-test
+        image_size_pxe = 1G
+        force_create_image_pxe = yes
+        remove_image_pxe = yes
+        extra_params += ' -boot n'
+        kill_vm_on_error = yes
+        network = bridge
+        restart_vm = yes
+        pxe_timeout = 60
+
+    - module_probe:
+        type = module_probe
+        # You can specify your own module list, though it is not needed usually.
+        # mod_list = kvm
+        load_count = 100
+        vms = ''
+        profilers = ''
+        take_regular_screendumps = no
+
+# Tests that do need installed guests to run
+    - boot: install setup image_copy unattended_install.cdrom
+        type = boot
+        restart_vm = yes
+        kill_vm_on_error = yes
+        login_timeout = 240
+
+    - reboot: install setup image_copy unattended_install.cdrom
+        type = boot
+        reboot_method = shell
+        kill_vm_on_error = yes
+        login_timeout = 240
+
+    - migrate: install setup image_copy unattended_install.cdrom
+        type = migration
+        migration_test_command = help
+        migration_bg_command = "cd /tmp; nohup tcpdump -q -t ip host localhost"
+        migration_bg_check_command = pgrep tcpdump
+        migration_bg_kill_command = pkill tcpdump
+        kill_vm_on_error = yes
+        iterations = 2
+        used_mem = 1024
+        mig_timeout = 3600
+        # you can uncomment the following line to enable the state
+        # check
+        # vmstate_check = yes
+        variants:
+            - tcp:
+                migration_protocol = "tcp"
+            - unix:
+                migration_protocol = "unix"
+            - exec:
+                migration_protocol = "exec"
+            - mig_cancel:
+                migration_protocol = "tcp"
+                mig_cancel = yes
+        variants:
+            - @default:
+            - with_set_speed:
+                mig_speed = 1G
+                pre_migrate = "mig_set_speed"
+            - with_reboot:
+                iterations = 1
+                type = migration_with_reboot
+            - with_file_transfer:
+                iterations = 1
+                type = migration_with_file_transfer
+            - with_autotest:
+                only Linux
+                type = autotest
+                migrate_background = yes
+                test_timeout = 1800
+                variants:
+                    - dbench:
+                        test_control_file = dbench.control
+                    - stress:
+                        test_control_file = stress.control
+                    - monotonic_time:
+                        test_control_file = monotonic_time.control
+
+    - migrate_multi_host: install setup image_copy unattended_install.cdrom
+        type = migration_multi_host
+        migration_test_command = help
+        migration_bg_command = "cd /tmp; nohup tcpdump -q -t ip host localhost"
+        migration_bg_check_command = pgrep tcpdump
+        migration_bg_kill_command = pkill tcpdump
+        kill_vm_on_error = yes
+        iterations = 2
+        used_mem = 1024
+        mig_timeout = 3600
+        comm_port = 13234
+        regain_ip_cmd = dhclient
+
+    - boot_savevm: install setup image_copy unattended_install.cdrom
+        type = boot_savevm
+        savevm_delay = 0.3
+        savevm_login_delay = 120
+        savevm_timeout = 2000
+        kill_vm_on_error = yes
+        kill_vm_gracefully = yes
+        kill_vm = yes
+
+    - autotest: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = autotest
+        test_timeout = 1800
+        variants:
+            - sleeptest:
+                test_timeout = 120
+                test_control_file = sleeptest.control
+            - dbench:
+                test_control_file = dbench.control
+            - bonnie:
+                test_control_file = bonnie.control
+            - ebizzy:
+                test_control_file = ebizzy.control
+            - stress:
+                test_control_file = stress.control
+            - disktest:
+                test_control_file = disktest.control
+            - ctcs:
+                # If you think this is too lengthy, please change the cerberus
+                # control file and set this timeout appropriately.
+                test_timeout = 3900
+                test_control_file = ctcs.control
+            - npb:
+                test_control_file = npb.control
+            - hackbench:
+                test_control_file = hackbench.control
+            - cpu_hotplug:
+                test_control_file = cpu_hotplug.control
+            - monotonic_time:
+                test_control_file = monotonic_time.control
+            - tsc:
+                test_control_file = tsc.control
+            - scrashme:
+                test_control_file = scrashme.control
+            - hwclock:
+                test_control_file = hwclock.control
+            - rtc:
+                test_control_file = rtc.control
+            - iozone:
+                test_control_file = iozone.control
+            - flail:
+                test_control_file = flail.control
+            - systemtap:
+                test_control_file = systemtap.control
+
+    - stop_continue: install setup image_copy unattended_install.cdrom
+        type = stop_continue
+        kill_vm_on_error = yes
+
+    - linux_s3: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = linux_s3
+
+    - timedrift: install setup image_copy unattended_install.cdrom
+        variants:
+            - ntp:
+                variants:
+                    - with_load:
+                        type = timedrift
+                        # Pin the VM and host load to CPU #0
+                        cpu_mask = 0x1
+                        # Set the load and rest durations
+                        load_duration = 20
+                        rest_duration = 20
+                        # Fail if the drift after load is higher than 50%
+                        drift_threshold = 50
+                        # Fail if the drift after the rest period is higher than 10%
+                        drift_threshold_after_rest = 10
+                        # For now, make sure this test is executed alone
+                        used_cpus = 100
+                    - with_migration:
+                        type = timedrift_with_migration
+                        migration_iterations = 3
+                        drift_threshold = 10
+                        drift_threshold_single = 3
+                    - with_reboot:
+                        type = timedrift_with_reboot
+                        reboot_iterations = 1
+                        drift_threshold = 10
+                        drift_threshold_single = 3
+                    - with_stop:
+                        type = timedrift_with_stop
+                        stop_interations = 1
+                        drift_threshold = 10
+                        drift_threshold_single = 3
+            - date:
+                variants:
+                    - with_load:
+                        type = timedrift
+                        # Pin the VM and host load to CPU #0
+                        cpu_mask = 0x1
+                        # Set the load and rest durations
+                        load_duration = 20
+                        rest_duration = 20
+                        # Fail if the drift after load is higher than 50%
+                        drift_threshold = 50
+                        # Fail if the drift after the rest period is higher than 10%
+                        drift_threshold_after_rest = 10
+                        # For now, make sure this test is executed alone
+                        used_cpus = 100
+                    - with_migration:
+                        type = timedrift_with_migration
+                        migration_iterations = 3
+                        drift_threshold = 10
+                        drift_threshold_single = 3
+                    - with_reboot:
+                        type = timedrift_with_reboot
+                        reboot_iterations = 1
+                        drift_threshold = 10
+                        drift_threshold_single = 3
+                    - with_stop:
+                        type = timedrift_with_stop
+                        stop_interations = 1
+                        drift_threshold = 10
+                        drift_threshold_single = 3
+
+    - balloon_check: install setup image_copy unattended_install.cdrom
+        type = balloon_check
+        extra_params += " -balloon virtio"
+        iterations = 5
+
+    - watchdog: install setup image_copy unattended_install.cdrom
+        type = watchdog
+        extra_params += " -watchdog i6300esb -watchdog-action reset"
+        relogin_timeout = 240
+
+    - smbios_table: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = smbios_table
+        start_vm = no
+
+    - stress_boot: install setup image_copy unattended_install.cdrom
+        type = stress_boot
+        max_vms = 5    
+        alive_test_cmd = uname -a
+        login_timeout = 240
+        kill_vm = yes
+        kill_vm_vm1 = no
+        kill_vm_gracefully = no
+        extra_params += " -snapshot"
+        used_cpus = 5
+        used_mem = 2560
+
+    - guest_test: install setup image_copy unattended_install.cdrom
+        only Windows
+        type = guest_test
+        login_timeout = 360
+        test_timeout = 600
+        script_params =
+        reboot = yes
+        variants:
+            - autoit:
+                interpreter = "cmd /c D:\AutoIt3.exe"
+                variants:
+                    - notepad:
+                        guest_script = autoit/notepad1.au3
+                        dst_rsc_path = "C:\script.au3"
+                    - stub:
+                        download = yes
+                        download_cmd = "git clone"
+                        rsc_server = "git://the.resource.server/autoit"
+                        dst_rsc_dir = "C:\"
+                        dst_rsc_path = "C:\autoit\stub\stub.au3"
+            - powershell:
+                interpreter = "cmd /c powershell.exe -File"
+                variants:
+                    - stub:
+                        download = yes
+                        download_cmd = "git clone"
+                        rsc_server = "git://the.resource.server/powershell"
+                        dst_rsc_dir = "C:\"
+                        dst_rsc_path = "C:\powershell\stub\stub.ps1"
+
+    - iozone_windows: install setup image_copy unattended_install.cdrom
+        only Windows
+        type = iozone_windows
+        iozone_cmd = "D:\IOzone\iozone.exe -a"
+        iozone_timeout = 3600
+
+    - whql: install setup image_copy unattended_install.cdrom
+        only Windows
+        nic_mode = tap
+        # Replace this with the address of an installed DTM server
+        server_address = 10.20.30.40
+        # The server should run rss.exe like a regular Windows VM, preferably
+        # with administrator privileges (or at least with permission to write
+        # to the DTM studio directory)
+        server_shell_port = 10022
+        server_file_transfer_port = 10023
+        server_studio_path = %programfiles%\Microsoft Driver Test Manager\Studio
+        dsso_test_binary = deps/whql_submission_15.exe
+        dsso_delete_machine_binary = deps/whql_delete_machine_15.exe
+        wtt_services = wttsvc
+        variants:
+            - support_vm_install:
+                # The support VM is identical to the tested VM in every way
+                # except for the image name which ends with '-supportvm'.
+                type = unattended_install
+                extra_params += " -boot d"
+                force_create_image = yes
+                kill_vm = yes
+                nic_mode = user
+                redirs += " unattended_install"
+                guest_port_unattended_install = 12323
+                medium = cdrom
+                kernel =
+                initrd = 
+            - client_install:    support_vm_install
+                type = whql_client_install
+                # The username and password are required for accessing the DTM client
+                # installer binary shared by the server
+                server_username = administrator
+                server_password = 1q2w3eP
+                # This path refers to a shared directory on the server
+                # (the final cmd will be something like \\servername\DTMInstall\...)
+                install_cmd = \DTMInstall\Client\Setup.exe /passive
+                install_timeout = 3600
+                # The test will setup auto logon on the client machine using the
+                # following username and password:
+                client_username = DTMLLUAdminUser
+                client_password = Testpassword,1
+                # (These are created by the DTM client installer and should probably not
+                # be changed.)
+                variants:
+                    - @original:
+                    - support_vm:
+            - submission:    client_install support_vm_install
+                type = whql_submission
+                extra_params += " -snapshot"
+                restart_vm = yes
+                cdroms =
+                test_timeout = 3600
+                device_data = cat0 cat1 cat2 cat3 prog desc virt filter logoarch logoos whqlos whqlqual
+                descriptors = desc1 desc2 desc3
+                # DeviceData names
+                dd_name_cat0     = Category
+                dd_name_cat1     = Category
+                dd_name_cat2     = Category
+                dd_name_cat3     = Category
+                dd_name_logoarch = LogoProcessorArchitecture
+                dd_name_logoos   = LogoOperatingSystem
+                dd_name_whqlos   = WhqlOs
+                dd_name_whqlqual = WhqlQualification
+                dd_name_prog     = LogoProgramId
+                dd_name_desc     = LogoProgramDescription
+                dd_name_filter   = WDKFilterAttribute
+                dd_name_virt     = ParaVirtualizationDriver
+                # Common DeviceData data
+                dd_data_filter   = FilterIfNoInf
+                dd_data_virt     = True
+                # Exclude jobs that have '(Manual)' in their names
+                job_filter = ^((?!\(Manual\)).)*$
+                variants:
+                    - unclassified:
+                        dd_data_cat0 = Device Fundamentals
+                        dd_data_cat1 = System Fundamentals\Dynamic Partitioning
+                        dd_data_prog = Unclassified
+                        dd_data_desc = Unclassified
+                        dd_data_whqlqual = Unclassified Signature
+                        variants:
+                            - tablet:
+                                submission_name = tablet
+                                extra_params += " -usbdevice tablet"
+                                test_device = HID-compliant mouse
+                                test_timeout = 36000
+                    - device:
+                        variants:
+                            - keyboard:
+                                submission_name = keyboard
+                                # test_device is a regular expression that should match a device's
+                                # name as it appears in device manager.  The first device that matches
+                                # is used.
+                                test_device = keyboard
+                                # Set timeout to 10 hours
+                                test_timeout = 36000
+                                dd_data_cat0 = Input\Keyboard
+                                dd_data_cat1 = Device Fundamentals
+                                dd_data_cat2 = System Fundamentals\Dynamic Partitioning
+                                dd_data_prog = InputKbd
+                                dd_data_desc = Input > Keyboard
+                            - net:
+                                submission_name = net
+                                # Add a support machine and extra NICs
+                                vms += " supportvm"
+                                nics += " nic2 nic3"
+                                test_device = RTL8139.*NIC$
+                                test_timeout = 86400
+                                dd_data_cat0 = Network\LAN (Ethernet)
+                                dd_data_cat1 = Device Fundamentals
+                                dd_data_cat2 = System Fundamentals\Dynamic Partitioning
+                                dd_data_prog = NetLan
+                                dd_data_desc = Network > LAN (Ethernet)
+                                # Machine dimensions
+                                dimensions = testrole
+                                dim_name_testrole = NetDevice\TestRole
+                                dim_value_testrole_vm1 = NdistestLanClient
+                                dim_value_testrole_supportvm = NdistestLanServer
+                                # Device selection for the NDISTest client machine
+                                device_params_vm1 = testdev clientmsgdev clientsupportdev
+                                dp_name_testdev = NdistestLanClientTestDevice
+                                dp_regex_testdev = RTL8139.*NIC$
+                                dp_name_clientmsgdev = NdistestLanClientMessageDevice
+                                dp_regex_clientmsgdev = RTL8139.*NIC #2$
+                                dp_name_clientsupportdev = NdistestLanClientSupportDevice0
+                                dp_regex_clientsupportdev = RTL8139.*NIC #3$
+                                # Device selection for the NDISTest server machine
+                                device_params_supportvm = servermsgdev serversupportdev
+                                dp_name_servermsgdev = NdistestLanServerMessageDevice
+                                dp_regex_servermsgdev = RTL8139.*NIC$
+                                dp_name_serversupportdev = NdistestLanServerSupportDevice0
+                                dp_regex_serversupportdev = RTL8139.*NIC #2$
+                            - hdd:
+                                submission_name = hdd
+                                # Run the tests on a non-system drive
+                                # (match device names that contain 'QEMU HARDDISK' and do not contain '[C]')
+                                test_device = ^(?=.*?\bQEMU HARDDISK\b)((?!\[C\]).)*$
+                                device_data += " ex0 ex1 ex2 ex3"
+                                dd_data_cat0 = Storage\Device Class\Disk\Disk
+                                dd_data_cat1 = Storage\Device Class\Disk\Fixed
+                                dd_data_cat2 = Storage\Device Class\Disk\Bus\ATA
+                                dd_data_cat3 = Device Fundamentals
+                                dd_data_prog = StorHDD
+                                dd_data_desc = Storage > Hard Disk Drive (HDD)
+                                dd_name_ex0 = Storage_bus_type
+                                dd_data_ex0 = ATA/ATAPI
+                                dd_name_ex1 = Hybrid_HDD_Support
+                                dd_data_ex1 = 0
+                                dd_name_ex2 = Non_Rotating_Media
+                                dd_data_ex2 = 0
+                                dd_name_ex3 = Secure_Storage
+                                dd_data_ex3 = 0
+                                # Add a 2nd disk which will become D:
+                                images += " tmp"
+                                image_name_tmp = tmp
+                                image_size_tmp = 4G
+                                force_create_image_tmp = yes
+                                # Run diskpart to partition the 2nd disk
+                                whql_pre_command = "echo select disk=1 > dp.txt && "
+                                whql_pre_command += "echo create partition primary >> dp.txt && "
+                                whql_pre_command += "echo assign letter=d >> dp.txt && "
+                                whql_pre_command += "diskpart /s dp.txt & "
+                                whql_pre_command += "format d: /fs:ntfs /q /y"
+                                variants:
+                                    - full:
+                                        # Yes, 100 hours, this is not a mistake
+                                        test_timeout = 360000
+                                    - syscache_test:
+                                        job_filter = syscache test
+                                        test_timeout = 7200
+
+    - guest_s4: install setup image_copy unattended_install.cdrom
+        type = guest_s4
+        check_s4_support_cmd = grep -q disk /sys/power/state
+        test_s4_cmd = "cd /tmp; nohup tcpdump -q -t ip host localhost"
+        check_s4_cmd = pgrep tcpdump
+        set_s4_cmd = echo disk > /sys/power/state
+        kill_test_s4_cmd = pkill tcpdump
+        services_up_timeout = 30
+        relogin_timeout = 240
+
+    - nic_hotplug: install setup image_copy unattended_install.cdrom
+        pci_type = nic
+        reference_cmd = lspci
+        find_pci_cmd = 'lspci | tail -n1'
+        pci_test_cmd = 'nslookup www.redhat.com'
+        wait_secs_for_hook_up = 3
+        variants:
+            - nic_8139:
+                pci_model = rtl8139
+                match_string = "8139"
+            - nic_virtio:
+                pci_model = virtio
+                match_string = "Virtio network device"
+            - nic_e1000:
+                pci_model = e1000
+                match_string = "Gigabit Ethernet Controller"
+        variants:
+            - default:
+                type = pci_hotplug
+            - additional:
+                type = nic_hotplug
+
+
+    - block_hotplug: install setup image_copy unattended_install.cdrom
+        type = pci_hotplug
+        pci_type = block
+        reference_cmd = lspci
+        find_pci_cmd = 'lspci | tail -n1'
+        images += " stg"
+        boot_drive_stg = no
+        image_name_stg = storage
+        image_size_stg = 1G
+        remove_image_stg = yes
+        force_create_image_stg = yes
+        pci_test_cmd = "yes | mke2fs `fdisk -l 2>&1 | awk '/\/dev\/[sv]d[a-z] doesn/ {print $2}'`"
+        wait_secs_for_hook_up = 3
+        kill_vm_on_error = yes
+        variants:
+            - block_virtio:
+                pci_model = virtio
+                match_string = "Virtio block device"
+            - block_scsi:
+                pci_model = scsi
+                match_string = "LSI Logic"
+        variants:
+            - fmt_qcow2:
+                image_format_stg = qcow2
+            - fmt_raw:
+                image_format_stg = raw
+
+    - enospc: install setup image_copy unattended_install.cdrom
+        type = enospc
+        start_vm = no
+        images += " stg"
+        drive_werror = stop
+        drive_cache = none
+        image_name_stg = enospc
+        image_format_stg = qcow2
+        image_boot_stg = no
+        image_snapshot_stg = no
+        check_image_stg = no
+        vgtest_name = vg_kvm_test_enospc
+        lvtest_name = lv_kvm_test_enospc
+        background_cmd = "nohup dd if=/dev/zero of=%s bs=1024 &"
+        kill_vm = yes
+
+    - qmp_basic: install setup image_copy unattended_install.cdrom
+        type = qmp_basic
+
+    - qmp_basic_rhel6: install setup image_copy unattended_install.cdrom
+        type = qmp_basic_rhel6
+
+    - vlan: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = vlan
+        # subnet should not be used by host
+        subnet = "192.168"
+        vlan_num = 5
+        file_size = 10
+        maximal = 4094
+        listen_cmd = "nc -l %s > %s"
+        send_cmd = "nc %s %s < %s"
+        nic_mode = tap
+        vms += " vm2"
+        image_snapshot = yes
+        kill_vm_vm2 = yes
+        kill_vm_gracefully_vm2 = no
+
+    - ping: install setup image_copy unattended_install.cdrom
+        type = ping
+        counts = 100
+        flood_minutes = 10
+        nics += ' nic2'
+
+    - jumbo: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = jumbo
+
+    - file_transfer: install setup image_copy unattended_install.cdrom
+        type = file_transfer
+        filesize = 4000
+        transfer_timeout = 1000
+        variants:
+            - remote:
+                transfer_type = remote
+
+    - nicdriver_unload: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = nicdriver_unload
+        nic_mode = tap
+        filesize = 100
+        transfer_timeout = 100
+        transfer_type = remote
+        sessions_num = 10
+
+    - nic_promisc: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = nic_promisc
+        filesize = 400
+        transfer_timeout = 100
+        transfer_type = remote
+
+    - multicast: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = multicast
+        nic_mode = tap
+        mcast = 225.0.0.1
+        mgroup_count = 20
+        flood_minutes = 1
+
+    - mac_change: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = mac_change
+        kill_vm = yes
+
+    - netperf: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = netperf
+        nics += ' nic2 nic3 nic4'
+        nic_mode = tap
+        netperf_files = netperf-2.4.5.tar.bz2 wait_before_data.patch
+        packet_size = 1500
+        setup_cmd = "cd %s && tar xvfj netperf-2.4.5.tar.bz2 && cd netperf-2.4.5 && patch -p0 < ../wait_before_data.patch && ./configure && make"
+        netserver_cmd =  %s/netperf-2.4.5/src/netserver
+        variants:
+            - stream:
+                netperf_cmd = %s/netperf-2.4.5/src/netperf -t %s -H %s -l 60 -- -m %s
+                protocols = "TCP_STREAM TCP_MAERTS TCP_SENDFILE UDP_STREAM"
+            - rr:
+                netperf_cmd = %s/netperf-2.4.5/src/netperf -t %s -H %s -l 60 -- -r %s
+                protocols = "TCP_RR TCP_CRR UDP_RR"
+
+    - ethtool: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = ethtool
+        filesize = 512
+        nic_mode = tap
+
+    - nic_bonding: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = nic_bonding
+        nics += ' nic2 nic3 nic4'
+        image_snapshot = yes
+        serial_login = yes
+        test_timeout = 1000
+        filesize = 4000
+        transfer_timeout = 1000
+        transfer_type = remote
+        kill_vm = yes
+        # you can specify the parameters of bonding module here
+        # bonding_params = "mode=active-backup"
+
+    - set_link: install setup image_copy unattended_install.cdrom
+        type = set_link
+        test_timeout = 1000
+        filesize = 4000
+        transfer_timeout = 1000
+        transfer_type = remote
+        kill_vm =yes
+
+    - physical_resources_check: install setup image_copy unattended_install.cdrom
+        type = physical_resources_check
+        catch_uuid_cmd = dmidecode | awk -F: '/UUID/ {print $2}'
+
+    - ksm_overcommit: install setup image_copy unattended_install.cdrom
+        only Linux
+        # Don't preprocess any vms as we need to change its params
+        vms = ''
+        image_snapshot = yes
+        kill_vm_gracefully = no
+        type = ksm_overcommit
+        # Make host use swap (a value of 'no' will turn off host swap)
+        ksm_swap = yes
+        no hugepages
+        # Overcommit of host memmory
+        ksm_overcommit_ratio = 3
+        # Max paralel runs machine
+        ksm_parallel_ratio = 4
+        # Host memory reserve (default - best fit for used mem)
+        # ksm_host_reserve = 512
+        # ksm_guest_reserve = 1024
+        variants:
+            - ksm_serial:
+                ksm_mode = "serial"
+            - ksm_parallel:
+                ksm_mode = "parallel"
+
+    - iofuzz: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = iofuzz
+
+    - virtio_console: install setup image_copy unattended_install.cdrom
+        only Linux
+        vms = ''
+        type = virtio_console
+        # Default number of consoles
+        virtio_console_no_serialports = 0
+        virtio_console_no_consoles = 0
+
+        # smoke params - $console_type:data_string
+        # FIXME: test_smoke doesn't work with console yet (virtio_console bug)
+        # "serialport;console:Custom data"
+        smoke_test = yes
+        virtio_console_smoke = "serialport"
+        # loopback params - '$source_console_type@buffer_length:$destination_console_type1@buffer_length:...:$loopback_buffer_length;...'
+        loopback_test = yes
+        virtio_console_loopback = "serialport:serialport;serialport@1024:serialport@32:console@1024:console@8:16"
+        # perf params - $console_type@buffer_length:$test_duration
+        # FIXME: test_perf doesn't work with console yet (virtio_console bug)
+        # virtio_console_perf = "serialport;serialport@1000000:120;console@1024:60"
+        perf_test = yes
+        virtio_console_perf = "serialport;serialport@1000000:120"
+        # Enable destructive tests: "test_name  = yes"
+        # Disable test: change yes or delete key.
+        rmmod_test = yes
+        max_ports_test = yes
+        shutdown_test = yes
+
+        # Offline migration params - '$console_type:$no_migrations:$send-:$recv-$loopback-buffer_length'
+        migrate_offline_test = yes
+        virtio_console_migration_offline = "serialport:1:2048:2048:2048;serialport:5:4096:4096:4096"
+
+        # Online migration params - '$console_type:$no_migrations:$send-:$recv-$loopback-buffer_length'
+        migrate_online_test = yes
+        virtio_console_migration_online = "serialport:1:2048:2048:2048;serialport:5:4096:4096:4096"
+
+        hotplug_test = yes
+        hotplug_serial_test = yes
+        hotplug_console_test = no
+
+    # This unit test module is for older branches of KVM that use the
+    # kvmctl test harness (such as the code shipped with RHEL 5.x)
+    - unit_test_kvmctl:
+        type = unit_test
+        vms = ''
+        profilers = ''
+        variants:
+            - access:
+                case = access
+            - apic:
+                case = apic
+            - emulator:
+                case = emulator
+            - hypercall:
+                case = hypercall
+            - msr:
+                case = msr
+            - port80:
+                case = port80
+            - realmode:
+                case = realmode
+            - sieve:
+                case = sieve
+            - smptest:
+                case = smptest
+            - tsc:
+                case = tsc
+            - stringio:
+                case = stringio
+            - vmexit:
+                case = vmexit
+
+    - fillup_disk: install setup image_copy unattended_install.cdrom
+        only Linux
+        only qcow2
+        type = fillup_disk
+        fillup_timeout = 120
+        fillup_size = 200
+        fillup_cmd = "dd if=/dev/zero of=/%s/fillup.%d bs=%dM count=1 oflag=direct"
+        kill_vm = yes
+
+    - lvm: install setup image_copy unattended_install.cdrom
+        only Linux
+        images += ' stg1 stg2'
+        image_name_stg1 = storage_4k
+        image_cluster_size_stg1 = 4096
+        image_size_stg1 = 1G
+        image_format_stg1 = qcow2
+        image_name_stg2 = storage_64k
+        image_cluster_size_stg2 = 65536
+        image_size_stg2 = 1G
+        image_format_stg2 = qcow2
+        guest_testdir = /mnt
+        disks = "/dev/sdb /dev/sdc"
+        kill_vm = no
+        post_command_noncritical = no
+        variants:
+            lvm_create:
+                type = lvm
+                force_create_image_stg1 = yes
+                force_create_image_stg2 = yes
+                clean = no
+            lvm_fill: lvm_create
+                type = fillup_disk
+                force_create_image_stg1 = no
+                force_create_image_stg2 = no
+                guest_testdir = /mnt/kvm_test_lvm
+                fillup_timeout = 120
+                fillup_size = 20
+                fillup_cmd = "dd if=/dev/zero of=%s/fillup.%d bs=%dM count=1 oflag=direct"
+            lvm_ioquit: lvm_create
+                type = ioquit
+                force_create_image_stg1 = no
+                force_create_image_stg2 = no
+                kill_vm = yes
+                background_cmd = "for i in 1 2 3 4; do (dd if=/dev/urandom of=/mnt/kvm_test_lvm/file bs=102400 count=10000000 &); done"
+                check_cmd = pgrep dd
+                clean = yes
+                remove_image_stg1 = yes
+                remove_image_stg2 = yes
+
+    - ioquit: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = ioquit
+        background_cmd = "for i in 1 2 3 4; do (dd if=/dev/urandom of=/tmp/file bs=102400 count=10000000 &); done"
+        check_cmd = ps -a |grep dd
+        login_timeout = 360
+
+    - multi_disk: install setup image_copy unattended_install.cdrom
+        type = multi_disk
+        force_create_image = yes
+        force_create_image_image1 = no
+        remove_image = yes
+        remove_image_image1 = no
+        cmd_timeout = 1000
+        block_list = C: D: vda vda1 vda2 hda hda1 hda2 sda sda1 sda2
+        variants:
+            - signal_repeat:
+                images += " stg"
+                image_format_stg = qcow2
+                image_name_stg = storage
+                image_size_stg = 1G
+                n_repeat = 10
+            - max_disk:
+                only virtio_blk
+                images += " stg stg2 stg3 stg4 stg5 stg6 stg7 stg8 stg9 stg10 stg11 stg12 stg13 stg14 stg15 stg16 stg17 stg18 stg19 stg20 stg21 stg22 stg23"
+                image_name_stg = storage
+                image_name_stg2 = storage2
+                image_name_stg3 = storage3
+                image_name_stg4 = storage4
+                image_name_stg5 = storage5
+                image_name_stg6 = storage6
+                image_name_stg7 = storage7
+                image_name_stg8 = storage8
+                image_name_stg9 = storage9
+                image_name_stg10 = storage10
+                image_name_stg11 = storage11
+                image_name_stg12 = storage12
+                image_name_stg13 = storage13
+                image_name_stg14 = storage14
+                image_name_stg15 = storage15
+                image_name_stg16 = storage16
+                image_name_stg17 = storage17
+                image_name_stg18 = storage18
+                image_name_stg19 = storage19
+                image_name_stg20 = storage20
+                image_name_stg21 = storage21
+                image_name_stg22 = storage22
+                image_name_stg23 = storage23
+
+    - clock_getres: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = clock_getres
+
+    - yum_update: install setup image_copy unattended_install.cdrom
+        only Fedora, RHEL
+        type = yum_update
+        shell_prompt = "Is this ok"
+
+    - kdump: install setup image_copy unattended_install.cdrom
+        only Linux
+        type = kdump
+        # time waited for the completion of crash dump
+        # crash_timeout = 360
+        # command to add the crashkernel=X@Y to kernel cmd line
+        # kernel_param_cmd = "grubby --update-kernel=`grubby --default-kernel` --args=crashkernel=128M@64M"
+        # command to enable kdump service
+        # kdump_enable_cmd = chkconfig kdump on && service kdump start
+        # command to probe the crash kernel
+        # crash_kernel_prob_cmd = "grep -q 1 /sys/kernel/kexec_crash_loaded"
+
+    - vmstop: install setup image_copy unattended_install.cdrom
+        type = vmstop
+        # the path used to store the saved vm state
+        # save_path = /tmp
+        # clean the state file?
+        clean_save = yes
+
+    - trans_hugepage: install setup image_copy unattended_install.cdrom
+        thp_test_config = ""
+        kill_vm = yes
+        login_timeout = 360
+        variants:
+            - base:
+                type = trans_hugepage
+                dd_timeout = 900
+            - defrag:
+                type = trans_hugepage_defrag
+            - swapping:
+                type = trans_hugepage_swapping
+                dd_timeout = 900
+                check_cmd_timeout = 900
+
+    # system_powerdown, system_reset and shutdown *must* be the last ones
+    # defined (in this order), since the effect of such tests can leave
+    # the VM on a bad state.
+    - system_powerdown: install setup image_copy unattended_install.cdrom
+        type = shutdown
+        shutdown_method = system_powerdown
+        sleep_before_powerdown = 20
+        kill_vm = yes
+
+    - system_reset: install setup image_copy unattended_install.cdrom
+        type = boot
+        reboot_method = system_reset
+        sleep_before_reset = 20
+        kill_vm_on_error = yes
+
+    - system_reset_bootable: install setup image_copy unattended_install.cdrom
+        type = system_reset_bootable
+        interval = 1
+        reset_times = 20
+        wait_time_for_reset = 120
+        kill_vm_on_error = yes
+
+    - shutdown: install setup image_copy unattended_install.cdrom
+        type = shutdown
+        shutdown_method = shell
+        kill_vm = yes
+        kill_vm_gracefully = no
+    # Do not define test variants below shutdown
+
+
+# NICs
+variants:
+    - @rtl8139:
+        nic_model = rtl8139
+        no ethtool
+        jumbo:
+            mtu = 1500
+    - e1000:
+        nic_model = e1000
+        jumbo:
+            mtu = 16110
+        ethtool:
+                # gso gro lro is only supported by latest kernel
+                supported_features = "tx rx sg tso gso gro lro"
+    - virtio_net:
+        nic_model = virtio
+        # You can add advanced attributes on nic_extra_params such as mrg_rxbuf
+        #nic_extra_params =
+        # You can add advanced attributes through netdev_extra_params
+        # such as sndbuf, as an example, you can uncomment the
+        # following lines to enable the vhost support ( only available
+        # for tap )
+        #netdev_extra_params = "vhost=on"
+        jumbo:
+            mtu = 65520
+        ethtool:
+            supported_features = "tx sg tso gso"
+        whql.submission.device.net:
+            test_device = VirtIO Ethernet Adapter$
+            # Device selection for the NDISTest client machine
+            dp_regex_testdev = VirtIO Ethernet Adapter$
+            dp_regex_clientmsgdev = VirtIO Ethernet Adapter #2$
+            dp_regex_clientsupportdev = VirtIO Ethernet Adapter #3$
+            # Device selection for the NDISTest server machine
+            dp_regex_servermsgdev = VirtIO Ethernet Adapter$
+            dp_regex_serversupportdev = VirtIO Ethernet Adapter #2$
+
+# Guests
+variants:
+    # Linux section
+    - @Linux:
+        shutdown_command = shutdown -h now
+        reboot_command = shutdown -r now
+        status_test_command = echo $?
+        username = root
+        password = 123456
+        shell_client = ssh
+        shell_port = 22
+        file_transfer_client = scp
+        file_transfer_port = 22
+        mem_chk_cmd = dmidecode -t 17 | awk -F: '/Size/ {print $2}'
+        mem_chk_cur_cmd = grep MemTotal /proc/meminfo
+        cpu_chk_cmd = grep -c processor /proc/cpuinfo
+        unattended_install:
+            # If you want to use floppy to hold kickstarts,
+            # comment the 3 lines below
+            cdroms += " unattended"
+            drive_index_unattended = 1
+            drive_index_cd1 = 2
+        timedrift:
+            extra_params += " -no-kvm-pit-reinjection"
+            time_command = date +'TIME: %a %m/%d/%Y %H:%M:%S.%N'
+            time_filter_re = "(?:TIME: \w\w\w )(.{19})(?:\.\d\d)"
+            time_format = "%m/%d/%Y %H:%M:%S"
+            guest_load_command = "dd if=/dev/urandom of=/dev/null"
+            guest_load_instances = 2
+            guest_load_stop_command = "killall -9 dd"
+            host_load_command = "bzip2 -c --best /dev/urandom > /dev/null"
+            host_load_instances = 8
+            ntp:
+                time_command = "ntpdate -d -q ns1.nay.redhat.com"
+                time_filter_re = "originate timestamp:.*, (.\w+\s+\d+\s+\d+\s+\d+:\d+:\d+)\.(.\d+)"
+                time_format = "%b %d %Y %H:%M:%S"
+            date:
+                time_command = date +'TIME: %a %m/%d/%Y %H:%M:%S.%N'
+                time_filter_re = "(?:TIME: \w\w\w )(.{19})(?:\.\d\d)"
+                time_format = "%m/%d/%Y %H:%M:%S"
+        file_transfer:
+            tmp_dir = /tmp/
+            clean_cmd = rm -f
+        nicdriver_unload:
+            readlink_command = readlink -e
+            sys_path = "/sys/class/net/%s/device/driver"
+        multi_disk:
+            show_mount_cmd = mount|gawk '/mnt/{print $1}'
+            clean_cmd = "\rm -rf /mnt/*"
+            cmd_list = "copy_to_command copy_from_command"
+            file_system = "ext3 ext2"
+            mount_command = mkdir /mnt/%s && mount /dev/%s /mnt/%s
+            umount_command = umount /dev/%s && rmdir /mnt/%s
+            list_volume_command = cd /dev && \ls [vhs]d?
+            re_str = "[vhs]d[a-z]"
+            format_command = echo y | mkfs -t %s /dev/%s
+            copy_to_command = \cp -rf /bin/ls /mnt/%s
+            copy_from_command = \cp -rf /mnt/%s/ls /tmp/ls
+            compare_command = cd /bin && md5sum ls > /tmp/ls.md5 && cd /tmp && md5sum -c ls.md5
+            check_result_key_word = OK
+            max_disk:
+                 images += " stg24 stg25 stg26 stg27"
+                 image_name_stg24 = storage24
+                 image_name_stg25 = storage25
+                 image_name_stg26 = storage26
+                 image_name_stg27 = storage27
+                 list_volume_command = cd /dev && \ls vd*
+                 re_str = "[vhs]d[a-z][^0-9]"
+
+        variants:
+            - Fedora:
+                no setup
+                os_type = linux
+                shell_prompt = "^\[.*\][\#\$]\s*$"
+                unattended_install:
+                    boot_path = "images/pxeboot"
+                    # You have to use ks=floppy if you want to use floppies to
+                    # hold your kickstart file
+                    #extra_params += " ks=floppy nicdelay=60 console=ttyS0,115200 console=tty0"
+                    extra_params += " ks=cdrom nicdelay=60 console=ttyS0,115200 console=tty0"
+
+                variants:
+                    - 8.32:
+                        no setup
+                        image_name = fc8-32
+                        install:
+                            steps = Fedora-8-i386.steps
+                            cdrom_cd1 = isos/linux/Fedora-8-i386-DVD.iso
+                            md5sum_cd1 = dd6c79fddfff36d409d02242e7b10189
+                            md5sum_1m_cd1 = dabae451bb69fbbad0e505b25144b1f9
+                        unattended_install:
+                            unattended_file = unattended/Fedora-8.ks
+                            #floppy = images/f8-32/ks.vfd
+                            cdrom_unattended = images/f8-32/ks.iso
+                            kernel = images/f8-32/vmlinuz
+                            initrd = images/f8-32/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-8-i386-DVD.iso
+                            md5sum_cd1 = dd6c79fddfff36d409d02242e7b10189
+                            md5sum_1m_cd1 = dabae451bb69fbbad0e505b25144b1f9
+
+                    - 8.64:
+                        no setup
+                        image_name = f8-64
+                        install:
+                            steps = Fedora-8-64.steps
+                            cdrom_cd1 = isos/linux/Fedora-8-x86_64-DVD.iso
+                            md5sum_cd1 = 2cb231a86709dec413425fd2f8bf5295
+                            md5sum_1m_cd1 = 145f6414e19492649a56c89f0a45e719
+                        unattended_install:
+                            unattended_file = unattended/Fedora-8.ks
+                            #floppy = images/f8-64/ks.vfd
+                            cdrom_unattended = images/f8-64/ks.iso
+                            kernel = images/f8-64/vmlinuz
+                            initrd = images/f8-64/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-8-x86_64-DVD.iso
+                            md5sum_cd1 = 2cb231a86709dec413425fd2f8bf5295
+                            md5sum_1m_cd1 = 145f6414e19492649a56c89f0a45e719
+
+                    - 9.32:
+                        image_name = f9-32
+                        install:
+                            steps = Fedora-9-i386.steps
+                            cdrom_cd1 = isos/linux/Fedora-9-i386-DVD.iso
+                            md5sum_cd1 = 72601f685ea8c808c303353d8bf4d307
+                            md5sum_1m_cd1 = f24fa25689e5863f1b99984c6feb787f
+                        unattended_install:
+                            unattended_file = unattended/Fedora-9.ks
+                            #floppy = images/f9-32/ks.vfd
+                            cdrom_unattended = images/f9-32/ks.iso
+                            kernel = images/f9-32/vmlinuz
+                            initrd = images/f9-32/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-9-i386-DVD.iso
+                            md5sum_cd1 = 72601f685ea8c808c303353d8bf4d307
+                            md5sum_1m_cd1 = f24fa25689e5863f1b99984c6feb787f
+
+
+                    - 9.64:
+                        image_name = f9-64
+                        install:
+                            steps = Fedora-9-64.steps
+                            cdrom_cd1 = isos/linux/Fedora-9-x86_64-DVD.iso
+                            md5sum_cd1 = 05b2ebeed273ec54d6f9ed3d61ea4c96
+                            md5sum_1m_cd1 = 9822ab5097e37e8fe306ef2192727db4
+                        unattended_install:
+                            unattended_file = unattended/Fedora-9.ks
+                            #floppy = images/f9-64/ks.vfd
+                            cdrom_unattended = images/f9-64/ks.iso
+                            kernel = images/f9-64/vmlinuz
+                            initrd = images/f9-64/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-9-x86_64-DVD.iso
+                            md5sum_cd1 = 05b2ebeed273ec54d6f9ed3d61ea4c96
+                            md5sum_1m_cd1 = 9822ab5097e37e8fe306ef2192727db4
+
+
+                    - 10.32:
+                        image_name = f10-32
+                        unattended_install:
+                            unattended_file = unattended/Fedora-10.ks
+                            #floppy = images/f10-32/ks.vfd
+                            cdrom_unattended = images/f10-32/ks.iso
+                            kernel = images/f10-32/vmlinuz
+                            initrd = images/f10-32/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-10-i386-DVD.iso
+                            md5sum_cd1 = 27e581edb392728c4a07d00d3fc5ced0
+                            md5sum_1m_cd1 = bd67c68bdf595e4ba7131ec702159181
+
+                    - 10.64:
+                        image_name = f10-64
+                        unattended_install:
+                            unattended_file = unattended/Fedora-10.ks
+                            #floppy = images/f10-64/ks.vfd
+                            cdrom_unattended = images/f10-64/ks.iso
+                            kernel = images/f10-64/vmlinuz
+                            initrd = images/f10-64/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-10-x86_64-DVD.iso
+                            sha1sum_cd1 = f1e5ae7db6a1ba227de7294c4112385922388648
+                            md5sum_1m_cd1 = 732857cbf40c80c34683e874601d982c
+
+                    - 11.32:
+                        image_name = f11-32
+                        install:
+                            steps = Fedora-11-32.steps
+                        unattended_install:
+                            unattended_file = unattended/Fedora-11.ks
+                            #floppy = images/f11-32/ks.vfd
+                            cdrom_unattended = images/f11-32/ks.iso
+                            kernel = images/f11-32/vmlinuz
+                            initrd = images/f11-32/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-11-i386-DVD.iso
+                            md5sum_cd1 = e3b1e2d1ba42aa4705fa5f41771b3927
+                            md5sum_1m_cd1 = dc8ddf90648c247339c721395aa49714
+
+                    - 11.64:
+                        image_name = f11-64
+                        unattended_install:
+                            unattended_file = unattended/Fedora-11.ks
+                            #floppy = images/f11-64/ks.vfd
+                            cdrom_unattended = images/f11-64/ks.iso
+                            kernel = images/f11-64/vmlinuz
+                            initrd = images/f11-64/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-11-x86_64-DVD.iso
+                            md5sum_cd1 = 9d419844adeb93120215fe7505c9bce8
+                            md5sum_1m_cd1 = 405ee05e2387a2e4328b008d5bcbdd1e
+
+                    - 12.32:
+                        image_name = f12-32
+                        unattended_install:
+                            unattended_file = unattended/Fedora-12.ks
+                            #floppy = images/f12-32/ks.vfd
+                            cdrom_unattended = images/f12-32/ks.iso
+                            kernel = images/f12-32/vmlinuz
+                            initrd = images/f12-32/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-12-i386-DVD.iso
+                            md5sum_cd1 = 2c4c1c0d09f2fbcfd8ee6a0c5542eeb2
+                            md5sum_1m_cd1 = eee935d7f0cf2ef03f6ddce3a2a50050
+
+                    - 12.64:
+                        image_name = f12-64
+                        unattended_install:
+                            unattended_file = unattended/Fedora-12.ks
+                            #floppy = images/f12-64/ks.vfd
+                            cdrom_unattended = images/f12-64/ks.iso
+                            kernel = images/f12-64/vmlinuz
+                            initrd = images/f12-64/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-12-x86_64-DVD.iso
+                            md5sum_cd1 = 6dd31e292cc2eb1140544e9b1ba61c56
+                            md5sum_1m_cd1 = 514efbd7698b55ff6768c8605438bfc5
+
+                    - 13.32:
+                        image_name = f13-32
+                        unattended_install:
+                            unattended_file = unattended/Fedora-13.ks
+                            #floppy = images/f13-32/ks.vfd
+                            cdrom_unattended = images/f13-32/ks.iso
+                            kernel = images/f13-32/vmlinuz
+                            initrd = images/f13-32/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-13-i386-DVD.iso
+                            md5sum_cd1 = 212fec517c2629b4b5eaf3662ac13136
+                            md5sum_1m_cd1 = 4e1578a6ed5a6e7cd03b8fb074030746
+
+                    - 13.64:
+                        image_name = f13-64
+                        unattended_install:
+                            unattended_file = unattended/Fedora-13.ks
+                            #floppy = images/f13-64/ks.vfd
+                            cdrom_unattended = images/f13-64/ks.iso
+                            kernel = images/f13-64/vmlinuz
+                            initrd = images/f13-64/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-13-x86_64-DVD.iso
+                            md5sum_cd1 = 6fbae6379cf27f36e1f2c7827ba7dc35
+                            md5sum_1m_cd1 = 68821b9de4d3b5975d6634334e7f47a6
+
+                    - 14.32:
+                        image_name = f14-32
+                        unattended_install:
+                            unattended_file = unattended/Fedora-14.ks
+                            #floppy = images/f14-32/ks.vfd
+                            cdrom_unattended = images/f14-32/ks.iso
+                            #kernel = images/f14-32/vmlinuz
+                            #initrd = images/f14-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-14-i386-DVD.iso
+                            md5sum_cd1 = 1cc67641506d2f931d669b8d3528dded
+                            md5sum_1m_cd1 = d314ab126dabab686111e6a0d71d2e67
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+                    - 14.64:
+                        image_name = f14-64
+                        unattended_install:
+                            unattended_file = unattended/Fedora-14.ks
+                            #floppy = images/f14-64/ks.vfd
+                            cdrom_unattended = images/f14-64/ks.iso
+                            #kernel = images/f14-64/vmlinuz
+                            #initrd = images/f14-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-14-x86_64-DVD.iso
+                            md5sum_cd1 = f2ebf941dc45f99ee3e8a457c9544552
+                            md5sum_1m_cd1 = df029f9cffbc3517937a91124a1e0c3a
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+                    - 15.32:
+                        image_name = f15-32
+                        unattended_install:
+                            unattended_file = unattended/Fedora-15.ks
+                            #floppy = images/f15-32/ks.vfd
+                            cdrom_unattended = images/f15-32/ks.iso
+                            #kernel = images/f15-32/vmlinuz
+                            #initrd = images/f15-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-15-i386-DVD.iso
+                            md5sum_cd1 = 9a91492ac84dde9ceff0cb346a079487
+                            md5sum_1m_cd1 = 82a6005e8b7740628c6e53eef92f6bc1
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+                    - 15.64:
+                        image_name = f15-64
+                        unattended_install:
+                            unattended_file = unattended/Fedora-15.ks
+                            #floppy = images/f15-64/ks.vfd
+                            cdrom_unattended = images/f15-64/ks.iso
+                            #kernel = images/f15-64/vmlinuz
+                            #initrd = images/f15-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/Fedora-15-x86_64-DVD.iso
+                            md5sum_cd1 = c122a2a4f478da4a3d2d12396e84244e
+                            md5sum_1m_cd1 = c02f37e293bbc85be02a7c850a61273a
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+            - DSL-4.2.5:
+                no setup dbench bonnie linux_s3
+                image_name = dsl-4.2.5
+                install:
+                    steps = DSL-4.2.5.steps
+                    cdrom_cd1 = isos/linux/dsl-4.2.5.iso
+                    md5sum_cd1 = 61694888aede3e01229865b8e6acd4a1
+                    md5sum_1m_cd1 = 527f2481bd25310f2e3a6e5345ff3d12
+
+            - Mandriva-One-2007:
+                only install
+                image_name = mandriva-one-2007
+                steps = Mandriva-One-2007-32.steps
+                cdrom_cd1 = isos/linux/mandriva-one-2007-i386.iso
+                md5sum_cd1 = 7e9e183dc11b9d39f480238e4e12bb05
+                md5sum_1m_cd1 = dc7865a75db665efc86d59bca7c1fe07
+
+            - OpenSUSE:
+                no setup
+                shell_prompt = ".*:.*\s#"
+                unattended_install:
+                    # You have to use autoyast=floppy if you want to use floppies to
+                    # hold your autoyast file
+                    #extra_params += " 'autoyast=floppy console=ttyS0,115200 console=tty0'"
+                    extra_params += " 'autoyast=device://scd0/autoinst.xml console=ttyS0,115200 console=tty0'"
+                    wait_no_ack = yes
+
+                variants:
+                    - 11.0.32:
+                        image_name = openSUSE-11.0-32
+                        install:
+                            steps = openSUSE-11.0-32.steps
+                            cdrom_cd1 = isos/linux/openSUSE-11.0-DVD-i386.iso
+                            md5sum_cd1 = ed6a5b3feb668866df812b1c2aed9d7f
+                            md5sum_1m_cd1 = c720b30557af758e69de450409516369
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse-11-0-32/autoyast.vfd
+                            cdrom_unattended = images/opensuse-11-0-32/autoyast.iso
+                            kernel = images/opensuse-11-0-32/linux
+                            initrd = images/opensuse-11-0-32/initrd
+                            boot_path = boot/i386/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.0-DVD-i386.iso
+                            md5sum_cd1 = ed6a5b3feb668866df812b1c2aed9d7f
+                            md5sum_1m_cd1 = c720b30557af758e69de450409516369
+
+
+                    - 11.0.64:
+                        image_name = openSUSE-11.0-64
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse-11-0-64/autoyast.vfd
+                            cdrom_unattended = images/opensuse-11-0-64/autoyast.iso
+                            kernel = images/opensuse-11-0-64/linux
+                            initrd = images/opensuse-11-0-64/initrd
+                            boot_path = boot/x86_64/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.0-DVD-x86_64.iso
+                            md5sum_cd1 = 512c8346b0f8eb35f28c4eb96454d391
+                            md5sum_1m_cd1 = 661aa4cd031df2f25ea0102318a3f4d1
+
+                    - 11.1.32:
+                        image_name = openSUSE-11.1-32
+                        install:
+                            steps = openSUSE-11.1-32-and-64.steps
+                            cdrom_cd1 = isos/linux/openSUSE-11.1-DVD-i586.iso
+                            md5sum_cd1 = 8f51b278c0415be28c5699e465444bd3
+                            md5sum_1m_cd1 = b70217417468389083429f81ba7ce2bd
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse-11-1-32/autoyast.vfd
+                            cdrom_unattended = images/opensuse-11-1-32/autoyast.iso
+                            kernel = images/opensuse-11-1-32/linux
+                            initrd = images/opensuse-11-1-32/initrd
+                            boot_path = boot/i386/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.1-DVD-i586.iso
+                            md5sum_cd1 = 8f51b278c0415be28c5699e465444bd3
+                            md5sum_1m_cd1 = b70217417468389083429f81ba7ce2bd
+
+                    - 11.1.64:
+                        image_name = openSUSE-11.1-64
+                        install:
+                            steps=openSUSE-11.1-32-and-64.steps
+                            cdrom_cd1 = isos/linux/openSUSE-11.1-DVD-x86_64.iso
+                            md5sum_cd1 = 2afee1b8a87175e6dee2b8dbbd1ad8e8
+                            md5sum_1m_cd1 = 768ca32503ef92c28f2d144f2a87e4d0
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse-11-1-64/autoyast.vfd
+                            cdrom_unattended = images/opensuse-11-1-64/autoyast.iso
+                            kernel = images/opensuse-11-1-64/linux
+                            initrd = images/opensuse-11-1-64/initrd
+                            boot_path = boot/x86_64/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.1-DVD-x86_64.iso
+                            md5sum_cd1 = 2afee1b8a87175e6dee2b8dbbd1ad8e8
+                            md5sum_1m_cd1 = 768ca32503ef92c28f2d144f2a87e4d0
+
+
+                    - 11.2.32:
+                        image_name = openSUSE-11.2-32
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse-11-2-32/autoyast.vfd
+                            cdrom_unattended = images/opensuse-11-2-32/autoyast.iso
+                            kernel = images/opensuse-11-2-32/linux
+                            initrd = images/opensuse-11-2-32/initrd
+                            boot_path = boot/i386/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.2-DVD-i586.iso
+                            md5sum_cd1 = 295d713314a30ad017948f0d542c6d92
+                            md5sum_1m_cd1 = 1f8767d00acb492be5a5627c834e543f
+
+
+                    - 11.2.64:
+                        image_name = openSUSE-11.2-64
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse11-2-64/autoyast.vfd
+                            cdrom_unattended = images/opensuse11-2-64/autoyast.iso
+                            kernel = images/opensuse-11-2-64/linux
+                            initrd = images/opensuse-11-2-64/initrd
+                            boot_path = boot/x86_64/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.2-DVD-x86_64.iso
+                            md5sum_cd1 = 6a09295e34dc030319d040f67f4742c6
+                            md5sum_1m_cd1 = 11fd11d39744450b898f04c371dde2e7
+
+                    - 11.3.32:
+                        image_name = openSUSE-11.3-32
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse-11-3-32/autoyast.vfd
+                            cdrom_unattended = images/opensuse-11-3-32/autoyast.iso
+                            kernel = images/opensuse-11-3-32/linux
+                            initrd = images/opensuse-11-3-32/initrd
+                            boot_path = boot/i386/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.3-DVD-i586.iso
+                            md5sum_cd1 = 1a1da28c84e3cdad750d5cfa21c4fd17
+                            md5sum_1m_cd1 = 4dd26906ce6cb3946519cb0b0de4b0f8
+
+                    - 11.3.64:
+                        image_name = openSUSE-11.3-64
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse-11-3-64/autoyast.vfd
+                            cdrom_unattended = images/opensuse-11-3-64/autoyast.iso
+                            kernel = images/opensuse-11-3-64/linux
+                            initrd = images/opensuse-11-3-64/initrd
+                            boot_path = boot/x86_64/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.3-DVD-x86_64.iso
+                            md5sum_cd1 = adf5d2a0a03c1e3aaf102fd6a4771b87
+                            md5sum_1m_cd1 = e0dd12dac30d296417256775e1234c6e
+
+                    - 11.4.32:
+                        image_name = openSUSE-11.4-32
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse-11-4-32/autoyast.vfd
+                            cdrom_unattended = images/opensuse-11-4-32/autoyast.iso
+                            kernel = images/opensuse-11-4-32/linux
+                            initrd = images/opensuse-11-4-32/initrd
+                            boot_path = boot/x86_64/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.4-DVD-i586.iso
+                            md5sum_cd1 = 5f6d6d67c3e256b2513311f4ed650515
+
+                    - 11.4.64:
+                        image_name = openSUSE-11.4-64
+                        unattended_install:
+                            unattended_file = unattended/OpenSUSE-11.xml
+                            #floppy = images/opensuse-11-4-64/autoyast.vfd
+                            cdrom_unattended = images/opensuse-11-4-64/autoyast.iso
+                            kernel = images/opensuse-11-4-64/linux
+                            initrd = images/opensuse-11-4-64/initrd
+                            boot_path = boot/x86_64/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/openSUSE-11.4-DVD-x86_64.iso
+                            md5sum_cd1 = 082ebfac494b41cd56b38fb4218c545d
+                            md5sum_1m_cd1 = 2adcc5623e6c50b5d08acb7f84aa3fb1
+
+            - SLES:
+                shell_prompt = "^root@.*[\#\$]\s*$|#"
+                unattended_install:
+                    # You have to use autoyast=floppy if you want to use floppies to
+                    # hold your autoyast file
+                    #extra_params += " 'autoyast=floppy console=ttyS0,115200 console=tty0'"
+                    extra_params += " 'autoyast=device://scd0/autoinst.xml console=ttyS0,115200 console=tty0'"
+                    kernel = linux
+                    initrd = initrd
+                    wait_no_ack = yes
+
+                variants:
+                    - 11.0.32:
+                        image_name = sles11-32
+                        unattended_install:
+                            unattended_file = unattended/SLES-11.xml
+                            #floppy = images/sles-11-0-32/autoyast.vfd
+                            cdrom_unattended = images/sles-11-0-32/autoyast.iso
+                            kernel = images/sles-11-0-32/linux
+                            initrd = images/sles-11-0-32/initrd
+                            boot_path = boot/i386/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/SLES-11-DVD-i586-GM-DVD1.iso
+                            md5sum_cd1 = 4958d4dde2575666355c8a1c5858bab0
+                            md5sum_1m_cd1 = 1f19d4eff5bcead2a3e5b8b4212b6796
+
+
+                    - 11.0.64:
+                        image_name = sles11-64
+                        cdrom_cd1 = isos/linux/SLES-11-DVD-x86_64-GM-DVD1.iso
+                        md5sum_cd1 = 50a2bd45cd12c3808c3ee48208e2586b
+                        md5sum_1m_cd1 = 00000951cab7c32e332362fc424c1054
+                        unattended_install:
+                            unattended_file = unattended/SLES-11.xml
+                            #floppy = images/sles-11-0-64/autoyast.vfd
+                            cdrom_unattended = images/sles-11-0-64/autoyast.iso
+                            kernel = images/sles-11-0-64/linux
+                            initrd = images/sles-11-0-64/initrd
+                            boot_path = boot/x86_64/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/SLES-11-DVD-x86_64-GM-DVD1.iso
+                            md5sum_cd1 = 50a2bd45cd12c3808c3ee48208e2586b
+                            md5sum_1m_cd1 = 00000951cab7c32e332362fc424c1054
+
+
+                    - 11.1.32:
+                        image_name = sles11sp1-32
+                        unattended_install:
+                            unattended_file = unattended/SLES-11.xml
+                            #floppy = images/sles-11-1-32/autoyast.vfd
+                            cdrom_unattended = images/sles-11-1-32/autoyast.iso
+                            kernel = images/sles-11-1-32/linux
+                            initrd = images/sles-11-1-32/initrd
+                            boot_path = boot/i386/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/SLES-11-SP1-DVD-i586-GM-DVD1.iso
+                            md5sum_cd1 = 0dd6886858d93501c38854552b9b1b0d
+                            md5sum_1m_cd1 = a626a3d50813410e3ac42794e05773bb
+
+                    - 11.1.64:
+                        image_name = sles11sp1-64
+                        unattended_install:
+                            unattended_file = unattended/SLES-11.xml
+                            #floppy = images/sles-11-1-64/autoyast.vfd
+                            cdrom_unattended = images/sles-11-1-64/autoyast.iso
+                            kernel = images/sles-11-1-64/linux
+                            initrd = images/sles-11-1-64/initrd
+                            boot_path = boot/x86_64/loader
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/SLES-11-SP1-DVD-x86_64-GM-DVD1.iso
+                            md5sum_cd1 = d2e10420f3689faa49a004b60fb396b7
+                            md5sum_1m_cd1 = f7f67b5da46923a9f01da8a2b6909654
+
+
+            - @Ubuntu:
+                shell_prompt = "^root@.*[\#\$]\s*$"
+
+                variants:
+                    - Ubuntu-6.10-32:
+                        only install
+                        image_name = ubuntu-6.10-32
+                        steps = Ubuntu-6.10-32.steps
+                        cdrom_cd1 = isos/linux/ubuntu-6.10-desktop-i386.iso
+                        md5sum_cd1 = 17fb825641571ce5888a718329efd016
+                        md5sum_1m_cd1 = 7531d0a84e7451d17c5d976f1c3f8509
+
+                    - Ubuntu-8.04-32:
+                        skip = yes
+                        image_name = ubuntu-8.04-32
+                        install:
+                            steps = Ubuntu-8.04-32.steps
+                            cdrom_cd1 = isos/linux/ubuntu-8.04.1-desktop-i386.iso
+                        setup:
+                            steps = Ubuntu-8.04-32-setupssh.steps
+
+                    - Ubuntu-8.10-server-32:
+                        image_name = ubuntu-8.10-server-32
+                        install:
+                            steps = Ubuntu-8.10-server-32.steps
+                            cdrom_cd1 = isos/linux/ubuntu-8.10-server-i386.iso
+                            md5sum_cd1 = a2ec9975a91e1228c8292ed9799dc302
+                            md5sum_1m_cd1 = ea493eb8ef7722ead693492fd9f8a13f
+                        setup:
+                            steps = Ubuntu-8.10-server-32-gcc.steps
+
+            - RHEL:
+                no setup
+                os_type = linux
+                shell_prompt = "^\[.*\][\#\$]\s*$"
+                nic_hotplug:
+                    modprobe_module = acpiphp
+                block_hotplug:
+                    modprobe_module = acpiphp
+                    no block_scsi
+                unattended_install:
+                    boot_path = images/pxeboot
+                    # You have to use ks=floppy if you want to use floppies to
+                    # hold your kickstart file
+                    #extra_params += " ks=floppy nicdelay=60 console=ttyS0,115200 console=tty0"
+                    extra_params += " ks=cdrom nicdelay=60 console=ttyS0,115200 console=tty0"
+
+                variants:
+                    - 3.9.i386:
+                        no setup autotest linux_s3 guest_s4 shutdown multi_disk
+                        os_variant = rhel3
+                        image_name = rhel3-32
+                        mem_chk_cmd = dmidecode | awk -F: '/Maximum Capacity/ {print $2}'
+                        install:
+                            steps=RHEL-3.9-i386.steps
+                            cdrom_cd1 = isos/linux/RHEL-3.9-i386-DVD.iso
+                            md5sum_cd1 = ddd11a1cb104119039b0fa05df6d52b8
+                            md5sum_1m_cd1 = 5f10c9417c7b8372b3456c1b5f3f9ed0
+                        unattended_install:
+                            unattended_file = unattended/RHEL-3-series.ks
+                            #floppy = images/rhel39-32/ks.vfd
+                            cdrom_unattended = images/rhel39-32/ks.iso
+                            #kernel = images/rhel39-32/vmlinuz
+                            #initrd = images/rhel39-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                            # 3.X anaconda does not support 'poweroff' on ks
+                            shutdown_cleanly = no
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-3.9-i386-DVD.iso
+                            md5sum_cd1 = ddd11a1cb104119039b0fa05df6d52b8
+                            md5sum_1m_cd1 = 5f10c9417c7b8372b3456c1b5f3f9ed0
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+                    - 3.9.x86_64:
+                        no setup autotest linux_s3 guest_s4 shutdown multi_disk
+                        os_variant = rhel3
+                        image_name = rhel3-64
+                        mem_chk_cmd = dmidecode | awk -F: '/Maximum Capacity/ {print $2}'
+                        install:
+                            steps=RHEL-3.9-x86_64.steps
+                            cdrom_cd1 = isos/linux/RHEL-3.9-x86_64-DVD.iso
+                            md5sum_cd1 = bf4635e4a4bd3b43838e72bc8c329d55
+                            md5sum_1m_cd1 = 18ecd37b639109f1b2af05cfb57dfeaf
+                        unattended_install:
+                            unattended_file = unattended/RHEL-3-series.ks
+                            #floppy = images/rhel39-64/ks.vfd
+                            cdrom_unattended = images/rhel39-64/ks.iso
+                            #kernel = images/rhel39-64/vmlinuz
+                            #initrd = images/rhel39-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                            # 3.X anaconda does not support 'poweroff' on ks
+                            shutdown_cleanly = no
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-3.9-x86_64-DVD.iso
+                            md5sum_cd1 = bf4635e4a4bd3b43838e72bc8c329d55
+                            md5sum_1m_cd1 = 18ecd37b639109f1b2af05cfb57dfeaf
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 4.7.i386:
+                        no setup autotest
+                        os_variant = rhel4
+                        image_name = rhel4-32
+                        install:
+                            steps = RHEL-4.7-i386.steps
+                            cdrom_cd1 = isos/linux/RHEL-4.7-i386-DVD.iso
+                            md5sum_cd1 = ee5092653732a88ddbaf8eef2484c500
+                            md5sum_1m_cd1 = 127081cbed825d7232331a2083975528
+                        unattended_install:
+                            unattended_file = unattended/RHEL-4-series.ks
+                            #floppy = images/rhel47-32/ks.vfd
+                            cdrom_unattended = images/rhel47-32/ks.iso
+                            #kernel = images/rhel47-32/vmlinuz
+                            #initrd = images/rhel47-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-4.7-i386-DVD.iso
+                            md5sum_cd1 = ee5092653732a88ddbaf8eef2484c500
+                            md5sum_1m_cd1 = 127081cbed825d7232331a2083975528
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                        fillup_disk:
+                            fillup_cmd = "dd if=/dev/zero of=/%s/fillup.%d bs=%dM count=1"
+                        lvm.lvm_fill:
+                            fillup_cmd = "dd if=/dev/zero of=/%s/fillup.%d bs=%dM count=1"
+
+                    - 4.7.x86_64:
+                        no setup autotest
+                        os_variant = rhel4
+                        image_name = rhel4-64
+                        install:
+                            steps = RHEL-4.7-x86_64.steps
+                            cdrom_cd1 = isos/linux/RHEL-4.7-x86_64-DVD.iso
+                            md5sum_cd1 = ea9dae16dd86f7d94092d0e672333292
+                            md5sum_1m_cd1 = 58fa63eaee68e269f4cb1d2edf479792
+                        unattended_install:
+                            unattended_file = unattended/RHEL-4-series.ks
+                            #floppy = images/rhel47-64/ks.vfd
+                            cdrom_unattended = images/rhel47-64/ks.iso
+                            #kernel = images/rhel47-64/vmlinuz
+                            #initrd = images/rhel47-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-4.7-x86_64-DVD.iso
+                            md5sum_cd1 = ea9dae16dd86f7d94092d0e672333292
+                            md5sum_1m_cd1 = 58fa63eaee68e269f4cb1d2edf479792
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                        fillup_disk:
+                            fillup_cmd = "dd if=/dev/zero of=/%s/fillup.%d bs=%dM count=1"
+                        lvm.lvm_fill:
+                            fillup_cmd = "dd if=/dev/zero of=/%s/fillup.%d bs=%dM count=1"
+
+                    - 4.8.i386:
+                        no setup autotest
+                        os_variant = rhel4
+                        image_name = rhel4-32
+                        unattended_install:
+                            unattended_file = unattended/RHEL-4-series.ks
+                            #floppy = images/rhel48-32/ks.vfd
+                            cdrom_unattended = images/rhel48-32/ks.iso
+                            #kernel = images/rhel48-32/vmlinuz
+                            #initrd = images/rhel48-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-4.8-i386-DVD.iso
+                            md5sum_cd1 = b024f0af5079539d3ef51f71fed0b194
+                            md5sum_1m_cd1 = 969c197402b9058f28a278c1f807d15b
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                        nicdriver_unload:
+                            readlink_command = readlink -f
+                            sys_path = "/sys/class/net/%s/driver"
+                        fillup_disk:
+                            fillup_cmd = "dd if=/dev/zero of=/%s/fillup.%d bs=%dM count=1"
+                        lvm.lvm_fill:
+                            fillup_cmd = "dd if=/dev/zero of=/%s/fillup.%d bs=%dM count=1"
+
+
+                    - 4.8.x86_64:
+                        no setup autotest
+                        os_variant = rhel4
+                        image_name = rhel4-64
+                        unattended_install:
+                            unattended_file = unattended/RHEL-4-series.ks
+                            #floppy = images/rhel48-64/ks.vfd
+                            cdrom_unattended = images/rhel48-64/ks.iso
+                            #kernel = images/rhel48-64/vmlinuz
+                            #initrd = images/rhel48-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-4.8-x86_64-DVD.iso
+                            md5sum_cd1 = 696bc877b0200cc942626673fcc3fc09
+                            md5sum_1m_cd1 = b11ac0ef7fd345ad712966972db63886
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                        nicdriver_unload:
+                            readlink_command = readlink -f
+                            sys_path = "/sys/class/net/%s/driver"
+                        fillup_disk:
+                            fillup_cmd = "dd if=/dev/zero of=/%s/fillup.%d bs=%dM count=1"
+                        lvm.lvm_fill:
+                            fillup_cmd = "dd if=/dev/zero of=/%s/fillup.%d bs=%dM count=1"
+
+
+                    - 5.3.i386:
+                        no setup
+                        os_variant = rhel5
+                        image_name = rhel5-32
+                        install:
+                            steps = RHEL-5.3-i386.steps
+                            cdrom_cd1 = isos/linux/RHEL-5.3-i386-DVD.iso
+                            md5sum_cd1 = 371c62851611fd32ead440df6f24a296
+                            md5sum_1m_cd1 = 242318dd44152210f6ff6cdda1bfbf51
+                        unattended_install:
+                            unattended_file = unattended/RHEL-5-series.ks
+                            #floppy = images/rhel53-32/ks.vfd
+                            cdrom_unattended = images/rhel53-32/ks.iso
+                            #kernel = images/rhel53-32/vmlinuz
+                            #initrd = images/rhel53-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-5.3-i386-DVD.iso
+                            md5sum_cd1 = 371c62851611fd32ead440df6f24a296
+                            md5sum_1m_cd1 = 242318dd44152210f6ff6cdda1bfbf51
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 5.3.x86_64:
+                        no setup
+                        os_variant = rhel5
+                        image_name = rhel5-64
+                        install:
+                            steps=RHEL-5.3-x86_64.steps
+                            cdrom_cd1 = isos/linux/RHEL-5.3-x86_64-DVD.iso
+                            md5sum_cd1 = c5ed6b284410f4d8212cafc78fd7a8c5
+                            md5sum_1m_cd1 = b999f437583098ea5bbd56fb1de1d011
+                        unattended_install:
+                            unattended_file = unattended/RHEL-5-series.ks
+                            #floppy = images/rhel53-64/ks.vfd
+                            cdrom_unattended = images/rhel53-64/ks.iso
+                            #kernel = images/rhel53-64/vmlinuz
+                            #initrd = images/rhel53-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-5.3-x86_64-DVD.iso
+                            md5sum_cd1 = c5ed6b284410f4d8212cafc78fd7a8c5
+                            md5sum_1m_cd1 = b999f437583098ea5bbd56fb1de1d011
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 5.4.i386:
+                        no setup
+                        os_variant = rhel5
+                        image_name = rhel5-32
+                        unattended_install:
+                            unattended_file = unattended/RHEL-5-series.ks
+                            #floppy = images/rhel54-32/ks.vfd
+                            cdrom_unattended = images/rhel54-32/ks.iso
+                            #kernel = images/rhel54-32/vmlinuz
+                            #initrd = images/rhel54-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-5.4-i386-DVD.iso
+                            md5sum_cd1 = 7a12ec6599527e4f3d1790b51eadbfed
+                            md5sum_1m_cd1 = 0dbeb8f58d213752d8c029e8601abfbb
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 5.4.x86_64:
+                        no setup
+                        os_variant = rhel5
+                        image_name = rhel5-64
+                        unattended_install:
+                            unattended_file = unattended/RHEL-5-series.ks
+                            #floppy = images/rhel54-64/ks.vfd
+                            cdrom_unattended = images/rhel54-64/ks.iso
+                            #kernel = images/rhel54-64/vmlinuz
+                            #initrd = images/rhel54-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-5.4-x86_64-DVD.iso
+                            md5sum_cd1 = 04fe3c10202402d7b389528d2bad0210
+                            md5sum_1m_cd1 = 3e74112003e88a966754849dbb8f5c3f
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 5.5.i386:
+                        no setup
+                        os_variant = rhel5
+                        image_name = rhel5-32
+                        unattended_install:
+                            unattended_file = unattended/RHEL-5-series.ks
+                            #floppy = images/rhel55-32/ks.vfd
+                            cdrom_unattended = images/rhel55-32/ks.iso
+                            #kernel = images/rhel55-32/vmlinuz
+                            #initrd = images/rhel55-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-5.5-i386-DVD.iso
+                            md5sum_cd1 = 148858b157f275d9153797efddfc83c3
+                            md5sum_1m_cd1 = 2502cc7ddb9d0684fe08c4a83d247902
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 5.5.x86_64:
+                        no setup
+                        os_variant = rhel5
+                        image_name = rhel5-64
+                        unattended_install:
+                            unattended_file = unattended/RHEL-5-series.ks
+                            #floppy = images/rhel55-64/ks.vfd
+                            cdrom_unattended = images/rhel55-64/ks.iso
+                            #kernel = images/rhel55-64/vmlinuz
+                            #initrd = images/rhel55-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-5.5-x86_64-DVD.iso
+                            md5sum_cd1 = f3119f883257ef9041234feda2f1cad0
+                            md5sum_1m_cd1 = a744084a03f6a08627f71527fc107a1e
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+                    - 5.6.i386:
+                        no setup
+                        os_variant = rhel5
+                        image_name = rhel5-32
+                        unattended_install:
+                            unattended_file = unattended/RHEL-5-series.ks
+                            #floppy = images/rhel56-32/ks.vfd
+                            cdrom_unattended = images/rhel56-32/ks.iso
+                            #kernel = images/rhel56-32/vmlinuz
+                            #initrd = images/rhel56-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-5.6-i386-DVD.iso
+                            md5sum_cd1 = c214653d91b81c9a7a7f7249753d0f5d
+                            md5sum_1m_cd1 = f299a881950bfec81fd5c74484e1b1d4
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 5.6.x86_64:
+                        no setup
+                        os_variant = rhel5
+                        image_name = rhel5-64
+                        unattended_install:
+                            unattended_file = unattended/RHEL-5-series.ks
+                            #floppy = images/rhel56-64/ks.vfd
+                            cdrom_unattended = images/rhel56-64/ks.iso
+                            #kernel = images/rhel56-64/vmlinuz
+                            #initrd = images/rhel56-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-5.6-x86_64-DVD.iso
+                            md5sum_cd1 = d77d3815afb381a50148ba55ad930679
+                            md5sum_1m_cd1 = 9dd97de110e391fcbed88b124a60f7a9
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 6.0.i386:
+                        no setup
+                        os_variant = rhel6
+                        nic_hotplug:
+                            modprobe_module =
+                        block_hotplug:
+                            modprobe_module =
+                        image_name = rhel6-32
+                        unattended_install:
+                            unattended_file = unattended/RHEL-6-series.ks
+                            #floppy = images/rhel60-32/ks.vfd
+                            cdrom_unattended = images/rhel60-32/ks.iso
+                            #kernel = images/rhel60-32/vmlinuz
+                            #initrd = images/rhel60-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-6.0-i386-DVD.iso
+                            md5sum_cd1 = 291d234c93442405972689b4b41c14bc
+                            md5sum_1m_cd1 = ee2cc3d3babe91a1d581a07099c4318b
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 6.0.x86_64:
+                        no setup
+                        os_variant = rhel6
+                        nic_hotplug:
+                            modprobe_module =
+                        block_hotplug:
+                            modprobe_module =
+                        image_name = rhel6-64
+                        unattended_install:
+                            unattended_file = unattended/RHEL-6-series.ks
+                            #floppy = images/rhel60-64/ks.vfd
+                            cdrom_unattended = images/rhel60-64/ks.iso
+                            #kernel = images/rhel60-64/vmlinuz
+                            #initrd = images/rhel60-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-6.0-x86_64-DVD.iso
+                            md5sum_cd1 = f7141396c6a19399d63e8c195354317d
+                            md5sum_1m_cd1 = b060eeef63e2c8700db54ae02056e80c
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 6.1.i386:
+                        no setup
+                        os_variant = rhel6
+                        nic_hotplug:
+                            modprobe_module =
+                        block_hotplug:
+                            modprobe_module =
+                        image_name = rhel6-32
+                        unattended_install:
+                            unattended_file = unattended/RHEL-6-series.ks
+                            #floppy = images/rhel61-32/ks.vfd
+                            cdrom_unattended = images/rhel61-32/ks.iso
+                            #kernel = images/rhel61-32/vmlinuz
+                            #initrd = images/rhel61-32/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-6.1-i386-DVD.iso
+                            md5sum_cd1 = f8c8a310e34d26339c99d462e3557324
+                            md5sum_1m_cd1 = 12f7692e6e20be0d42b9407d956f74c3
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+                    - 6.1.x86_64:
+                        no setup
+                        os_variant = rhel6
+                        nic_hotplug:
+                            modprobe_module =
+                        block_hotplug:
+                            modprobe_module =
+                        image_name = rhel6-64
+                        unattended_install:
+                            unattended_file = unattended/RHEL-6-series.ks
+                            #floppy = images/rhel61-64/ks.vfd
+                            cdrom_unattended = images/rhel61-64/ks.iso
+                            #kernel = images/rhel61-64/vmlinuz
+                            #initrd = images/rhel61-64/initrd.img
+                            kernel = images/pxeboot/vmlinuz
+                            initrd = images/pxeboot/initrd.img
+                        unattended_install.cdrom:
+                            cdrom_cd1 = isos/linux/RHEL-6.1-x86_64-DVD.iso
+                            md5sum_cd1 = a051dbf28ef444a019dc6660efe3e3a4
+                            md5sum_1m_cd1 = cb3b9d140404a6797b0f423dfe620ab8
+                        unattended_install.url:
+                            url = REPLACE_THIS_WITH_TREE_URL
+                            nfs_server = REPLACE_THIS_WITH_NFS_SERVER
+                            nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY
+
+
+
+    # Windows section
+    - @Windows:
+        os_type = windows
+        use_libvirt_cdrom_switch = yes
+        shutdown_command = shutdown /s /f /t 0
+        reboot_command = shutdown /r /f /t 0
+        status_test_command = echo %errorlevel%
+        shell_prompt = "^\w:\\.*>\s*$"
+        username = Administrator
+        password = 123456
+        shell_linesep = "\r\n"
+        shell_client = nc
+        shell_port = 10022
+        file_transfer_client = rss
+        file_transfer_port = 10023
+        redirs += " file_transfer"
+        guest_port_remote_shell = 10022
+        guest_port_file_transfer = 10023
+
+        # This ISO will be used for all tests except install:
+        cdrom_cd1 = isos/windows/winutils.iso
+
+        cpu_chk_cmd = echo %NUMBER_OF_PROCESSORS%
+        mem_chk_cmd = wmic memphysical
+        mem_chk_cur_cmd = wmic memphysical
+
+        unattended_install.cdrom, whql.support_vm_install:
+            timeout = 7200
+            finish_program = deps/finish.exe
+            cdroms += " winutils"
+            cdrom_winutils = isos/windows/winutils.iso
+            drive_index_winutils = 2
+            kernel =
+            initrd =
+        migrate:
+            migration_test_command = ver && vol
+            migration_bg_command = start ping -t localhost
+            migration_bg_check_command = tasklist | find /I "ping.exe"
+            migration_bg_kill_command = taskkill /IM ping.exe /F
+        migrate.with_file_transfer:
+            guest_path = C:\tmpfile
+        stress_boot:
+            alive_test_cmd = systeminfo
+        timedrift:
+            # Timedrift compensation on Windows with hpet does not happen
+            disable_hpet = yes
+            extra_params += " -rtc-td-hack"
+            time_command = "echo TIME: %date% %time%"
+            time_filter_re = "(?<=TIME: \w\w\w ).{19}(?=\.\d\d)"
+            time_format = "%m/%d/%Y %H:%M:%S"
+            # For this to work, the cdrom at d: should contain vlc (d:\vlc\vlc.exe) and a video (d:\ED_1024.avi)
+            guest_load_command = 'cmd /c "d:\vlc\vlc -f --loop --no-qt-privacy-ask --no-qt-system-tray d:\ED_1024.avi"'
+            # Alternative guest load:
+            #guest_load_command = "(dir /s && dir /s && dir /s && dir /s) > nul"
+            guest_load_stop_command = "taskkill /F /IM vlc.exe"
+            guest_load_instances = 2
+            host_load_command = "bzip2 -c --best /dev/urandom > /dev/null"
+            # Alternative host load:
+            #host_load_command = "dd if=/dev/urandom of=/dev/null"
+            host_load_instances = 8
+            ntp:
+                time_command = "w32tm /stripchart /samples:1 /computer:ns1.nay.redhat.com"
+                time_filter_re = "\d+/\d+/\d+\s\d+:\d+:\d+ [AP]M"
+                time_format = "%m/%d/%Y %H:%M:%S"
+            date:
+                time_command = "echo TIME: %date% %time%"
+                time_filter_re = "(?<=TIME: \w\w\w ).{19}(?=\.\d\d)"
+                time_format = "%m/%d/%Y %H:%M:%S"
+        guest_s4:
+            check_s4_support_cmd = powercfg /hibernate on
+            test_s4_cmd = start ping -t localhost
+            check_s4_cmd = tasklist | find /I "ping.exe"
+            set_s4_cmd = rundll32.exe PowrProf.dll, SetSuspendState
+            kill_test_s4_cmd = taskkill /IM ping.exe /F
+            services_up_timeout = 30
+        nic_hotplug:
+            reference_cmd = ipconfig /all
+            find_pci_cmd = ipconfig /all | find "Description"
+            wait_secs_for_hook_up = 10
+            nic_e1000:
+                match_string = "Intel(R) PRO/1000 MT Network Connection"
+            nic_virtio:
+                match_string = "VirtIO Ethernet"
+        block_hotplug:
+            wait_secs_for_hook_up = 10
+            reference_cmd = wmic diskdrive list brief
+            find_pci_cmd = wmic diskdrive list brief
+            pci_test_cmd = echo select disk 1 > dt && echo online >> dt && echo detail disk >> dt && echo exit >> dt && diskpart /s dt
+        physical_resources_check:
+            catch_uuid_cmd =
+        file_transfer:
+            tmp_dir = C:\
+            clean_cmd = del
+        vmstop:
+            guest_path = C:\
+        multi_disk:
+            block_list += " E:"
+            shell_port = 23
+            shell_client = telnet
+            post_cmd = del c:\cmd.exe
+            file_system = "ntfs fat32"
+            cmd_list = "copy_to_command copy_from_command"
+            list_volume_command = wmic volume get driveletter
+            re_str = "([A-Z]:)"
+            format_command = format /fs:%s %s /q /y
+            copy_to_command = copy C:\WINDOWS\system32\cmd.exe %s /y
+            copy_from_command = copy %s\cmd.exe c:\ /y
+            compare_command = fc /b c:\windows\system32\cmd.exe c:\cmd.exe
+            check_result_key_word = no difference
+            signal_repeat:
+                pre_cmd = del diskpart.script && (echo select disk 1 >> diskpart.script && echo create partition primary >> diskpart.script && echo assign >> diskpart.script) && echo select disk 0 >> diskpart.script && echo exit >> diskpart.script && diskpart /s diskpart.script
+            max_disk:
+                pre_cmd = del diskpart.script && (for /L %i in (1 1 23) do echo select disk %i >> diskpart.script && echo create partition primary >> diskpart.script && echo assign >> diskpart.script) && echo select disk 0 >> diskpart.script && echo exit >> diskpart.script && diskpart /s diskpart.script
+
+        variants:
+            - Win2000:
+                no reboot whql
+                os_variant = win2k
+                image_name = win2000-32
+                kill_vm_gracefully = no
+                install:
+                    steps = Win2000-32.steps
+                    cdrom_cd1 = isos/windows/Windows2000_sp4.iso
+                    md5sum_cd1 = dda6039f3a9173f0f6bfae40f5efdfea
+                    md5sum_1m_cd1 = dd28fba196d366d56fe774bd93df5527
+                    user = user
+                setup:
+                    steps = Win2000-32-rss.steps
+                unattended_install.cdrom:
+                    cdrom_cd1 = isos/windows/Windows2000_sp4.iso
+                    md5sum_cd1 = dda6039f3a9173f0f6bfae40f5efdfea
+                    md5sum_1m_cd1 = dd28fba196d366d56fe774bd93df5527
+                    unattended_file = unattended/win2000-32.sif
+                    floppy = images/win2000-32/answer.vfd
+
+            - WinXP:
+                image_name = winXP
+                os_variant = winxp
+                variants:
+                    - 32:
+                        image_name += -32
+                        install:
+                            cdrom_cd1 = isos/windows/WindowsXP-sp2-vlk.iso
+                            md5sum_cd1 = 743450644b1d9fe97b3cf379e22dceb0
+                            md5sum_1m_cd1 = b473bf75af2d1269fec8958cf0202bfd
+                            user = user
+                            steps = WinXP-32.steps
+                        setup:
+                            steps = WinXP-32-rss.steps
+                        unattended_install.cdrom, whql.support_vm_install:
+                            cdrom_cd1 = isos/windows/WindowsXP-sp2-vlk.iso
+                            md5sum_cd1 = 743450644b1d9fe97b3cf379e22dceb0
+                            md5sum_1m_cd1 = b473bf75af2d1269fec8958cf0202bfd
+                            unattended_file = unattended/winxp32.sif
+                            floppy = images/winXP-32/answer.vfd
+                        whql.submission:
+                            desc_path_desc1 = $\WDK\Logo Type\Device Logo\Windows XP
+                            desc_path_desc2 = $\WDK\Logo Type\Systems Logo\Windows XP
+                            dd_data_logoarch = X86
+                            dd_data_logoos = Windows XP
+                            dd_data_whqlos = Windows XP
+                            device:
+                                dd_data_whqlqual = Basic
+                            device.net:
+                                image_name_supportvm = winXP-32-supportvm
+                        multi_disk:
+                            list_volume_command = fsutil fsinfo drives
+
+
+                    - 64:
+                        image_name += -64
+                        install:
+                            cdrom_cd1 = isos/windows/WindowsXP-64.iso
+                            md5sum_cd1 = 8d3f007ec9c2060cec8a50ee7d7dc512
+                            md5sum_1m_cd1 = e812363ff427effc512b7801ee70e513
+                            user = user
+                            steps = WinXP-64.steps
+                        setup:
+                            steps = WinXP-64-rss.steps
+                        unattended_install.cdrom, whql.support_vm_install:
+                            cdrom_cd1 = isos/windows/WindowsXP-64.iso
+                            md5sum_cd1 = 8d3f007ec9c2060cec8a50ee7d7dc512
+                            md5sum_1m_cd1 = e812363ff427effc512b7801ee70e513
+                            unattended_file = unattended/winxp64.sif
+                            floppy = images/winXP-64/answer.vfd
+                        whql.submission:
+                            desc_path_desc1 = $\WDK\Logo Type\Device Logo\Windows XP
+                            desc_path_desc2 = $\WDK\Logo Type\Systems Logo\Windows XP
+                            dd_data_logoarch = AMD64
+                            dd_data_logoos = Windows XP 64-Bit Edition Version 2003
+                            dd_data_whqlos = Windows XP x64
+                            device:
+                                dd_data_whqlqual = Basic
+                            device.net:
+                                image_name_supportvm = winXP-64-supportvm
+                        multi_disk:
+                            list_volume_command = fsutil fsinfo drives
+
+
+            - Win2003:
+                os_variant = win2k3
+                image_name = win2003
+                image_size = 20G
+
+                variants:
+                    - 32:
+                        image_name += -32
+                        install:
+                            cdrom_cd1 = isos/windows/en_win_srv_2003_r2_enterprise_with_sp2_cd1_x13-05460.iso
+                            md5sum_cd1 = 7c3bc891d20c7e6a110c4f1ad82952ba
+                            md5sum_1m_cd1 = b1671ecf47a270e49e04982bf1474ff9
+                            sha1sum_cd1 = ee11cc735c695501874d2fa123f7d78449b3de7c
+                            sha1sum_1m_cd1 = e2d49dc3fbe17a6b2ba1812543f2cc08ef9565c4
+                            #cdrom_cd1 = isos/windows/Windows2003_r2_VLK.iso
+                            #md5sum_cd1 = 03e921e9b4214773c21a39f5c3f42ef7
+                            #md5sum_1m_cd1 = 37c2fdec15ac4ec16aa10fdfdb338aa3
+                            user = user
+                            steps = Win2003-32.steps
+                        setup:
+                            steps = Win2003-32-rss.steps
+                        unattended_install.cdrom, whql.support_vm_install:
+                            cdrom_cd1 = isos/windows/en_win_srv_2003_r2_enterprise_with_sp2_cd1_x13-05460.iso
+                            md5sum_cd1 = 7c3bc891d20c7e6a110c4f1ad82952ba
+                            md5sum_1m_cd1 = b1671ecf47a270e49e04982bf1474ff9
+                            sha1sum_cd1 = ee11cc735c695501874d2fa123f7d78449b3de7c
+                            sha1sum_1m_cd1 = e2d49dc3fbe17a6b2ba1812543f2cc08ef9565c4
+                            #cdrom_cd1 = isos/windows/Windows2003_r2_VLK.iso
+                            #md5sum_cd1 = 03e921e9b4214773c21a39f5c3f42ef7
+                            #md5sum_1m_cd1 = 37c2fdec15ac4ec16aa10fdfdb338aa3
+                            unattended_file = unattended/win2003-32.sif
+                            floppy = images/win2003-32/answer.vfd
+                        whql.submission:
+                            desc_path_desc1 = $\WDK\Logo Type\Device Logo\Windows Server 2003
+                            dd_data_logoarch = X86
+                            dd_data_logoos = Windows Server 2003
+                            dd_data_whqlos = Windows Server 2003
+                            device:
+                                dd_data_whqlqual = Basic
+                            device.net:
+                                image_name_supportvm = win2003-32-supportvm
+
+                    - 64:
+                        image_name += -64
+                        install:
+                            cdrom_cd1 = isos/windows/en_win_srv_2003_r2_enterprise_x64_with_sp2_cd1_x13-06188.iso
+                            md5sum_cd1 = 09f4cb31796e9802dcc477e397868c9a
+                            md5sum_1m_cd1 = c11ebcf6c128d94c83fe623566eb29d7
+                            sha1sum_cd1 = d04c8f304047397be486c38a6b769f16993d4b39
+                            sha1sum_1m_cd1 = 3daf6fafda8ba48779df65e4713a3cdbd6c9d136
+                            #cdrom_cd1 = isos/windows/Windows2003-x64.iso
+                            #md5sum_cd1 = 5703f87c9fd77d28c05ffadd3354dbbd
+                            #md5sum_1m_cd1 = 439393c384116aa09e08a0ad047dcea8
+                            user = user
+                            steps = Win2003-64.steps
+                        setup:
+                            steps = Win2003-64-rss.steps
+                        unattended_install.cdrom, whql.support_vm_install:
+                            cdrom_cd1 = isos/windows/en_win_srv_2003_r2_enterprise_x64_with_sp2_cd1_x13-06188.iso
+                            md5sum_cd1 = 09f4cb31796e9802dcc477e397868c9a
+                            md5sum_1m_cd1 = c11ebcf6c128d94c83fe623566eb29d7
+                            sha1sum_cd1 = d04c8f304047397be486c38a6b769f16993d4b39
+                            sha1sum_1m_cd1 = 3daf6fafda8ba48779df65e4713a3cdbd6c9d136
+                            #cdrom_cd1 = isos/windows/Windows2003-x64.iso
+                            #md5sum_cd1 = 5703f87c9fd77d28c05ffadd3354dbbd
+                            #md5sum_1m_cd1 = 439393c384116aa09e08a0ad047dcea8
+                            unattended_file = unattended/win2003-64.sif
+                            floppy = images/win2003-64/answer.vfd
+                        whql.submission:
+                            desc_path_desc1 = $\WDK\Logo Type\Device Logo\Windows Server 2003
+                            dd_data_logoarch = AMD64
+                            dd_data_logoos = Windows Server 2003
+                            dd_data_whqlos = Windows Server 2003 x64
+                            device:
+                                dd_data_whqlqual = Basic
+                            device.net:
+                                image_name_supportvm = win2003-64-supportvm
+
+            - WinVista:
+                os_variant = vista
+                image_name = winvista
+                image_size = 20G
+                whql.submission:
+                    desc_path_desc1 = $\WDK\Logo Type\Device Logo\Vista Client\Device Premium
+                    desc_path_desc2 = $\WDK\Logo Type\Device Logo\Vista Client\Device Standard
+                    desc_path_desc3 = $\WDK\Logo Type\Device Logo\Vista Client
+
+                variants:
+                    - 32:
+                        whql.submission:
+                            dd_data_logoarch = X86
+                            dd_data_logoos = Windows Vista
+                            dd_data_whqlos = Windows Vista Client
+                            device:
+                                dd_data_whqlqual = Premium
+                        variants:
+                            - sp1:
+                                image_name += -sp1-32
+                                install:
+                                    cdrom_cd1 = isos/windows/WindowsVista-32.iso
+                                    md5sum_cd1 = 1008f323d5170c8e614e52ccb85c0491
+                                    md5sum_1m_cd1 = c724e9695da483bc0fd59e426eaefc72
+                                    steps = Win-Vista-32.steps
+                                setup:
+                                    steps = WinVista-32-rss.steps
+                                unattended_install.cdrom, whql.support_vm_install:
+                                    cdrom_cd1 = isos/windows/WindowsVista-32.iso
+                                    md5sum_cd1 = 1008f323d5170c8e614e52ccb85c0491
+                                    md5sum_1m_cd1 = c724e9695da483bc0fd59e426eaefc72
+                                    unattended_file = unattended/winvista-32-autounattend.xml
+                                    floppy = images/winvista-sp1-32/answer.vfd
+                                whql.submission.device.net:
+                                    image_name_supportvm = winvista-sp1-32-supportvm
+
+                            - sp2:
+                                image_name += -sp2-32
+                                unattended_install.cdrom, whql.support_vm_install:
+                                    cdrom_cd1 = isos/windows/en_windows_vista_with_sp2_x86_dvd_342266.iso
+                                    md5sum_cd1 = 19ca90a425667812977bab6f4ce24175
+                                    md5sum_1m_cd1 = 89c15020e0e6125be19acf7a2e5dc614
+                                    sha1sum_cd1 = 25ad9a776503e6a583bec07879dbcc5dfd20cd6e
+                                    sha1sum_1m_cd1 = a2afa4cffdc1c362dbf9e62942337f4f875a22cf
+                                    unattended_file = unattended/winvista-32-autounattend.xml
+                                    floppy = images/winvista-sp2-32/answer.vfd
+                                whql.submission.device.net:
+                                    image_name_supportvm = winvista-sp2-32-supportvm
+
+                    - 64:
+                        whql.submission:
+                            dd_data_logoarch = AMD64
+                            dd_data_logoos = Windows Vista
+                            dd_data_whqlos = Windows Vista Client x64
+                            device:
+                                dd_data_whqlqual = Premium
+                        variants:
+                            - sp1:
+                                image_name += -sp1-64
+                                install:
+                                    cdrom_cd1 = isos/windows/WindowsVista-64.iso
+                                    md5sum_cd1 = 11e2010d857fffc47813295e6be6d58d
+                                    md5sum_1m_cd1 = 0947bcd5390546139e25f25217d6f165
+                                    steps = Win-Vista-64.steps
+                                setup:
+                                    steps = WinVista-64-rss.steps
+                                unattended_install.cdrom, whql.support_vm_install:
+                                    cdrom_cd1 = isos/windows/WindowsVista-64.iso
+                                    md5sum_cd1 = 11e2010d857fffc47813295e6be6d58d
+                                    md5sum_1m_cd1 = 0947bcd5390546139e25f25217d6f165
+                                    unattended_file = unattended/winvista-64-autounattend.xml
+                                    floppy = images/winvista-sp1-64/answer.vfd
+                                whql.submission.device.net:
+                                    image_name_supportvm = winvista-sp1-64-supportvm
+
+                            - sp2:
+                                image_name += -sp2-64
+                                unattended_install.cdrom, whql.support_vm_install:
+                                    cdrom_cd1 = isos/windows/en_windows_vista_sp2_x64_dvd_342267.iso
+                                    md5sum_cd1 = a1c024d7abaf34bac3368e88efbc2574
+                                    md5sum_1m_cd1 = 3d84911a80f3df71d1026f7adedc2181
+                                    sha1sum_cd1 = aaee3c04533899f9f8c4ae0c4250ef5fafbe29a3
+                                    sha1sum_1m_cd1 = 1fd21bd3ce2a4de8856c7b8fe6fdf80260f6d1c7
+                                    unattended_file = unattended/winvista-64-autounattend.xml
+                                    floppy = images/winvista-sp2-64/answer.vfd
+                                whql.submission.device.net:
+                                    image_name_supportvm = winvista-sp2-64-supportvm
+
+            - Win2008:
+                no whql
+                os_variant = win2k8
+                image_name = win2008
+                image_size = 20G
+
+                variants:
+                    - 32:
+                        variants:
+                            - sp1:
+                                image_name += -sp1-32
+                                install:
+                                    cdrom_cd1 = isos/windows/Windows2008-x86.iso
+                                    #en_windows_server_2008_datacenter_enterprise_standard_x86_dvd_X14-26710.iso
+                                    md5sum_cd1 = 0bfca49f0164de0a8eba236ced47007d
+                                    md5sum_1m_cd1 = 07d7f5006393f74dc76e6e2e943e2440
+                                    sha1sum_cd1 = 6ca018ff96f1e9b2b310a36546b6fded99a421e6
+                                    steps = Win2008-32.steps
+                                setup:
+                                    steps = Win2008-32-rss.steps
+                                unattended_install.cdrom, whql.support_vm_install:
+                                    cdrom_cd1 = isos/windows/Windows2008-x86.iso
+                                    md5sum_cd1 = 0bfca49f0164de0a8eba236ced47007d
+                                    md5sum_1m_cd1 = 07d7f5006393f74dc76e6e2e943e2440
+                                    unattended_file = unattended/win2008-32-autounattend.xml
+                                    floppy = images/win2008-sp1-32/answer.vfd
+
+                            - sp2:
+                                image_name += -sp2-32
+                                unattended_install.cdrom, whql.support_vm_install:
+                                    cdrom_cd1 = isos/windows/en_windows_server_2008_datacenter_enterprise_standard_sp2_x86_dvd_342333.iso
+                                    md5sum_cd1 = b9201aeb6eef04a3c573d036a8780bdf
+                                    md5sum_1m_cd1 = b7a9d42e55ea1e85105a3a6ad4da8e04
+                                    sha1sum_cd1 = 49d0d6917c1256fe81048d414fa473bbc76a8724
+                                    sha1sum_1m_cd1 = 9662ff7ed715faa00407e4befc484ea52a92a9fb
+                                    unattended_file = unattended/win2008-32-autounattend.xml
+                                    floppy = images/win2008-sp2-32/answer.vfd
+
+                    - 64:
+                        variants:
+                            -sp1:
+                                image_name += -sp1-64
+                                install:
+                                    steps = Win2008-64.steps
+                                    cdrom_cd1 = isos/windows/Windows2008-x64.iso
+                                    #en_windows_server_2008_datacenter_enterprise_standard_x64_dvd_X14-26714.iso
+                                    md5sum_cd1 = 27c58cdb3d620f28c36333a5552f271c
+                                    md5sum_1m_cd1 = efdcc11d485a1ef9afa739cb8e0ca766
+                                    sha1sum_cd1 = bd000374709f67e9358814db6ec8f0ddaaa16f70
+                                    passwd = 1q2w3eP
+                                setup:
+                                    steps = Win2008-64-rss.steps
+                                unattended_install.cdrom, whql.support_vm_install:
+                                    cdrom_cd1 = isos/windows/Windows2008-x64.iso
+                                    md5sum_cd1 = 27c58cdb3d620f28c36333a5552f271c
+                                    md5sum_1m_cd1 = efdcc11d485a1ef9afa739cb8e0ca766
+                                    unattended_file = unattended/win2008-64-autounattend.xml
+                                    floppy = images/win2008-sp1-64/answer.vfd
+
+                            - sp2:
+                                image_name += -sp2-64
+                                unattended_install.cdrom, whql.support_vm_install:
+                                    cdrom_cd1 = isos/windows/en_windows_server_2008_datacenter_enterprise_standard_sp2_x64_dvd_342336.iso
+                                    md5sum_cd1 = e94943ef484035b3288d8db69599a6b5
+                                    md5sum_1m_cd1 = ee55506823d0efffb5532ddd88a8e47b
+                                    sha1sum_cd1 = 34c7d726c57b0f8b19ba3b40d1b4044c15fc2029
+                                    sha1sum_1m_cd1 = 8fe08b03e3531906855a60a78020ac9577dff5ba
+                                    unattended_file = unattended/win2008-64-autounattend.xml
+                                    floppy = images/win2008-sp2-64/answer.vfd
+
+                            - r2:
+                                image_name += -r2-64
+                                unattended_install.cdrom, whql.support_vm_install:
+                                    cdrom_cd1 = isos/windows/en_windows_server_2008_r2_standard_enterprise_datacenter_and_web_x64_dvd_x15-59754.iso
+                                    md5sum_cd1 = 0207ef392c60efdda92071b0559ca0f9
+                                    md5sum_1m_cd1 = a5a22ce25008bd7109f6d830d627e3ed
+                                    sha1sum_cd1 = ad855ea913aaec3f1d0e1833c1aef7a0de326b0a
+                                    sha1sum_1m_cd1 = 9194a3aabae25b36e5f73cad001314b2c8d07d14
+                                    unattended_file = unattended/win2008-r2-autounattend.xml
+                                    floppy = images/win2008-r2-64/answer.vfd
+
+            - Win7:
+                os_variant = win7
+                image_name = win7
+                image_size = 20G
+                whql.submission:
+                    desc_path_desc1 = $\WDK\Logo Type\Device Logo\Windows 7 Client\Logo
+                    desc_path_desc2 = $\WDK\Logo Type\Device Logo\Windows 7 Client
+                    device_data += " adq"
+                    dd_name_adq = AdditionalQualificationGroup
+                    dd_data_adq = Windows 7
+
+                variants:
+                    - 32:
+                        image_name += -32
+                        unattended_install.cdrom, whql.support_vm_install:
+                            cdrom_cd1 = isos/windows/en_windows_7_ultimate_x86_dvd_x15-65921.iso
+                            md5sum_cd1 = d0b8b407e8a3d4b75ee9c10147266b89
+                            md5sum_1m_cd1 = 2b0c2c22b1ae95065db08686bf83af93
+                            sha1sum_cd1 = 5395dc4b38f7bdb1e005ff414deedfdb16dbf610
+                            sha1sum_1m_cd1 = 9f9c3780aebeb28a9bf22188eed6bc15475dc9c5
+                            unattended_file = unattended/win7-32-autounattend.xml
+                            floppy = images/win7-32/answer.vfd
+                        whql.submission:
+                            dd_data_logoarch = X86
+                            dd_data_logoos = Windows 7
+                            dd_data_whqlos = Windows 7 Client
+                            device:
+                                dd_data_whqlqual = Logo
+                            device.net:
+                                image_name_supportvm = win7-32-supportvm
+
+                    - 64:
+                        image_name += -64
+                        install:
+                            cdrom_cd1 = isos/windows/en_windows_7_ultimate_x64_dvd_x15-65922.iso
+                            md5sum_cd1 = f43d22e4fb07bf617d573acd8785c028
+                            md5sum_1m_cd1 = b44d8cf99dbed2a5cb02765db8dfd48f
+                            passwd = 1q2w3eP
+                            steps = Win7-64.steps
+                        setup:
+                            steps = Win7-64-rss.steps
+                        unattended_install.cdrom, whql.support_vm_install:
+                            cdrom_cd1 = isos/windows/en_windows_7_ultimate_x64_dvd_x15-65922.iso
+                            md5sum_cd1 = f43d22e4fb07bf617d573acd8785c028
+                            md5sum_1m_cd1 = b44d8cf99dbed2a5cb02765db8dfd48f
+                            sha1sum_cd1 = 326327cc2ff9f05379f5058c41be6bc5e004baa7
+                            sha1sum_1m_cd1 = 4a3903bd5157de54f0702e5263e0a683c5775515
+                            unattended_file = unattended/win7-64-autounattend.xml
+                            floppy = images/win7-64/answer.vfd
+                        whql.submission:
+                            dd_data_logoarch = AMD64
+                            dd_data_logoos = Windows 7
+                            dd_data_whqlos = Windows 7 Client x64
+                            device:
+                                dd_data_whqlqual = Logo
+                            device.net:
+                                image_name_supportvm = win7-64-supportvm
+
+
+    # Unix/BSD section
+    - @Unix:
+        only install
+        kill_vm = yes
+        kill_vm_gracefully = no
+        kill_vm_timeout = 0
+
+        variants:
+            - NetBSD-1.6.2:
+                image_name = NetBSD-1.6.2
+                image_size = 4G
+                steps = NetBSD-1.6.2.steps
+                cdrom_cd1 = isos/bsd/netbsd-1.6.2-i386.iso
+                md5sum_cd1 = 72eb680300f77d529bfbc880ba8208f3
+                md5sum_1m_cd1 = f1a9e1e825c90adfb1be35c6177bd9ac
+
+            - OpenBSD-4.1:
+                image_name = OpenBSD-4.1
+                steps = OpenBSD-4.1-32.steps
+                cdrom_cd1 = isos/unix/openbsd41-i386-07-05-06.iso
+                md5sum_cd1 = 984790db10ebdd6fc7a9cf97abc7c967
+                md5sum_1m_cd1 = 8fc234b4b0ecfe56843a32ac1d26ed55
+
+    # Live CD section
+    - @livecd:
+        only install
+        kill_vm = yes
+        kill_vm_gracefully = no
+        kill_vm_timeout = 0
+
+        variants:
+            - Belenix:
+                steps = Belenix-0.7.1.steps
+                cdrom_cd1 = isos/unix/belenix_0.7.1.iso
+                md5sum_cd1 = 29cea6160cf5250de138e2820e53e342
+                md5sum_1m_cd1 = 427bbef1b85d6d051799b825d686ae94
+
+            - Slax:
+                steps = Slax-6.0.7.steps
+                cdrom_cd1 = isos/linux/slax-6.0.7.iso
+                md5sum_cd1 = cde0ecba3c8289d786e12c44666ded6e
+                md5sum_1m_cd1 = ddf02bc7444f22d1160a6e5a8fc8723f
+
+            - FreeSBIE-2.0.1:
+                steps = FreeSBIE-2.0.1.steps
+                cdrom_cd1 = isos/unix/FreeSBIE-2.0.1-RELEASE.iso
+                md5sum_cd1 = b2f680d27c21bbfaf4fb90dce090a118
+                md5sum_1m_cd1 = 4d81ee7fe0101b0a14225963bfff60c1
+
+            - memtest:
+                mem = 128
+                steps = memtest86+.steps
+                cdrom_cd1 = isos/misc/memtest86+-2.01.iso
+                md5sum_cd1 = 9fae22f2666369968a76ef59e9a81ced
+
+
+whql.support_vm_install, whql.client_install.support_vm:
+    image_name += -supportvm
+
+
+variants:
+    - @up:
+        no autotest.npb autotest.tsc
+    - smp2:
+        smp = 2
+        used_cpus = 2
+        stress_boot: used_cpus = 10
+        timedrift.with_load: used_cpus = 100
+
+
+variants:
+    - @ide:
+        drive_format=ide
+    - scsi:
+        drive_format=scsi
+    - virtio_blk:
+        drive_format=virtio
+        # Some older qemu might need image_boot=yes for virtio images to work.
+        # Please uncomment the below if that is the case.
+        #image_boot=yes
+    - ahci:
+        drive_format=ahci
+        cd_format=ahci
+    - usb.stick:
+        drive_format=usb2
+    - usb.cdrom:
+        cd_format=usb2
+
+
+virtio_net, virtio_blk, e1000, balloon_check:
+    # Only excluding the OS that we *know* they won't have the drivers installed
+    # Some might require special setup though.
+    no Win2000, Fedora.8, Fedora.9, Fedora.10, RHEL.3, Unix, livecd
+
+kdump, watchdog:
+    only RHEL.5 RHEL.6
+
+variants:
+    - @qcow2:
+        image_format = qcow2
+        check_image = yes
+    - vmdk:
+        no ioquit
+        image_format = vmdk
+    - raw:
+        no ioquit
+        image_format = raw
+
+
+variants:
+    - @smallpages:
+    - hugepages:
+        setup_hugepages = yes
+        domain_xml_snippet = "<memoryBacking><hugepages/></memoryBacking>"
+
+
+variants:
+    - @no_pci_assignable:
+        pci_assignable = no
+    - pf_assignable:
+        pci_assignable = pf
+        device_names = eth1
+    - vf_assignable:
+        pci_assignable = vf
+        # Driver (kernel module) that supports SR-IOV hardware.
+        # As of today (30-11-2009), we have 2 drivers for this type of hardware:
+        # Intel® 82576 Gigabit Ethernet Controller - igb
+        # Neterion® X3100™ - vxge
+        driver = igb
+        # Driver option to specify the maximum number of virtual functions
+        # (on vxge the option is , for example, is max_config_dev)
+        # the default below is for the igb driver
+        driver_option = "max_vfs=7"
+        # Number of devices that are going to be requested.
+        devices_requested = 7
+
+
+steps ?<= steps/
diff --git a/client/tests/libvirt/virtio-win.cfg.sample b/client/tests/libvirt/virtio-win.cfg.sample
new file mode 100644
index 0000000..ce1bcf4
--- /dev/null
+++ b/client/tests/libvirt/virtio-win.cfg.sample
@@ -0,0 +1,235 @@
+# Copy this file to virtio-win.cfg and edit it.
+# This file intends to be a central point of configuration for folks wanting
+# to install windows virtio drivers on windows guests
+
+# A bit of context on windows virtio drivers install
+# --------------------------------------------------
+# This method of install so far covers the storage (viostor) and network
+# (NetKVM) drivers. KVM autotest uses a boot floppy with a Windows answer
+# file in order to perform unattended install of windows guests. For winXP
+# and win2003, the unattended files are simple .ini files, while for win2008
+# and later, the unattended files are XML files.
+#
+# In order to install the virtio drivers during guest install, KVM autotest
+# has to inform the windows install programs *where* to find the drivers. So,
+# we work from the following assumptions:
+#
+# * You already have an iso file that contains windows virtio drivers
+# (inf files) for both netkvm and viostor. If you are unsure how to generate
+# that iso, there's an example script under contrib, inside the kvm test
+# directory. If you take a look at the files inside this iso image, a small
+# part of them should look like:
+#
+# ./wxp/x86/viostor.cat
+# ./wxp/x86/viostor.inf
+# ./wxp/x86/viostor.pdb
+# ./wxp/x86/viostor.sys
+#
+# * If you are planning on installing WinXP or Win2003, you should also have
+# a pre-made floppy disk image with the virtio drivers *and* a configuration
+# file that the installer program will read to fetch the right drivers from it.
+# Unfortunately, I don't have much info on how to build that file, you probably
+# would have the image already assembled if you are willing to test those guest
+# OS.
+#
+# So you have to map the paths of your cd containing the drivers on the config
+# variables. More details below.
+
+Windows:
+    unattended_install.cdrom, whql.support_vm_install:
+        # In order to enable drivers install, turn the below to 'yes'
+        install_virtio = no
+
+        # In order to enable drivers install, uncomment the assignment lines
+        # below.
+
+        # This makes the vm to be started with the virtio iso file as an extra
+        # cdrom drive
+        #cdroms += " virtio"
+
+        # This assumes the virtio iso will be at (/tmp/kvm_autotest_root/isos)
+        #cdrom_virtio = isos/virtio-win.iso
+
+        # This ensures the iso will appear to the guest as F:
+        #drive_index_virtio = 3
+
+        # This assumes the virtio floppy will be at (/tmp/kvm_autotest_root/)
+        # This floppy is needed only if you desire to test virtio drivers
+        # install for WinXP and Win2003. If you don't, you can leave the line
+        # below uncommented
+        #virtio_floppy = virtio-drivers.vfd
+
+    WinXP:
+        32:
+            unattended_install.cdrom, whql.support_vm_install:
+                # This is a label used on the oemsetup.ini file, inside your
+                # virtio floppy. You might actually want to check what are
+                # the labels on yours
+                virtio_oemsetup_id = WXP32
+
+                # Look at your cd structure and see where the drivers are
+                # actually located
+                virtio_network_path = 'F:\xp\x86'
+
+                # Uncomment if you have a nw driver installer on the iso
+                #virtio_network_installer_path = 'F:\RHEV-Network32.msi'
+
+        64:
+            unattended_install.cdrom, whql.support_vm_install:
+                # This is a label used on the oemsetup.ini file, inside your
+                # virtio floppy. You might actually want to check what are
+                # the labels on yours
+                virtio_oemsetup_id = WNET64
+
+                # Look at your cd structure and see where the drivers are
+                # actually located
+                virtio_network_path = 'F:\xp\amd64'
+
+                # Uncomment if you have a nw driver installer on the iso
+                #virtio_network_installer_path = 'F:\RHEV-Network64.msi'
+
+    Win2003:
+        32:
+            unattended_install.cdrom, whql.support_vm_install:
+                # This is a label used on the oemsetup.ini file, inside your
+                # virtio floppy. You might actually want to check what are
+                # the labels on yours
+                virtio_oemsetup_id = WNET32
+
+                # Look at your cd structure and see where the drivers are
+                # actually located
+                virtio_network_path = 'F:\xp\x86'
+
+                # Uncomment if you have a nw driver installer on the iso
+                #virtio_network_installer_path = 'F:\RHEV-Network32.msi'
+
+        64:
+            unattended_install.cdrom, whql.support_vm_install:
+                # This is a label used on the oemsetup.ini file, inside your
+                # virtio floppy. You might actually want to check what are
+                # the labels on yours
+                virtio_oemsetup_id = WNET64
+
+                # Look at your cd structure and see where the drivers are
+                # actually located
+                virtio_network_path = 'F:\xp\amd64'
+
+                # Uncomment if you have a nw driver installer on the iso
+                #virtio_network_installer_path = 'F:\RHEV-Network64.msi'
+
+    WinVista:
+        32:
+            sp1:
+                unattended_install.cdrom, whql.support_vm_install:
+                    # Look at your cd structure and see where the drivers are
+                    # actually located (viostor and netkvm)
+                    virtio_storage_path = 'F:\win7\x86'
+                    virtio_network_path = 'F:\vista\x86'
+
+                    # Uncomment if you have a nw driver installer on the iso
+                    #virtio_network_installer_path = 'F:\RHEV-Network32.msi'
+
+            sp2:
+                unattended_install.cdrom, whql.support_vm_install:
+                    # Look at your cd structure and see where the drivers are
+                    # actually located (viostor and netkvm)
+                    virtio_storage_path = 'F:\win7\x86'
+                    virtio_network_path = 'F:\vista\x86'
+
+                    # Uncomment if you have a nw driver installer on the iso
+                    #virtio_network_installer_path = 'F:\RHEV-Network32.msi'
+
+        64:
+            sp1:
+                unattended_install.cdrom, whql.support_vm_install:
+                    # Look at your cd structure and see where the drivers are
+                    # actually located (viostor and netkvm)
+                    virtio_storage_path = 'F:\win7\amd64'
+                    virtio_network_path = 'F:\vista\amd64'
+
+                    # Uncomment if you have a nw driver installer on the iso
+                    #virtio_network_installer_path = 'F:\RHEV-Network64.msi'
+
+            sp2:
+                unattended_install.cdrom, whql.support_vm_install:
+                    # Look at your cd structure and see where the drivers are
+                    # actually located (viostor and netkvm)
+                    virtio_storage_path = 'F:\win7\amd64'
+                    virtio_network_path = 'F:\vista\amd64'
+
+                    # Uncomment if you have a nw driver installer on the iso
+                    #virtio_network_installer_path = 'F:\RHEV-Network64.msi'
+
+    Win2008:
+        32:
+            sp1:
+                unattended_install.cdrom, whql.support_vm_install:
+                    # Look at your cd structure and see where the drivers are
+                    # actually located (viostor and netkvm)
+                    virtio_storage_path = 'F:\win7\x86'
+                    virtio_network_path = 'F:\vista\x86'
+
+                    # Uncomment if you have a nw driver installer on the iso
+                    #virtio_network_installer_path = 'F:\RHEV-Network32.msi'
+
+            sp2:
+                unattended_install.cdrom, whql.support_vm_install:
+                    # Look at your cd structure and see where the drivers are
+                    # actually located (viostor and netkvm)
+                    virtio_storage_path = 'F:\win7\x86'
+                    virtio_network_path = 'F:\vista\x86'
+
+                    # Uncomment if you have a nw driver installer on the iso
+                    #virtio_network_installer_path = 'F:\RHEV-Network32.msi'
+
+        64:
+            sp1:
+                unattended_install.cdrom, whql.support_vm_install:
+                    # Look at your cd structure and see where the drivers are
+                    # actually located (viostor and netkvm)
+                    virtio_storage_path = 'F:\win7\amd64'
+                    virtio_network_path = 'F:\vista\amd64'
+
+                    # Uncomment if you have a nw driver installer on the iso
+                    #virtio_network_installer_path = 'F:\RHEV-Network64.msi'
+
+            sp2:
+                unattended_install.cdrom, whql.support_vm_install:
+                    # Look at your cd structure and see where the drivers are
+                    # actually located (viostor and netkvm)
+                    virtio_storage_path = 'F:\win7\amd64'
+                    virtio_network_path = 'F:\vista\amd64'
+
+                    # Uncomment if you have a nw driver installer on the iso
+                    #virtio_network_installer_path = 'F:\RHEV-Network64.msi'
+
+            r2:
+                unattended_install.cdrom, whql.support_vm_install:
+                    # Look at your cd structure and see where the drivers are
+                    # actually located (viostor and netkvm)
+                    virtio_storage_path = 'F:\win7\amd64'
+                    virtio_network_path = 'F:\vista\amd64'
+
+                    # Uncomment if you have a nw driver installer on the iso
+                    #virtio_network_installer_path = 'F:\RHEV-Network64.msi'
+
+    Win7:
+        32:
+            unattended_install.cdrom, whql.support_vm_install:
+                # Look at your cd structure and see where the drivers are
+                # actually located (viostor and netkvm)
+                virtio_storage_path = 'F:\win7\x86'
+                virtio_network_path = 'F:\vista\x86'
+
+                # Uncomment if you have a nw driver installer on the iso
+                #virtio_network_installer_path = 'F:\RHEV-Network32.msi'
+
+        64:
+            unattended_install.cdrom, whql.support_vm_install:
+                # Look at your cd structure and see where the drivers are
+                # actually located (viostor and netkvm)
+                virtio_storage_path = 'F:\win7\amd64'
+                virtio_network_path = 'F:\vista\amd64'
+
+                # Uncomment if you have a nw driver installer on the iso
+                #virtio_network_installer_path = 'F:\RHEV-Network64.msi'
-- 
1.7.6.4

_______________________________________________
Autotest mailing list
Autotest@test.kernel.org
http://test.kernel.org/cgi-bin/mailman/listinfo/autotest

  parent reply	other threads:[~2011-10-11 21:07 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-11 21:07 [PATCH 00/11] [RFC] Libvirt test v2 Lucas Meneghel Rodrigues
2011-10-11 21:07 ` [PATCH 02/11] virt: Introducing virt_test.virt_test class Lucas Meneghel Rodrigues
2011-10-11 21:07 ` [PATCH 03/11] Moving unattended_install test from kvm test to common virt location Lucas Meneghel Rodrigues
2011-10-11 21:07 ` [PATCH 04/11] Moving get_started code to client.virt.virt_utils Lucas Meneghel Rodrigues
2011-10-11 21:07 ` [PATCH 05/11] virt: Introducing libvirt VM class Lucas Meneghel Rodrigues
2011-10-12  6:51   ` [Autotest] " Amos Kong
2011-10-12  8:14   ` Daniel P. Berrange
2011-10-13 17:26     ` Lucas Meneghel Rodrigues
2011-10-11 21:07 ` [PATCH 06/11] virt: Introducing libvirt monitor Lucas Meneghel Rodrigues
2011-10-12  7:48   ` [Autotest] " Amos Kong
2011-10-13 17:12     ` Lucas Meneghel Rodrigues
2011-10-11 21:07 ` [PATCH 07/11] virt.virt_env_process: Add libvirt vm handling Lucas Meneghel Rodrigues
2011-10-11 21:07 ` Lucas Meneghel Rodrigues [this message]
2011-10-11 21:07 ` [PATCH 09/11] Virt: builtin HTTP server for unattended installs Lucas Meneghel Rodrigues
2011-10-11 21:07 ` [PATCH 10/11] Virt: support XEN via libvirt and auto url installer Lucas Meneghel Rodrigues
2011-10-11 21:07 ` [PATCH 11/11] Virt: add support for XEN via libvirt installs and auto url Lucas Meneghel Rodrigues

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1318367237-26081-9-git-send-email-lmr@redhat.com \
    --to=lmr@redhat.com \
    --cc=autotest@test.kernel.org \
    --cc=kvm@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).