One of the problems with virtio drivers install is
that the configuration needed to get it done was
scattered around the pretty large tests_base.cfg.sample
file. So, separate the relevant configuration from
that file and create a file dedicated to be the
central point of configuration for virtio drivers
install. The new file is hopefully well commented,
and will be helpful in getting people started with
virtio win drivers testing with kvm autotest.

Signed-off-by: Lucas Meneghel Rodrigues <l...@redhat.com>
---
 client/tests/kvm/get_started.py        |    2 +-
 client/tests/kvm/tests.cfg.sample      |    1 +
 client/tests/kvm/tests_base.cfg.sample |   97 -------------
 client/tests/kvm/virtio-win.cfg.sample |  235 ++++++++++++++++++++++++++++++++
 4 files changed, 237 insertions(+), 98 deletions(-)
 create mode 100644 client/tests/kvm/virtio-win.cfg.sample

diff --git a/client/tests/kvm/get_started.py b/client/tests/kvm/get_started.py
index 772f267..d97fd8a 100755
--- a/client/tests/kvm/get_started.py
+++ b/client/tests/kvm/get_started.py
@@ -86,7 +86,7 @@ if __name__ == "__main__":
     kvm_test_dir = os.path.dirname(sys.modules[__name__].__file__)
     kvm_test_dir = os.path.abspath(kvm_test_dir)
     config_file_list = ["build.cfg", "cdkeys.cfg", "tests_base.cfg",
-                        "tests.cfg", "unittests.cfg"]
+                        "tests.cfg", "unittests.cfg", "virtio-win.cfg"]
     for config_file in config_file_list:
         src_file = os.path.join(kvm_test_dir, "%s.sample" % config_file)
         dst_file = os.path.join(kvm_test_dir, config_file)
diff --git a/client/tests/kvm/tests.cfg.sample 
b/client/tests/kvm/tests.cfg.sample
index ef48a90..8e9fb1a 100644
--- a/client/tests/kvm/tests.cfg.sample
+++ b/client/tests/kvm/tests.cfg.sample
@@ -3,6 +3,7 @@
 # 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.
diff --git a/client/tests/kvm/tests_base.cfg.sample 
b/client/tests/kvm/tests_base.cfg.sample
index a1f1ef0..5311629 100644
--- a/client/tests/kvm/tests_base.cfg.sample
+++ b/client/tests/kvm/tests_base.cfg.sample
@@ -2135,13 +2135,6 @@ variants:
             drive_index_winutils = 2
             kernel =
             initrd =
-            # Turn install_virtio = yes if you want to install the
-            # Windows virtio drivers. It might be a lot of setup though :)
-            #install_virtio = no
-            #cdroms += " virtio"
-            #cdrom_virtio = isos/windows/virtio-win.iso
-            #drive_index_virtio = 3
-            #virtio_floppy = /usr/share/virtio-win/virtio-drivers.vfd
         migrate:
             migration_test_command = ver && vol
             migration_bg_command = start ping -t localhost
@@ -2261,12 +2254,6 @@ variants:
                             md5sum_1m_cd1 = b473bf75af2d1269fec8958cf0202bfd
                             unattended_file = unattended/winxp32.sif
                             floppy = images/winXP-32/answer.vfd
-                            # Uncomment virtio_network_installer_path line if
-                            # you have an msi installer, also make sure the
-                            # paths are properly set in your virtio driver iso.
-                            virtio_oemsetup_id = WXP32
-                            virtio_network_path = 'F:\NetKVM\xp\x86'
-                            #virtio_network_installer_path = 
'F:\RHEV-Network32.msi'
                         whql.submission:
                             desc_path_desc1 = $\WDK\Logo Type\Device 
Logo\Windows XP
                             desc_path_desc2 = $\WDK\Logo Type\Systems 
Logo\Windows XP
@@ -2297,12 +2284,6 @@ variants:
                             md5sum_1m_cd1 = e812363ff427effc512b7801ee70e513
                             unattended_file = unattended/winxp64.sif
                             floppy = images/winXP-64/answer.vfd
-                            # Uncomment virtio_network_installer_path line if
-                            # you have an msi installer, also make sure the
-                            # paths are properly set in your virtio driver iso.
-                            virtio_oemsetup_id = WNET64
-                            virtio_network_path = 'F:\NetKVM\xp\amd64'
-                            #virtio_network_installer_path = 
'F:\RHEV-Network64.msi'
                         whql.submission:
                             desc_path_desc1 = $\WDK\Logo Type\Device 
Logo\Windows XP
                             desc_path_desc2 = $\WDK\Logo Type\Systems 
Logo\Windows XP
@@ -2348,12 +2329,6 @@ variants:
                             #md5sum_1m_cd1 = 37c2fdec15ac4ec16aa10fdfdb338aa3
                             unattended_file = unattended/win2003-32.sif
                             floppy = images/win2003-32/answer.vfd
