From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yogananth Subramanian Subject: [PATCH] [PATCH V2] patch to enable installing cygwin and running autotest in windows guests Date: Mon, 27 Sep 2010 17:43:42 +0530 Message-ID: <1285589622-11008-2-git-send-email-anantyog@linux.vnet.ibm.com> References: <1285589622-11008-1-git-send-email-anantyog@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1356293238==" Cc: autotest@test.kernel.org, kvm@vger.kernel.org To: lmr@redhat.com Return-path: In-Reply-To: <1285589622-11008-1-git-send-email-anantyog@linux.vnet.ibm.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: autotest-bounces@test.kernel.org Errors-To: autotest-bounces@test.kernel.org List-Id: kvm.vger.kernel.org --===============1356293238== The patch creates two new files 'scripts/cyg_install.py' and 'tests/cyg_install'. 'scripts/cyg_install.py' is used to install cygwin in unattended mode. This patch also introduces a new parameter 'patch_file'to run_autotest() in kvm_test_utils.py file, to install patch for autotest to run in windows. The file 'autotest_control/autotest.patch' is base patch to run any autotest test cases in windows and file 'autotest_control/iozone.patch' is a patch to run iozone on windows. [cyg_install]: 1)local install: Folder denoted by 'cyg_path' should contain the cygwin setup file and a dir called "repo" which would contain all the cygwin packages need to be installed. remote install: 'cyg_path' contains the link to download cygwin setup file 2)scripts/cyg_install.py creates cyg.iso,which contains "cyg_install.cmd" script needed to install cygwin and set of files pointed by the 'cyg_path' 3)login to guest using telnet and run "cyg_install.cmd" to install cygwin [cygwin autotest] 1)the param 'test_patch_file' contains the list of patches for autotest 2)scp autotest to windows guest, apply the patch and run autotest Signed-off-by: Yogananth Subramanian --- client/tests/kvm/autotest_control/autotest.patch | 15 + client/tests/kvm/autotest_control/iozone.patch | 12 + client/tests/kvm/kvm_test_utils.py | 10 +- client/tests/kvm/scripts/cyg_install.py | 98 ++ client/tests/kvm/tests/autotest.py | 21 +- client/tests/kvm/tests/cyg_install.py | 36 + client/tests/kvm/tests_base.cfg.sample | 45 +- client/tests/kvm/tests_base.cfg.sample.orig | 1884 ++++++++++++++++++++++ 8 files changed, 2117 insertions(+), 4 deletions(-) create mode 100644 client/tests/kvm/autotest_control/autotest.patch create mode 100644 client/tests/kvm/autotest_control/iozone.patch create mode 100644 client/tests/kvm/scripts/cyg_install.py create mode 100644 client/tests/kvm/tests/cyg_install.py create mode 100644 client/tests/kvm/tests_base.cfg.sample.orig diff --git a/client/tests/kvm/autotest_control/autotest.patch b/client/tests/kvm/autotest_control/autotest.patch new file mode 100644 index 0000000..f562f95 --- /dev/null +++ b/client/tests/kvm/autotest_control/autotest.patch @@ -0,0 +1,15 @@ +diff -aurpN client/bin/job.py client-new/bin/job.py +--- client/bin/job.py 2010-08-25 01:42:27.000000000 -0400 ++++ client-new/bin/job.py 2010-09-07 09:54:30.000000000 -0400 +@@ -296,7 +296,10 @@ class base_client_job(base_job.base_job) + + # extract console= and other args from cmdline and add them into the + # base args that we use for all kernels we install +- cmdline = utils.read_one_line('/proc/cmdline') ++ if os.path.exists('/proc/cmdline'): ++ cmdline = utils.read_one_line('/proc/cmdline') ++ else: ++ return + kernel_args = [] + for karg in cmdline.split(): + for param in copy_cmdline: diff --git a/client/tests/kvm/autotest_control/iozone.patch b/client/tests/kvm/autotest_control/iozone.patch new file mode 100644 index 0000000..6229205 --- /dev/null +++ b/client/tests/kvm/autotest_control/iozone.patch @@ -0,0 +1,12 @@ +diff -aurpN client/tests/iozone/iozone.py client-new/tests/iozone/iozone.py +--- client/tests/iozone/iozone.py 2010-08-25 01:42:27.000000000 -0400 ++++ client-new/tests/iozone/iozone.py 2010-09-02 11:38:42.000000000 -0400 +@@ -43,7 +43,7 @@ class iozone(test.test): + elif (arch == 'x86_64'): + utils.system('make linux-AMD64') + else: +- utils.system('make linux') ++ utils.system('make Windows') + + + def run_once(self, dir=None, args=None): diff --git a/client/tests/kvm/kvm_test_utils.py b/client/tests/kvm/kvm_test_utils.py index 5412aac..34bccb8 100644 --- a/client/tests/kvm/kvm_test_utils.py +++ b/client/tests/kvm/kvm_test_utils.py @@ -336,7 +336,7 @@ def get_memory_info(lvms): return meminfo -def run_autotest(vm, session, control_path, timeout, outputdir): +def run_autotest(vm, session, control_path, timeout, outputdir, patch_file): """ Run an autotest control file inside a guest (linux only utility). @@ -346,6 +346,7 @@ def run_autotest(vm, session, control_path, timeout, outputdir): @param timeout: Timeout under which the autotest control file must complete. @param outputdir: Path on host where we should copy the guest autotest results to. + @param patch_file: A path to an autotest patch file. """ def copy_if_hash_differs(vm, local_path, remote_path): """ @@ -460,12 +461,19 @@ def run_autotest(vm, session, control_path, timeout, outputdir): os.path.join(autotest_path, 'control')): raise error.TestFail("Could not copy the test control file to guest") + if not patch_file == "": + if not vm.copy_files_to(patch_file, + os.path.join(autotest_path, '../test.patch')): + raise error.TestFail("Could not copy the test patch file to guest") + # Run the test logging.info("Running autotest control file %s on guest, timeout %ss", os.path.basename(control_path), timeout) session.get_command_output("cd %s" % autotest_path) session.get_command_output("rm -f control.state") session.get_command_output("rm -rf results/*") + if not patch_file == "": + session.get_command_output("patch -p1 <../test.patch") logging.info("---------------- Test output ----------------") status = session.get_command_status("bin/autotest control", timeout=timeout, diff --git a/client/tests/kvm/scripts/cyg_install.py b/client/tests/kvm/scripts/cyg_install.py new file mode 100644 index 0000000..7213b90 --- /dev/null +++ b/client/tests/kvm/scripts/cyg_install.py @@ -0,0 +1,98 @@ +#!/usr/bin/python +""" +Script to install cygwin on KVM guests. +""" +# -*- coding: utf-8 -*- +import os, sys, shutil, tempfile, re, ConfigParser, glob +import common +from autotest_lib.client.bin import utils + +class CygInstall(object): + """ + Creates an iso image that will contain cygwin setup file for unattended + install. The setup and cygwin packages should be present on the host + under the path specified by 'cyg_path' for local install. For remote + install the setup will be downloaded from 'cyg_path' + """ + def __init__(self): + """ + Gets params from environment variables and sets class attributes. + """ + script_dir = os.path.dirname(sys.modules[__name__].__file__) + kvm_test_dir = os.path.abspath(os.path.join(script_dir, "..")) + images_dir = os.path.join(kvm_test_dir, 'images') + self.deps_dir = os.path.join(kvm_test_dir, 'deps') + self.cachedir = os.path.join(kvm_test_dir, 'cyg_cache') + self.unattended_dir = os.path.join(kvm_test_dir, 'unattended') + self.cyg_type = os.environ.get('KVM_TEST_cyg_type') + self.cyg_path = os.environ.get('KVM_TEST_cyg_path') + self.cyg_param = os.environ.get('KVM_TEST_cyg_param') + self.cyg_iso = os.environ.get('KVM_TEST_cdrom_cd1') + + + def setup_local(self): + """ + cygwin setup and packages are present locally. + """ + self.cygsetup_file() + mkiso_cmd = "mkisofs -L -l -allow-lowercase -allow-multidot -relaxed-"\ + "filenames -N -v -d -D -o %s %s"%(self.cyg_iso, self.cyg_path) + if os.system(mkiso_cmd): + raise SetupError('Could not create iso') + + + def setup_remote(self): + """ + cygwin setup downloaded from 'cyg_path' + """ + + if not os.path.isdir(self.cachedir): + os.makedirs(self.cachedir) + self.cyg_md5 = os.environ.get('KVM_TEST_cyg_md5') + dacapo_pkg = utils.unmap_url_cache(self.cachedir, self.cyg_path, self.cyg_md5) + self.cyg_path = self.cachedir + self.cygsetup_file() + mkiso_cmd = "mkisofs -L -l -allow-lowercase -allow-multidot -relaxed"\ + "-filenames -N -v -d -D -o %s %s"%(self.cyg_iso,self.cachedir) + if os.system(mkiso_cmd): + raise SetupError('Could not create iso') + shutil.rmtree(self.cachedir) + + def cygsetup_file(self): + cyg_config_file = os.path.join(self.cyg_path, 'cyg_install.cmd') + cyg_config = open(cyg_config_file, 'w') + cyg_config.write('d:setup.exe -q -R ' + '"%systemdrive%\\cygwin" '+self.cyg_param) + cyg_config.write('\n') + cyg_config.write('cd %systemdrive%\\cygwin\\bin\n') + cyg_config.write("""for /f "delims=" %%A in ('cygpath.exe -u %tmp%')""" + """ do set a=%%A\n""") + cyg_config.write('bash --login -i -c "chmod 777 %a%"\n') + cyg_config.write('ash.exe /usr/bin/rebaseall \n') + cyg_config.write('bash --login -i -c "ssh-host-config -y --pwd ' + '1q2w3eP"\n') + cyg_config.write('net start sshd\n') + cyg_config.write('bash --login -i -c "ssh-user-config -y -p"\n') + cyg_config.close() + + def setup(self): + print "Starting Cygwin install setup" + + print "Variables set:" + print " cygwin instally type: " + str(self.cyg_type) + print " cygwin path: " + str(self.cyg_path) + print " cygwin iso: " + str(self.cyg_iso) + + if self.cyg_type == "local": + self.setup_local() + elif self.cyg_type == "remote": + self.setup_remote() + else: + raise SetupError("Unexpected installation method %s" % + self.cyg_type) + print "Cygwin install setup finished successfuly" + + +if __name__ == "__main__": + os_install = CygInstall() + os_install.setup() diff --git a/client/tests/kvm/tests/autotest.py b/client/tests/kvm/tests/autotest.py index 2916ebd..e40b26a 100644 --- a/client/tests/kvm/tests/autotest.py +++ b/client/tests/kvm/tests/autotest.py @@ -1,4 +1,4 @@ -import os, logging +import os, logging, tempfile from autotest_lib.client.common_lib import error from autotest_lib.client.bin import utils import kvm_subprocess, kvm_utils, kvm_test_utils @@ -20,6 +20,23 @@ def run_autotest(test, params, env): timeout = int(params.get("test_timeout", 300)) control_path = os.path.join(test.bindir, "autotest_control", params.get("test_control_file")) + if not params.get("test_patch_file"): + patch_file = "" + else: + autotest_files = params.get("test_patch_file").split() + temp = [] + for autotest_file in autotest_files: + patch_path = os.path.join(test.bindir, "autotest_control", + autotest_file) + f = open(patch_path, "r") + temp.extend(f.readlines()) + f.close() + + (fd,patch_file)=tempfile.mkstemp(prefix='patch_',dir='/tmp') + f = open(patch_file, "w") + f.writelines(temp) + f.close() outputdir = test.outputdir - kvm_test_utils.run_autotest(vm, session, control_path, timeout, outputdir) + kvm_test_utils.run_autotest(vm, session, control_path, timeout, outputdir, + patch_file) diff --git a/client/tests/kvm/tests/cyg_install.py b/client/tests/kvm/tests/cyg_install.py new file mode 100644 index 0000000..f038b2d --- /dev/null +++ b/client/tests/kvm/tests/cyg_install.py @@ -0,0 +1,36 @@ +import logging, time, os +from autotest_lib.client.common_lib import error +from autotest_lib.client.bin import utils +from autotest_lib.client.tests.iozone import postprocessing +import kvm_subprocess, kvm_test_utils, kvm_utils + + +def run_cyg_install(test, params, env): + """ + Install cygwin on a windows guest: + 1) Log into a guest + 2) Install cygwin with the setup contained in the cyg.iso + + @param test: kvm test object + @param params: Dictionary with the test parameters + @param env: Dictionary with test environment. + """ + vm = kvm_test_utils.get_living_vm(env, params.get("main_vm")) + timeout = int(params.get("login_timeout", 360)) + session = kvm_test_utils.wait_for_login(vm, 0,timeout,0,2) + results_path = os.path.join(test.resultsdir, + 'raw_output_%s' % test.iteration) + + c = params.get("cyg_cmd") + t = int(params.get("cyg_timeout")) + logging.info("Installing cygwin on guest, timeout %ss", t) + results = session.get_command_output(command=c, timeout=t, + print_func=logging.debug) + utils.open_write_close(results_path, results) + + logging.info("Installation succeed") + session.sendline(vm.get_params().get("shutdown_command")) + if not kvm_utils.wait_for(vm.is_dead, 240, 0, 1): + raise error.TestFail("Guest refuses to go down") + session.close() + diff --git a/client/tests/kvm/tests_base.cfg.sample b/client/tests/kvm/tests_base.cfg.sample index 167e86d..70ab947 100644 --- a/client/tests/kvm/tests_base.cfg.sample +++ b/client/tests/kvm/tests_base.cfg.sample @@ -130,6 +130,25 @@ variants: kill_vm_on_error = yes login_timeout = 240 + -cyg_install: install setup unattended_install.cdrom + type = cyg_install + pre_command = " scripts/cyg_install.py;" + cyg_param = " -P make,patch,bash,vim,openssh,python,gcc,binutils " + shutdown_method = shell + cyg_cmd = "cmd /c D:\cyg_install.cmd" + cyg_timeout = 3600 + shutdown_command = shutdown /s /f /t 0 + variants: + - local: + cyg_type = local + cyg_param += " -L -l d:\\repo " + cyg_path = "/root/sdb/images/cyg" + - remote: + cyg_type = remote + cyg_param += " -s http://cygwin.basemirror.de " + cyg_path = "http://www.cygwin.com/setup.exe" + cyg_md5 = "a4f5eaaa1096891b9812b81f104fc4d9" + - migrate: install setup unattended_install.cdrom type = migration migration_test_command = help @@ -1236,7 +1255,7 @@ variants: # Windows section - @Windows: - no autotest linux_s3 vlan_tag ioquit unattended_install.(url|nfs|remote_ks) + no linux_s3 vlan_tag ioquit unattended_install.(url|nfs|remote_ks) shutdown_command = shutdown /s /f /t 0 reboot_command = shutdown /r /f /t 0 status_test_command = echo %errorlevel% @@ -1327,6 +1346,30 @@ variants: 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 = + cyg_install: + cdrom_cd1 = windows/cyg.iso + shell_prompt = "Administrator>$" + username = Administrator + password = 1q2w3eP + shell_client = telnet + shell_port = 23 + guest_port_remote_shell = 23 + autotest: + shell_prompt = "Administrator>$" + username = Administrator + password = 1q2w3eP + status_test_command = echo $? + shell_prompt = "\$ " + shell_client = ssh + shell_linesep = "\n" + shell_port = 22 + file_transfer_client = scp + file_transfer_port = 22 + guest_port_remote_shell = 22 + guest_port_file_transfer = 23 + test_patch_file = autotest.patch + autotest.iozone: + test_patch_file += " iozone.patch" variants: - Win2000: diff --git a/client/tests/kvm/tests_base.cfg.sample.orig b/client/tests/kvm/tests_base.cfg.sample.orig new file mode 100644 index 0000000..167e86d --- /dev/null +++ b/client/tests/kvm/tests_base.cfg.sample.orig @@ -0,0 +1,1884 @@ +# Copy this file to tests_base.cfg and edit it. +# +# Define the objects we'll be using +vms = vm1 +images = image1 +cdroms = cd1 +nics = nic1 +monitors = humanmonitor1 + +# 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 = yes + +# 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 = 512 +image_size = 10G +drive_index_image1 = 0 +shell_port = 22 +display = vnc +drive_index_cd1 = 1 + +# 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 +nic_script = scripts/qemu-ifup +address_index = 0 +run_tcpdump = yes + +# Misc +profilers = kvm_stat +login_timeout = 360 + + +# 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 + + - unattended_install: + type = unattended_install + kill_vm = yes + kill_vm_gracefully = yes + kill_vm_on_error = yes + force_create_image = yes + pre_command += " scripts/unattended.py;" + extra_params += " -boot d" + guest_port_unattended_install = 12323 + kernel = vmlinuz + initrd = initrd.img + nic_mode = tap + variants: + # Install guest from cdrom + - cdrom: + medium = cdrom + nic_mode = user + redirs += " unattended_install" + kernel = + initrd = + # Install guest from http/ftp url + - url: + medium = url + extra_params += " --append ks=floppy" + url = REPLACE_THIS_WITH_TREE_URL + # Install guest from nfs nfs_server:nfs_dir + - nfs: + medium = nfs + extra_params += " --append ks=floppy" + nfs_server = REPLACE_THIS_WITH_NFS_SERVER + nfs_dir = REPLACE_THIS_WITH_NFS_DIRECTORY + # Install guest with a remote kickstart + - remote_ks: + medium = url + extra_params += " --append ks=REPLACE_THIS_WITH_URL_OF_KS" + url = REPLACE_THIS_WITH_TREE_URL + + - boot: install setup unattended_install.cdrom + type = boot + restart_vm = yes + kill_vm_on_error = yes + login_timeout = 240 + + - reboot: install setup unattended_install.cdrom + type = boot + reboot_method = shell + kill_vm_on_error = yes + login_timeout = 240 + + - migrate: install setup 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 + variants: + - tcp: + migration_protocol = "tcp" + - unix: + migration_protocol = "unix" + - exec: + migration_protocol = "exec" + - mig_cancel: + migration_protocol = "tcp" + mig_cancel = True + + - boot_savevm: install setup 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 unattended_install.cdrom + 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 + - ctcs2: + # If you think this is too lengthy, please change the cerberus + # control file and set this timeout appropriately. + test_timeout = 3900 + test_control_file = cerberus.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 + + - linux_s3: install setup unattended_install.cdrom + type = linux_s3 + + - timedrift: install setup 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 unattended_install.cdrom + type = balloon_check + extra_params += " -balloon virtio" + iterations = 5 + + - stress_boot: install setup unattended_install.cdrom + type = stress_boot + max_vms = 5 + alive_test_cmd = uname -a + clone_address_index_base = 10 + 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 unattended_install.cdrom + type = guest_test + login_timeout = 360 + test_timeout = 600 + script_params = + reboot = yes + variants: + - autoit: + interpreter = 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 = "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: unattended_install.cdrom + type = iozone_windows + iozone_cmd = "D:\IOzone\iozone.exe -a" + iozone_timeout = 3600 + + - @whql: install setup unattended_install.cdrom + 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 + wtt_services = wttsvc + variants: + - whql_client_install: + type = whql_client_install + dsso_delete_machine_binary = deps/whql_delete_machine_15.exe + # 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 + - whql_submission: whql_client_install + type = whql_submission + extra_params += " -snapshot" + dsso_test_binary = deps/whql_submission_15.exe + test_timeout = 3600 + device_data = cat0 cat1 cat2 cat3 logoarch logoos whqlos whqlqual prog desc filter virt + 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 + variants: + - 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 + - hdd: + test_device = qemu harddisk + 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 + 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 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 unattended_install.cdrom + type = pci_hotplug + 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" + + - block_hotplug: install setup 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 = "SCSI" + variants: + - fmt_qcow2: + image_format_stg = qcow2 + - fmt_raw: + image_format_stg = raw + + - vlan_tag: install setup unattended_install.cdrom + type = vlan_tag + # subnet should not be used by host + subnet = 192.168.123 + vlans = "10 20" + nic_mode = tap + vms += " vm2" + extra_params_vm1 += " -snapshot" + extra_params_vm2 += " -snapshot" + kill_vm_gracefully_vm2 = no + address_index_vm2 = 1 + + - physical_resources_check: install setup unattended_install.cdrom + type = physical_resources_check + catch_uuid_cmd = dmidecode | awk -F: '/UUID/ {print $2}' + + - ksm_overcommit: + # 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: + type = iofuzz + + - virtio_console: + vms = '' + type = virtio_console + # smoke params - $console_type:data_string + # FIXME: test_smoke doesn't work with console yet (virtio_console bug) + # "serialport;console:Custom data" + virtio_console_smoke = "serialport" + # loopback params - '$source_console_type@buffer_length:$destination_console_type1@buffer_length:...:$loopback_buffer_length;...' + 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" + virtio_console_perf = "serialport;serialport@1000000:120" + + # 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 + + - ioquit: + type = ioquit + background_cmd = "for i in 1 2 3 4; do (nohup dd if=/dev/urandom of=/tmp/file bs=102400 count=10000000 &) done" + check_cmd = ps -a |grep dd + login_timeout = 360 + + - 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 + - commit: + subcommand = commit + - info: + subcommand = info + - rebase: + subcommand = rebase + rebase_mode = unsafe + image_name_snapshot1 = sn1 + image_name_snapshot2 = sn2 + + # 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 unattended_install.cdrom + type = shutdown + shutdown_method = system_powerdown + sleep_before_powerdown = 20 + kill_vm = yes + + - system_reset: install setup unattended_install.cdrom + type = boot + reboot_method = system_reset + sleep_before_reset = 20 + kill_vm_on_error = yes + + - shutdown: install setup 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 + - e1000: + nic_model = e1000 + - virtio_net: + nic_model = virtio + + +# Guests +variants: + # Linux section + - @Linux: + no autoit iozone_windows whql + 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.cdrom: + # 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" + + variants: + - Fedora: + no setup + shell_prompt = "^\[.*\][\#\$]\s*$" + unattended_install.cdrom: + pxe_dir = "images/pxeboot" + pxe_image = "vmlinuz" + pxe_initrd = "initrd.img" + tftp = "images/tftpboot" + bootp = "/pxelinux.0" + extra_params += " -boot cn" + # You have to use ks=floppy if you want to use floppies to + # hold your kickstart file + #kernel_args = "ks=floppy nicdelay=60 console=ttyS0,115200 console=tty0" + kernel_args = "ks=cdrom nicdelay=60 console=ttyS0,115200 console=tty0" + + variants: + - 8.32: + no setup + image_name = fc8-32 + cdrom_cd1 = linux/Fedora-8-i386-DVD.iso + md5sum = dd6c79fddfff36d409d02242e7b10189 + md5sum_1m = dabae451bb69fbbad0e505b25144b1f9 + install: + steps = Fedora-8-i386.steps + unattended_install.cdrom: + unattended_file = unattended/Fedora-8.ks + tftp = images/f8-32/tftpboot + #floppy = images/f8-32/ks.vfd + cdrom_unattended = images/f8-32/ks.iso + + - 8.64: + no setup + image_name = f8-64 + cdrom_cd1 = linux/Fedora-8-x86_64-DVD.iso + md5sum = 2cb231a86709dec413425fd2f8bf5295 + md5sum_1m = 145f6414e19492649a56c89f0a45e719 + install: + steps = Fedora-8-64.steps + unattended_install.cdrom: + unattended_file = unattended/Fedora-8.ks + tftp = images/f8-64/tftpboot + #floppy = images/f8-64/ks.vfd + cdrom_unattended = images/f8-64/ks.iso + + - 9.32: + image_name = f9-32 + cdrom_cd1 = linux/Fedora-9-i386-DVD.iso + md5sum = 72601f685ea8c808c303353d8bf4d307 + md5sum_1m = f24fa25689e5863f1b99984c6feb787f + install: + steps = Fedora-9-i386.steps + unattended_install.cdrom: + unattended_file = unattended/Fedora-9.ks + tftp = images/f9-32/tftpboot + #floppy = images/f9-32/ks.vfd + cdrom_unattended = images/f9-32/ks.iso + + - 9.64: + image_name = f9-64 + cdrom_cd1 = linux/Fedora-9-x86_64-DVD.iso + md5sum = 05b2ebeed273ec54d6f9ed3d61ea4c96 + md5sum_1m = 9822ab5097e37e8fe306ef2192727db4 + install: + steps = Fedora-9-64.steps + unattended_install.cdrom: + unattended_file = unattended/Fedora-9.ks + tftp = images/f9-64/tftpboot + #floppy = images/f9-64/ks.vfd + cdrom_unattended = images/f9-64/ks.iso + + - 10.32: + image_name = f10-32 + cdrom_cd1 = linux/Fedora-10-i386-DVD.iso + md5sum = 27e581edb392728c4a07d00d3fc5ced0 + md5sum_1m = bd67c68bdf595e4ba7131ec702159181 + unattended_install.cdrom: + unattended_file = unattended/Fedora-10.ks + tftp = images/f10-32/tftpboot + #floppy = images/f10-32/ks.vfd + cdrom_unattended = images/f10-32/ks.iso + + - 10.64: + image_name = f10-64 + cdrom_cd1 = linux/Fedora-10-x86_64-DVD.iso + sha1sum = f1e5ae7db6a1ba227de7294c4112385922388648 + md5sum_1m = 732857cbf40c80c34683e874601d982c + unattended_install.cdrom: + unattended_file = unattended/Fedora-10.ks + tftp = images/f10-64/tftpboot + #floppy = images/f10-64/ks.vfd + cdrom_unattended = images/f10-64/ks.iso + + - 11.32: + image_name = f11-32 + cdrom_cd1 = linux/Fedora-11-i386-DVD.iso + md5sum = e3b1e2d1ba42aa4705fa5f41771b3927 + md5sum_1m = dc8ddf90648c247339c721395aa49714 + install: + steps = Fedora-11-32.steps + unattended_install.cdrom: + unattended_file = unattended/Fedora-11.ks + tftp = images/f11-32/tftpboot + #floppy = images/f11-32/ks.vfd + cdrom_unattended = images/f11-32/ks.iso + + - 11.64: + image_name = f11-64 + cdrom_cd1 = linux/Fedora-11-x86_64-DVD.iso + md5sum = 9d419844adeb93120215fe7505c9bce8 + md5sum_1m = 405ee05e2387a2e4328b008d5bcbdd1e + unattended_install.cdrom: + unattended_file = unattended/Fedora-11.ks + tftp = images/f11-64/tftpboot + #floppy = images/f11-64/ks.vfd + cdrom_unattended = images/f11-64/ks.iso + + - 12.32: + image_name = f12-32 + cdrom_cd1 = linux/Fedora-12-i386-DVD.iso + md5sum = 2c4c1c0d09f2fbcfd8ee6a0c5542eeb2 + md5sum_1m = eee935d7f0cf2ef03f6ddce3a2a50050 + unattended_install.cdrom: + unattended_file = unattended/Fedora-12.ks + tftp = images/f12-32/tftpboot + #floppy = images/f12-32/ks.vfd + cdrom_unattended = images/f12-32/ks.iso + + - 12.64: + image_name = f12-64 + cdrom_cd1 = linux/Fedora-12-x86_64-DVD.iso + md5sum = 6dd31e292cc2eb1140544e9b1ba61c56 + md5sum_1m = 514efbd7698b55ff6768c8605438bfc5 + unattended_install.cdrom: + unattended_file = unattended/Fedora-12.ks + tftp = images/f12-64/tftpboot + #floppy = images/f12-64/ks.vfd + cdrom_unattended = images/f12-64/ks.iso + + - 13.32: + image_name = f13-32 + cdrom_cd1 = linux/Fedora-13-i386-DVD.iso + md5sum = 212fec517c2629b4b5eaf3662ac13136 + md5sum_1m = 4e1578a6ed5a6e7cd03b8fb074030746 + unattended_install.cdrom: + unattended_file = unattended/Fedora-13.ks + tftp = images/f13-32/tftpboot + #floppy = images/f13-32/ks.vfd + cdrom_unattended = images/f13-32/ks.iso + + - 13.64: + image_name = f13-64 + cdrom_cd1 = linux/Fedora-13-x86_64-DVD.iso + md5sum = 6fbae6379cf27f36e1f2c7827ba7dc35 + md5sum_1m = 68821b9de4d3b5975d6634334e7f47a6 + unattended_install.cdrom: + unattended_file = unattended/Fedora-13.ks + tftp = images/f13-64/tftpboot + #floppy = images/f13-64/ks.vfd + cdrom_unattended = images/f13-64/ks.iso + + + - 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 = linux/dsl-4.2.5.iso + md5sum = 61694888aede3e01229865b8e6acd4a1 + md5sum_1m = 527f2481bd25310f2e3a6e5345ff3d12 + + - Mandriva-One-2007: + only install + image_name = mandriva-one-2007 + steps = Mandriva-One-2007-32.steps + cdrom_cd1 = linux/mandriva-one-2007-i386.iso + md5sum = 7e9e183dc11b9d39f480238e4e12bb05 + md5sum_1m = dc7865a75db665efc86d59bca7c1fe07 + + - OpenSUSE: + no setup + shell_prompt = ".*:.*\s#" + unattended_install.cdrom: + pxe_image = "linux" + pxe_initrd = "initrd" + tftp = "images/tftpboot" + bootp = "/pxelinux.0" + extra_params += " -boot cn" + # You have to use autoyast=floppy if you want to use floppies to + # hold your autoyast file + #kernel_args = "autoyast=floppy console=ttyS0,115200 console=tty0" + kernel_args = "autoyast=cdrom console=ttyS0,115200 console=tty0" + post_install_delay = 10 + + variants: + - 11.0.32: + image_name = openSUSE-11.0-32 + cdrom_cd1 = linux/openSUSE-11.0-DVD-i386.iso + md5sum = ed6a5b3feb668866df812b1c2aed9d7f + md5sum_1m = c720b30557af758e69de450409516369 + install: + steps = openSUSE-11.0-32.steps + unattended_install.cdrom: + unattended_file = unattended/OpenSUSE-11.xml + tftp = images/opensuse-11-0-32/tftpboot + floppy = images/opensuse-11-0-32/floppy.img + pxe_dir = boot/i386/loader + + - 11.0.64: + image_name = openSUSE-11.0-64 + cdrom_cd1 = linux/openSUSE-11.0-DVD-x86_64.iso + md5sum = 512c8346b0f8eb35f28c4eb96454d391 + md5sum_1m = 661aa4cd031df2f25ea0102318a3f4d1 + unattended_install.cdrom: + unattended_file = unattended/OpenSUSE-11.xml + tftp = images/opensuse-11-0-64/tftpboot + #floppy = images/opensuse-11-0-64/autoyast.vfd + cdrom_unattended = images/opensuse-11-0-64/autoyast.iso + pxe_dir = boot/x86_64/loader + + - 11.1.32: + image_name = openSUSE-11.1-32 + cdrom_cd1 = linux/openSUSE-11.1-DVD-i586.iso + md5sum = 8f51b278c0415be28c5699e465444bd3 + md5sum_1m = b70217417468389083429f81ba7ce2bd + install: + steps=openSUSE-11.1-32-and-64.steps + unattended_install.cdrom: + unattended_file = unattended/OpenSUSE-11.xml + tftp = images/opensuse-11-1-32/tftpboot + #floppy = images/opensuse-11-1-32/autoyast.vfd + cdrom_unattended = images/opensuse-11-1-32/autoyast.iso + pxe_dir = boot/i386/loader + + - 11.1.64: + image_name = openSUSE-11.1-64 + cdrom_cd1 = linux/openSUSE-11.1-DVD-x86_64.iso + md5sum = 2afee1b8a87175e6dee2b8dbbd1ad8e8 + md5sum_1m = 768ca32503ef92c28f2d144f2a87e4d0 + install: + steps=openSUSE-11.1-32-and-64.steps + unattended_install.cdrom: + unattended_file = unattended/OpenSUSE-11.xml + tftp = images/opensuse-11-1-64/tftpboot + #floppy = images/opensuse-11-1-64/autoyast.vfd + cdrom_unattended = images/opensuse-11-1-64/autoyast.iso + pxe_dir = boot/x86_64/loader + + - 11.2.32: + image_name = openSUSE-11.2-32 + cdrom_cd1 = linux/openSUSE-11.2-DVD-i586.iso + md5sum = 295d713314a30ad017948f0d542c6d92 + md5sum_1m = 1f8767d00acb492be5a5627c834e543f + unattended_install.cdrom: + unattended_file = unattended/OpenSUSE-11.xml + tftp = images/opensuse-11-2-32/tftpboot + #floppy = images/opensuse-11-2-32/autoyast.vfd + cdrom_unattended = images/opensuse-11-2-32/autoyast.iso + pxe_dir = boot/i386/loader + + - 11.2.64: + image_name = openSUSE-11.2-64 + cdrom_cd1 = linux/openSUSE-11.2-DVD-x86_64.iso + md5sum = 6a09295e34dc030319d040f67f4742c6 + md5sum_1m = 11fd11d39744450b898f04c371dde2e7 + unattended_install.cdrom: + unattended_file = unattended/OpenSUSE-11.xml + tftp = images/opensuse-11-2-64/tftpboot + #floppy = images/opensuse11-2-64/autoyast.vfd + cdrom_unattended = images/opensuse11-2-64/autoyast.iso + pxe_dir = boot/x86_64/loader + + - 11.3.32: + image_name = openSUSE-11.3-32 + cdrom_cd1 = linux/openSUSE-11.3-DVD-i586.iso + md5sum = 1a1da28c84e3cdad750d5cfa21c4fd17 + md5sum_1m = 4dd26906ce6cb3946519cb0b0de4b0f8 + unattended_install.cdrom: + unattended_file = unattended/OpenSUSE-11.xml + tftp = images/opensuse-11-3-32/tftpboot + #floppy = images/opensuse-11-3-32/autoyast.vfd + cdrom_unattended = images/opensuse-11-3-32/autoyast.iso + pxe_dir = boot/i386/loader + + - 11.3.64: + image_name = openSUSE-11.3-64 + cdrom_cd1 = linux/openSUSE-11.3-DVD-x86_64.iso + md5sum = adf5d2a0a03c1e3aaf102fd6a4771b87 + md5sum_1m = e0dd12dac30d296417256775e1234c6e + unattended_install.cdrom: + unattended_file = unattended/OpenSUSE-11.xml + tftp = images/opensuse-11-3-64/tftpboot + #floppy = images/opensuse-11-3-64/autoyast.vfd + cdrom_unattended = images/opensuse-11-3-64/autoyast.iso + pxe_dir = boot/x86_64/loader + + - SLES: + shell_prompt = "^root@.*[\#\$]\s*$|#" + unattended_install.cdrom: + pxe_image = "linux" + pxe_initrd = "initrd" + bootp = "/pxelinux.0" + extra_params += " -boot cn" + # You have to use autoyast=floppy if you want to use floppies to + # hold your autoyast file + #kernel_args = "autoyast=floppy console=ttyS0,115200 console=tty0" + kernel_args = "autoyast=cdrom console=ttyS0,115200 console=tty0" + post_install_delay = 10 + + variants: + - 11.0.32: + image_name = sles11-32 + cdrom_cd1 = linux/SLES-11-DVD-i586-GM-DVD1.iso + md5sum = 4958d4dde2575666355c8a1c5858bab0 + md5sum_1m = 1f19d4eff5bcead2a3e5b8b4212b6796 + unattended_install.cdrom: + unattended_file = unattended/SLES-11.xml + tftp = images/sles-11-0-32/tftpboot + #floppy = images/sles-11-0-32/autoyast.vfd + cdrom_unattended = images/sles-11-0-32/autoyast.iso + pxe_dir = boot/i386/loader + + - 11.0.64: + image_name = sles11-64 + cdrom_cd1 = linux/SLES-11-DVD-x86_64-GM-DVD1.iso + md5sum = 50a2bd45cd12c3808c3ee48208e2586b + md5sum_1m = 00000951cab7c32e332362fc424c1054 + unattended_install.cdrom: + unattended_file = unattended/SLES-11.xml + tftp = images/sles-11-0-64/tftpboot + #floppy = images/sles-11-0-64/autoyast.vfd + cdrom_unattended = images/sles-11-0-64/autoyast.iso + pxe_dir = boot/x86_64/loader + + - 11.1.32: + image_name = sles11sp1-32 + cdrom_cd1 = linux/SLES-11-SP1-DVD-i586-GM-DVD1.iso + md5sum = 0dd6886858d93501c38854552b9b1b0d + md5sum_1m = a626a3d50813410e3ac42794e05773bb + unattended_install: + unattended_file = unattended/SLES-11.xml + tftp = images/sles-11-1-32/tftpboot + #floppy = images/sles-11-1-32/autoyast.vfd + cdrom_unattended = images/sles-11-1-32/autoyast.iso + pxe_dir = boot/i386/loader + + - 11.1.64: + image_name = sles11sp1-64 + cdrom_cd1 = linux/SLES-11-SP1-DVD-x86_64-GM-DVD1.iso + md5sum = d2e10420f3689faa49a004b60fb396b7 + md5sum_1m = f7f67b5da46923a9f01da8a2b6909654 + unattended_install: + unattended_file = unattended/SLES-11.xml + tftp = images/sles-11-1-64/tftpboot + #floppy = images/sles-11-1-64/autoyast.vfd + cdrom_unattended = images/sles-11-1-64/autoyast.iso + pxe_dir = boot/x86_64/loader + + - @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 = linux/ubuntu-6.10-desktop-i386.iso + md5sum = 17fb825641571ce5888a718329efd016 + md5sum_1m = 7531d0a84e7451d17c5d976f1c3f8509 + + - Ubuntu-8.04-32: + skip = yes + image_name = ubuntu-8.04-32 + install: + steps = Ubuntu-8.04-32.steps + cdrom_cd1 = 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 = linux/ubuntu-8.10-server-i386.iso + md5sum = a2ec9975a91e1228c8292ed9799dc302 + md5sum_1m = ea493eb8ef7722ead693492fd9f8a13f + setup: + steps = Ubuntu-8.10-server-32-gcc.steps + + - RHEL: + no setup + shell_prompt = "^\[.*\][\#\$]\s*$" + nic_hotplug: + modprobe_module = acpiphp + block_hotplug: + modprobe_module = acpiphp + unattended_install.cdrom: + pxe_dir = "images/pxeboot" + pxe_image = "vmlinuz" + pxe_initrd = "initrd.img" + tftp = "images/tftpboot" + bootp = "/pxelinux.0" + extra_params += " -boot cn" + # You have to use ks=floppy if you want to use floppies to + # hold your kickstart file + #kernel_args = "ks=floppy nicdelay=60 console=ttyS0,115200 console=tty0" + kernel_args = "ks=cdrom nicdelay=60 console=ttyS0,115200 console=tty0" + + variants: + - 3.9.i386: + no setup autotest linux_s3 guest_s4 shutdown + image_name = rhel3-32 + mem_chk_cmd = dmidecode | awk -F: '/Maximum Capacity/ {print $2}' + cdrom_cd1 = linux/RHEL-3.9-i386-DVD.iso + md5sum = ddd11a1cb104119039b0fa05df6d52b8 + md5sum_1m = 5f10c9417c7b8372b3456c1b5f3f9ed0 + install: + steps=RHEL-3.9-i386.steps + unattended_install.cdrom: + unattended_file = unattended/RHEL-3-series.ks + tftp = images/rhel39-32/tftpboot + #floppy = images/rhel39-32/ks.vfd + cdrom_unattended = images/rhel39-32/ks.iso + + - 3.9.x86_64: + no setup autotest linux_s3 guest_s4 shutdown + image_name = rhel3-64 + mem_chk_cmd = dmidecode | awk -F: '/Maximum Capacity/ {print $2}' + cdrom_cd1 = linux/RHEL-3.9-x86_64-DVD.iso + md5sum = bf4635e4a4bd3b43838e72bc8c329d55 + md5sum_1m = 18ecd37b639109f1b2af05cfb57dfeaf + install: + steps=RHEL-3.9-x86_64.steps + unattended_install.cdrom: + unattended_file = unattended/RHEL-3-series.ks + tftp = images/rhel39-64/tftpboot + #floppy = images/rhel39-64/ks.vfd + cdrom_unattended = images/rhel39-64/ks.iso + + - 4.7.i386: + no setup autotest + image_name = rhel4-32 + cdrom_cd1 = linux/RHEL-4.7-i386-DVD.iso + md5sum = ee5092653732a88ddbaf8eef2484c500 + md5sum_1m = 127081cbed825d7232331a2083975528 + install: + steps = RHEL-4.7-i386.steps + unattended_install.cdrom: + unattended_file = unattended/RHEL-4-series.ks + tftp = images/rhel47-32/tftpboot + #floppy = images/rhel47-32/ks.vfd + cdrom_unattended = images/rhel47-32/ks.iso + + - 4.7.x86_64: + no setup autotest + image_name = rhel4-64 + cdrom_cd1 = linux/RHEL-4.7-x86_64-DVD.iso + md5sum = ea9dae16dd86f7d94092d0e672333292 + md5sum_1m = 58fa63eaee68e269f4cb1d2edf479792 + install: + steps = RHEL-4.7-x86_64.steps + unattended_install.cdrom: + unattended_file = unattended/RHEL-4-series.ks + tftp = images/rhel47-64/tftpboot + #floppy = images/rhel47-64/ks.vfd + cdrom_unattended = images/rhel47-64/ks.iso + + - 4.8.i386: + no setup autotest + image_name = rhel4-32 + cdrom_cd1 = linux/RHEL-4.8-i386-DVD.iso + md5sum = b024f0af5079539d3ef51f71fed0b194 + md5sum_1m = 969c197402b9058f28a278c1f807d15b + unattended_install.cdrom: + unattended_file = unattended/RHEL-4-series.ks + tftp = images/rhel48-32/tftpboot + #floppy = images/rhel48-32/ks.vfd + cdrom_unattended = images/rhel48-32/ks.iso + + - 4.8.x86_64: + no setup autotest + image_name = rhel4-64 + cdrom_cd1 = linux/RHEL-4.8-x86_64-DVD.iso + md5sum = 696bc877b0200cc942626673fcc3fc09 + md5sum_1m = b11ac0ef7fd345ad712966972db63886 + unattended_install.cdrom: + unattended_file = unattended/RHEL-4-series.ks + tftp = images/rhel48-64/tftpboot + #floppy = images/rhel48-64/ks.vfd + cdrom_unattended = images/rhel48-64/ks.iso + + - 5.3.i386: + no setup + image_name = rhel5-32 + cdrom_cd1 = linux/RHEL-5.3-i386-DVD.iso + md5sum = 371c62851611fd32ead440df6f24a296 + md5sum_1m = 242318dd44152210f6ff6cdda1bfbf51 + install: + steps = RHEL-5.3-i386.steps + unattended_install.cdrom: + unattended_file = unattended/RHEL-5-series.ks + tftp = images/rhel53-32/tftpboot + #floppy = images/rhel53-32/ks.vfd + cdrom_unattended = images/rhel53-32/ks.iso + + - 5.3.x86_64: + no setup + image_name = rhel5-64 + cdrom_cd1 = linux/RHEL-5.3-x86_64-DVD.iso + md5sum = c5ed6b284410f4d8212cafc78fd7a8c5 + md5sum_1m = b999f437583098ea5bbd56fb1de1d011 + install: + steps=RHEL-5.3-x86_64.steps + unattended_install.cdrom: + unattended_file = unattended/RHEL-5-series.ks + tftp = images/rhel53-64/tftpboot + #floppy = images/rhel53-64/ks.vfd + cdrom_unattended = images/rhel53-64/ks.iso + + - 5.4.i386: + no setup + image_name = rhel5-32 + cdrom_cd1 = linux/RHEL-5.4-i386-DVD.iso + md5sum = 7a12ec6599527e4f3d1790b51eadbfed + md5sum_1m = 0dbeb8f58d213752d8c029e8601abfbb + unattended_install.cdrom: + unattended_file = unattended/RHEL-5-series.ks + tftp = images/rhel54-32/tftpboot + #floppy = images/rhel54-32/ks.vfd + cdrom_unattended = images/rhel54-32/ks.iso + + - 5.4.x86_64: + no setup + image_name = rhel5-64 + cdrom_cd1 = linux/RHEL-5.4-x86_64-DVD.iso + md5sum = 04fe3c10202402d7b389528d2bad0210 + md5sum_1m = 3e74112003e88a966754849dbb8f5c3f + unattended_install.cdrom: + unattended_file = unattended/RHEL-5-series.ks + tftp = images/rhel54-64/tftpboot + #floppy = images/rhel54-64/ks.vfd + cdrom_unattended = images/rhel54-64/ks.iso + + - 5.5.i386: + no setup + image_name = rhel5-32 + cdrom_cd1 = linux/RHEL-5.5-i386-DVD.iso + md5sum = 148858b157f275d9153797efddfc83c3 + md5sum_1m = 2502cc7ddb9d0684fe08c4a83d247902 + unattended_install.cdrom: + unattended_file = unattended/RHEL-5-series.ks + tftp = images/rhel55-32/tftpboot + #floppy = images/rhel55-32/ks.vfd + cdrom_unattended = images/rhel55-32/ks.iso + + - 5.5.x86_64: + no setup + image_name = rhel5-64 + cdrom_cd1 = linux/RHEL-5.5-x86_64-DVD.iso + md5sum = f3119f883257ef9041234feda2f1cad0 + md5sum_1m = a744084a03f6a08627f71527fc107a1e + unattended_install.cdrom: + unattended_file = unattended/RHEL-5-series.ks + tftp = images/rhel55-64/tftpboot + #floppy = images/rhel55-64/ks.vfd + cdrom_unattended = images/rhel55-64/ks.iso + + + # Windows section + - @Windows: + no autotest linux_s3 vlan_tag ioquit unattended_install.(url|nfs|remote_ks) + 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 = windows/winutils.iso + + cpu_chk_cmd = echo %NUMBER_OF_PROCESSORS% + mem_chk_cmd = wmic memphysical + mem_chk_cur_cmd = wmic memphysical + + unattended_install.cdrom: + timeout = 7200 + finish_program = deps/finish.exe + cdroms += " winutils" + cdrom_winutils = windows/winutils.iso + drive_index_winutils = 2 + # 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 = 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 + migration_bg_check_command = tasklist | find /I "ping.exe" + migration_bg_kill_command = taskkill /IM ping.exe /F + 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 = + + variants: + - Win2000: + no reboot whql + image_name = win2000-32 + kill_vm_gracefully = no + install: + steps = Win2000-32.steps + cdrom_cd1 = windows/Windows2000_sp4.iso + md5sum = dda6039f3a9173f0f6bfae40f5efdfea + md5sum_1m = dd28fba196d366d56fe774bd93df5527 + user = user + setup: + steps = Win2000-32-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/Windows2000_sp4.iso + md5sum = dda6039f3a9173f0f6bfae40f5efdfea + md5sum_1m = dd28fba196d366d56fe774bd93df5527 + unattended_file = unattended/win2000-32.sif + floppy = images/win2000-32/answer.vfd + + - WinXP: + image_name = winXP + variants: + - 32: + image_name += -32 + install: + cdrom_cd1 = windows/WindowsXP-sp2-vlk.iso + md5sum = 743450644b1d9fe97b3cf379e22dceb0 + md5sum_1m = b473bf75af2d1269fec8958cf0202bfd + user = user + steps = WinXP-32.steps + setup: + steps = WinXP-32-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/WindowsXP-sp2-vlk.iso + md5sum = 743450644b1d9fe97b3cf379e22dceb0 + md5sum_1m = 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 + dd_data_logoarch = X86 + dd_data_logoos = Windows XP + dd_data_whqlos = Windows XP + dd_data_whqlqual = Basic + + - 64: + image_name += -64 + install: + cdrom_cd1 = windows/WindowsXP-64.iso + md5sum = 8d3f007ec9c2060cec8a50ee7d7dc512 + md5sum_1m = e812363ff427effc512b7801ee70e513 + user = user + steps = WinXP-64.steps + setup: + steps = WinXP-64-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/WindowsXP-64.iso + md5sum = 8d3f007ec9c2060cec8a50ee7d7dc512 + md5sum_1m = 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 + dd_data_logoarch = AMD64 + dd_data_logoos = Windows XP 64-Bit Edition Version 2003 + dd_data_whqlos = Windows XP x64 + dd_data_whqlqual = Basic + + - Win2003: + image_name = win2003 + image_size = 20G + + variants: + - 32: + image_name += -32 + install: + cdrom_cd1 = windows/Windows2003_r2_VLK.iso + md5sum = 03e921e9b4214773c21a39f5c3f42ef7 + md5sum_1m = 37c2fdec15ac4ec16aa10fdfdb338aa3 + user = user + steps = Win2003-32.steps + setup: + steps = Win2003-32-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/Windows2003_r2_VLK.iso + md5sum = 03e921e9b4214773c21a39f5c3f42ef7 + md5sum_1m = 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 + dd_data_logoos = Windows Server 2003 + dd_data_whqlos = Windows Server 2003 + dd_data_whqlqual = Basic + + - 64: + image_name += -64 + install: + cdrom_cd1 = windows/Windows2003-x64.iso + md5sum = 5703f87c9fd77d28c05ffadd3354dbbd + md5sum_1m = 439393c384116aa09e08a0ad047dcea8 + user = user + steps = Win2003-64.steps + setup: + steps = Win2003-64-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/Windows2003-x64.iso + md5sum = 5703f87c9fd77d28c05ffadd3354dbbd + md5sum_1m = 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 + dd_data_logoos = Windows Server 2003 + dd_data_whqlos = Windows Server 2003 x64 + dd_data_whqlqual = Basic + + - WinVista: + 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 + dd_data_whqlqual = Premium + variants: + - sp1: + image_name += -sp1-32 + install: + cdrom_cd1 = windows/WindowsVista-32.iso + md5sum = 1008f323d5170c8e614e52ccb85c0491 + md5sum_1m = c724e9695da483bc0fd59e426eaefc72 + steps = Win-Vista-32.steps + setup: + steps = WinVista-32-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/WindowsVista-32.iso + md5sum = 1008f323d5170c8e614e52ccb85c0491 + md5sum_1m = 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' + + - sp2: + image_name += -sp2-32 + unattended_install.cdrom: + cdrom_cd1 = windows/en_windows_vista_with_sp2_x86_dvd_342266.iso + md5sum = 19ca90a425667812977bab6f4ce24175 + md5sum_1m = 89c15020e0e6125be19acf7a2e5dc614 + sha1sum = 25ad9a776503e6a583bec07879dbcc5dfd20cd6e + sha1sum_1m = 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' + + - 64: + whql_submission: + dd_data_logoarch = AMD64 + dd_data_logoos = Windows Vista + dd_data_whqlos = Windows Vista Client x64 + dd_data_whqlqual = Premium + variants: + - sp1: + image_name += -sp1-64 + install: + cdrom_cd1 = windows/WindowsVista-64.iso + md5sum = 11e2010d857fffc47813295e6be6d58d + md5sum_1m = 0947bcd5390546139e25f25217d6f165 + steps = Win-Vista-64.steps + setup: + steps = WinVista-64-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/WindowsVista-64.iso + md5sum = 11e2010d857fffc47813295e6be6d58d + md5sum_1m = 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' + - sp2: + image_name += -sp2-64 + unattended_install.cdrom: + cdrom_cd1 = windows/en_windows_vista_sp2_x64_dvd_342267.iso + md5sum = a1c024d7abaf34bac3368e88efbc2574 + md5sum_1m = 3d84911a80f3df71d1026f7adedc2181 + sha1sum = aaee3c04533899f9f8c4ae0c4250ef5fafbe29a3 + sha1sum_1m = 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' + + - Win2008: + no whql + image_name = win2008 + image_size = 20G + + variants: + - 32: + variants: + - sp1: + image_name += -sp1-32 + install: + cdrom_cd1 = windows/Windows2008-x86.iso + #en_windows_server_2008_datacenter_enterprise_standard_x86_dvd_X14-26710.iso + md5sum=0bfca49f0164de0a8eba236ced47007d + md5sum_1m=07d7f5006393f74dc76e6e2e943e2440 + sha1sum = 6ca018ff96f1e9b2b310a36546b6fded99a421e6 + steps = Win2008-32.steps + setup: + steps = Win2008-32-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/Windows2008-x86.iso + md5sum=0bfca49f0164de0a8eba236ced47007d + md5sum_1m=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 + unattended_install.cdrom: + cdrom_cd1 = windows/en_windows_server_2008_datacenter_enterprise_standard_sp2_x86_dvd_342333.iso + md5sum = b9201aeb6eef04a3c573d036a8780bdf + md5sum_1m = b7a9d42e55ea1e85105a3a6ad4da8e04 + sha1sum = 49d0d6917c1256fe81048d414fa473bbc76a8724 + sha1sum_1m = 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: + -sp1: + image_name += -sp1-64 + install: + steps = Win2008-64.steps + cdrom_cd1 = windows/Windows2008-x64.iso + #en_windows_server_2008_datacenter_enterprise_standard_x64_dvd_X14-26714.iso + md5sum=27c58cdb3d620f28c36333a5552f271c + md5sum_1m=efdcc11d485a1ef9afa739cb8e0ca766 + sha1sum = bd000374709f67e9358814db6ec8f0ddaaa16f70 + passwd = 1q2w3eP + setup: + steps = Win2008-64-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/Windows2008-x64.iso + md5sum=27c58cdb3d620f28c36333a5552f271c + md5sum_1m=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 + unattended_install.cdrom: + cdrom_cd1 = windows/en_windows_server_2008_datacenter_enterprise_standard_sp2_x64_dvd_342336.iso + md5sum = e94943ef484035b3288d8db69599a6b5 + md5sum_1m = ee55506823d0efffb5532ddd88a8e47b + sha1sum = 34c7d726c57b0f8b19ba3b40d1b4044c15fc2029 + sha1sum_1m = 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 + unattended_install.cdrom: + cdrom_cd1 = windows/en_windows_server_2008_r2_standard_enterprise_datacenter_and_web_x64_dvd_x15-59754.iso + md5sum = 0207ef392c60efdda92071b0559ca0f9 + md5sum_1m = a5a22ce25008bd7109f6d830d627e3ed + sha1sum = ad855ea913aaec3f1d0e1833c1aef7a0de326b0a + sha1sum_1m = 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 + 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: + cdrom_cd1 = windows/en_windows_7_ultimate_x86_dvd_x15-65921.iso + md5sum = d0b8b407e8a3d4b75ee9c10147266b89 + md5sum_1m = 2b0c2c22b1ae95065db08686bf83af93 + sha1sum = 5395dc4b38f7bdb1e005ff414deedfdb16dbf610 + sha1sum_1m = 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 + dd_data_whqlos = Windows 7 Client + dd_data_whqlqual = Logo + + - 64: + image_name += -64 + install: + cdrom_cd1 = windows/en_windows_7_ultimate_x64_dvd_x15-65922.iso + md5sum=f43d22e4fb07bf617d573acd8785c028 + md5sum_1m=b44d8cf99dbed2a5cb02765db8dfd48f + passwd = 1q2w3eP + steps = Win7-64.steps + setup: + steps = Win7-64-rss.steps + unattended_install.cdrom: + cdrom_cd1 = windows/en_windows_7_ultimate_x64_dvd_x15-65922.iso + md5sum = f43d22e4fb07bf617d573acd8785c028 + md5sum_1m = b44d8cf99dbed2a5cb02765db8dfd48f + sha1sum = 326327cc2ff9f05379f5058c41be6bc5e004baa7 + sha1sum_1m = 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 + dd_data_whqlos = Windows 7 Client x64 + dd_data_whqlqual = Logo + + + # 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 = bsd/netbsd-1.6.2-i386.iso + md5sum=72eb680300f77d529bfbc880ba8208f3 + md5sum_1m=f1a9e1e825c90adfb1be35c6177bd9ac + + - OpenBSD-4.1: + image_name = OpenBSD-4.1 + steps = OpenBSD-4.1-32.steps + cdrom_cd1 = unix/openbsd41-i386-07-05-06.iso + md5sum = 984790db10ebdd6fc7a9cf97abc7c967 + md5sum_1m = 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 = unix/belenix_0.7.1.iso + md5sum = 29cea6160cf5250de138e2820e53e342 + md5sum_1m = 427bbef1b85d6d051799b825d686ae94 + + - Slax: + steps = Slax-6.0.7.steps + cdrom_cd1 = linux/slax-6.0.7.iso + md5sum = cde0ecba3c8289d786e12c44666ded6e + md5sum_1m = ddf02bc7444f22d1160a6e5a8fc8723f + + - FreeSBIE-2.0.1: + steps = FreeSBIE-2.0.1.steps + cdrom_cd1 = unix/FreeSBIE-2.0.1-RELEASE.iso + md5sum = b2f680d27c21bbfaf4fb90dce090a118 + md5sum_1m = 4d81ee7fe0101b0a14225963bfff60c1 + + - memtest: + mem = 128 + steps = memtest86+.steps + cdrom_cd1 = misc/memtest86+-2.01.iso + md5sum = 9fae22f2666369968a76ef59e9a81ced + + +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 + image_boot=yes + + +virtio_net|virtio_blk|e1000|balloon_check: + only Fedora.11 Fedora.12 Fedora.13 RHEL.5 OpenSUSE.11 SLES.11 Ubuntu-8.10-server + # only WinXP Win2003 Win2008 WinVista Win7 Fedora.11 Fedora.12 Fedora.13 RHEL.5 OpenSUSE.11 SLES.11 Ubuntu-8.10-server + + +variants: + - @qcow2: + image_format = qcow2 + post_command += " python scripts/check_image.py;" + post_command_timeout = 600 + post_command_noncritical = yes + ioquit: + post_command_noncritical = no + - vmdk: + no ioquit + only Fedora Ubuntu Windows + only smp2 + only rtl8139 + image_format = vmdk + - raw: + no ioquit + only Fedora Ubuntu Windows + only smp2 + only rtl8139 + image_format = raw + + +variants: + - @smallpages: + - hugepages: + pre_command += " scripts/hugepage.py /mnt/kvm_hugepage;" + post_command += " umount /mnt/kvm_hugepage && echo 0 > /proc/sys/vm/nr_hugepages;" + extra_params += " -mem-path /mnt/kvm_hugepage" + + +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/ -- 1.7.0.4 --===============1356293238== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Autotest mailing list Autotest@test.kernel.org http://test.kernel.org/cgi-bin/mailman/listinfo/autotest --===============1356293238==--