-                            # Uncomment virtio_network_installer_path line if
-                            # you have an msi installer, also make sure the
-                            # paths are properly set in your virtio driver iso.
-                            virtio_oemsetup_id = WNET32
-                            virtio_network_path = 'F:\NetKVM\2k3\x86'
-                            #virtio_network_installer_path = 
'F:\RHEV-Network32.msi'
                         whql.submission:
                             desc_path_desc1 = $\WDK\Logo Type\Device 
Logo\Windows Server 2003
                             dd_data_logoarch = X86
@@ -2390,12 +2365,6 @@ variants:
                             #md5sum_1m_cd1 = 439393c384116aa09e08a0ad047dcea8
                             unattended_file = unattended/win2003-64.sif
                             floppy = images/win2003-64/answer.vfd
-                            # Uncomment virtio_network_installer_path line if
-                            # you have an msi installer, also make sure the
-                            # paths are properly set in your virtio driver iso.
-                            virtio_oemsetup_id = WNET64
-                            virtio_network_path = 'F:\NetKVM\2k3\amd64'
-                            #virtio_network_installer_path = 
'F:\RHEV-Network64.msi'
                         whql.submission:
                             desc_path_desc1 = $\WDK\Logo Type\Device 
Logo\Windows Server 2003
                             dd_data_logoarch = AMD64
@@ -2438,12 +2407,6 @@ variants:
                                     md5sum_1m_cd1 = 
c724e9695da483bc0fd59e426eaefc72
                                     unattended_file = 
unattended/winvista-32-autounattend.xml
                                     floppy = images/winvista-sp1-32/answer.vfd
-                                    # Uncomment virtio_network_installer_path 
line if
-                                    # you have an msi installer, also make 
sure the
-                                    # paths are properly set in your virtio 
driver iso.
-                                    virtio_storage_path = 'F:\viostor\w7\x86'
-                                    virtio_network_path = 'F:\NetKVM\w7\x86'
-                                    #virtio_network_installer_path = 
'F:\RHEV-Network32.msi'
                                 whql.submission.device.net:
                                     image_name_supportvm = 
winvista-sp1-32-supportvm
 
@@ -2457,12 +2420,6 @@ variants:
                                     sha1sum_1m_cd1 = 
a2afa4cffdc1c362dbf9e62942337f4f875a22cf
                                     unattended_file = 
unattended/winvista-32-autounattend.xml
                                     floppy = images/winvista-sp2-32/answer.vfd
-                                    # Uncomment virtio_network_installer_path 
line if
-                                    # you have an msi installer, also make 
sure the
-                                    # paths are properly set in your virtio 
driver iso.
-                                    virtio_storage_path = 'F:\viostor\w7\x86'
-                                    virtio_network_path = 'F:\NetKVM\w7\x86'
-                                    #virtio_network_installer_path = 
'F:\RHEV-Network32.msi'
                                 whql.submission.device.net:
                                     image_name_supportvm = 
winvista-sp2-32-supportvm
 
@@ -2489,12 +2446,6 @@ variants:
                                     md5sum_1m_cd1 = 
0947bcd5390546139e25f25217d6f165
                                     unattended_file = 
unattended/winvista-64-autounattend.xml
                                     floppy = images/winvista-sp1-64/answer.vfd
-                                    # Uncomment virtio_network_installer_path 
line if
-                                    # you have an msi installer, also make 
sure the
-                                    # paths are properly set in your virtio 
driver iso.
-                                    virtio_storage_path = 'F:\viostor\w7\amd64'
-                                    virtio_network_path = 'F:\NetKVM\w7\amd64'
-                                    #virtio_network_installer_path = 
'F:\RHEV-Network64.msi'
                                 whql.submission.device.net:
                                     image_name_supportvm = 
winvista-sp1-64-supportvm
 
@@ -2508,12 +2459,6 @@ variants:
                                     sha1sum_1m_cd1 = 
1fd21bd3ce2a4de8856c7b8fe6fdf80260f6d1c7
                                     unattended_file = 
unattended/winvista-64-autounattend.xml
                                     floppy = images/winvista-sp2-64/answer.vfd
-                                    # Uncomment virtio_network_installer_path 
line if
-                                    # you have an msi installer, also make 
sure the
-                                    # paths are properly set in your virtio 
driver iso.
-                                    virtio_storage_path = 'F:\viostor\w7\amd64'
-                                    virtio_network_path = 'F:\NetKVM\w7\amd64'
-                                    #virtio_network_installer_path = 
'F:\RHEV-Network64.msi'
                                 whql.submission.device.net:
                                     image_name_supportvm = 
winvista-sp2-64-supportvm
 
@@ -2542,12 +2487,6 @@ variants:
                                     md5sum_1m_cd1 = 
07d7f5006393f74dc76e6e2e943e2440
                                     unattended_file = 
unattended/win2008-32-autounattend.xml
                                     floppy = images/win2008-sp1-32/answer.vfd
-                                    # Uncomment virtio_network_installer_path 
line if
-                                    # you have an msi installer, also make 
sure the
-                                    # paths are properly set in your virtio 
driver iso.
-                                    virtio_storage_path = 'F:\viostor\2k8\x86'
-                                    virtio_network_path = 'F:\NetKVM\2k8\x86'
-                                    #virtio_network_installer_path = 
'F:\RHEV-Network32.msi'
 
                             - sp2:
                                 image_name += -sp2-32
@@ -2559,12 +2498,6 @@ variants:
                                     sha1sum_1m_cd1 = 
9662ff7ed715faa00407e4befc484ea52a92a9fb
                                     unattended_file = 
unattended/win2008-32-autounattend.xml
                                     floppy = images/win2008-sp2-32/answer.vfd
-                                    # Uncomment virtio_network_installer_path 
line if
-                                    # you have an msi installer, also make 
sure the
-                                    # paths are properly set in your virtio 
driver iso.
-                                    virtio_storage_path = 'F:\viostor\2k8\x86'
-                                    virtio_network_path = 'F:\NetKVM\2k8\x86'
-                                    #virtio_network_installer_path = 
'F:\RHEV-Network32.msi'
 
                     - 64:
                         variants:
@@ -2586,12 +2519,6 @@ variants:
                                     md5sum_1m_cd1 = 
efdcc11d485a1ef9afa739cb8e0ca766
                                     unattended_file = 
unattended/win2008-64-autounattend.xml
                                     floppy = images/win2008-sp1-64/answer.vfd
-                                    # Uncomment virtio_network_installer_path 
line if
-                                    # you have an msi installer, also make 
sure the
-                                    # paths are properly set in your virtio 
driver iso.
-                                    virtio_storage_path = 
'F:\viostor\2k8\amd64'
-                                    virtio_network_path = 'F:\NetKVM\2k8\amd64'
-                                    #virtio_network_installer_path = 
'F:\RHEV-Network64.msi'
 
                             - sp2:
                                 image_name += -sp2-64
@@ -2603,12 +2530,6 @@ variants:
                                     sha1sum_1m_cd1 = 
8fe08b03e3531906855a60a78020ac9577dff5ba
                                     unattended_file = 
unattended/win2008-64-autounattend.xml
                                     floppy = images/win2008-sp2-64/answer.vfd
-                                    # Uncomment virtio_network_installer_path 
line if
-                                    # you have an msi installer, also make 
sure the
-                                    # paths are properly set in your virtio 
driver iso.
-                                    virtio_storage_path = 
'F:\viostor\2k8\amd64'
-                                    virtio_network_path = 'F:\NetKVM\2k8\amd64'
-                                    #virtio_network_installer_path = 
'F:\RHEV-Network64.msi'
 
                             - r2:
                                 image_name += -r2-64
@@ -2620,12 +2541,6 @@ variants:
                                     sha1sum_1m_cd1 = 
9194a3aabae25b36e5f73cad001314b2c8d07d14
                                     unattended_file = 
unattended/win2008-r2-autounattend.xml
                                     floppy = images/win2008-r2-64/answer.vfd
-                                    # Uncomment virtio_network_installer_path 
line if
-                                    # you have an msi installer, also make 
sure the
-                                    # paths are properly set in your virtio 
driver iso.
-                                    virtio_storage_path = 
'F:\viostor\2k8\amd64'
-                                    virtio_network_path = 'F:\NetKVM\2k8\amd64'
-                                    #virtio_network_installer_path = 
'F:\RHEV-Network64.msi'
 
             - Win7:
                 image_name = win7
@@ -2648,12 +2563,6 @@ variants:
                             sha1sum_1m_cd1 = 
9f9c3780aebeb28a9bf22188eed6bc15475dc9c5
                             unattended_file = 
unattended/win7-32-autounattend.xml
                             floppy = images/win7-32/answer.vfd
-                            # Uncomment virtio_network_installer_path line if
-                            # you have an msi installer, also make sure the
-                            # paths are properly set in your virtio driver iso.
-                            virtio_storage_path = 'F:\viostor\w7\x86'
-                            virtio_network_path = 'F:\NetKVM\w7\x86'
-                            #virtio_network_installer_path = 
'F:\RHEV-Network32.msi'
                         whql.submission:
                             dd_data_logoarch = X86
                             dd_data_logoos = Windows 7
@@ -2681,12 +2590,6 @@ variants:
                             sha1sum_1m_cd1 = 
4a3903bd5157de54f0702e5263e0a683c5775515
                             unattended_file = 
unattended/win7-64-autounattend.xml
                             floppy = images/win7-64/answer.vfd
-                            # Uncomment virtio_network_installer_path line if
-                            # you have an msi installer, also make sure the
-                            # paths are properly set in your virtio driver iso.
-                            virtio_storage_path = 'F:\viostor\w7\amd64'
-                            virtio_network_path = 'F:\NetKVM\w7\amd64'
-                            #virtio_network_installer_path = 
'F:\RHEV-Network64.msi'
                         whql.submission:
                             dd_data_logoarch = AMD64
                             dd_data_logoos = Windows 7
diff --git a/client/tests/kvm/virtio-win.cfg.sample 
b/client/tests/kvm/virtio-win.cfg.sample
new file mode 100644
index 0000000..ce1bcf4
--- /dev/null
+++ b/client/tests/kvm/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

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to