From mboxrd@z Thu Jan 1 00:00:00 1970 From: Amos Kong Subject: [RFC PATCH 10/14] KVM-test: Add a subtest of pxe Date: Tue, 20 Jul 2010 09:36:16 +0800 Message-ID: <20100720013616.2212.34704.stgit@z> References: <20100720013414.2212.13476.stgit@z> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Cc: autotest@test.kernel.org, qemu-devel@nongnu.org, kvm@vger.kernel.org To: lmr@redhat.com Return-path: Received: from mx1.redhat.com ([209.132.183.28]:37173 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932088Ab0GTBgV (ORCPT ); Mon, 19 Jul 2010 21:36:21 -0400 In-Reply-To: <20100720013414.2212.13476.stgit@z> Sender: kvm-owner@vger.kernel.org List-ID: This case just snoop tftp packet through tcpdump, it depends on public dhcp server, better to test it through dnsmasq. Signed-off-by: Jason Wang Signed-off-by: Amos Kong --- 0 files changed, 0 insertions(+), 0 deletions(-) diff --git a/client/tests/kvm/tests/pxe.py b/client/tests/kvm/tests/pxe.py new file mode 100644 index 0000000..8859aaa --- /dev/null +++ b/client/tests/kvm/tests/pxe.py @@ -0,0 +1,30 @@ +import logging +from autotest_lib.client.common_lib import error +import kvm_subprocess, kvm_test_utils, kvm_utils + + +def run_pxe(test, params, env): + """ + PXE test: + + 1) Snoop the tftp packet in the tap device + 2) Wait for some seconds + 3) Check whether capture tftp packets + + @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("pxe_timeout", 60)) + + logging.info("Try to boot from pxe") + status, output = kvm_subprocess.run_fg("tcpdump -nli %s" % vm.get_ifname(), + logging.debug, + "(pxe) ", + timeout) + + logging.info("Analysing the tcpdump result...") + if not "tftp" in output: + raise error.TestFail("Couldn't find tftp packet in %s seconds" % timeout) + logging.info("Found tftp packet") diff --git a/client/tests/kvm/tests_base.cfg.sample b/client/tests/kvm/tests_base.cfg.sample index 9594a38..5515601 100644 --- a/client/tests/kvm/tests_base.cfg.sample +++ b/client/tests/kvm/tests_base.cfg.sample @@ -381,6 +381,19 @@ variants: mgroup_count = 20 flood_minutes = 1 + - pxe: + type = pxe + images = pxe + image_name_pxe = pxe-test + image_size_pxe = 1G + force_create_image_pxe = yes + remove_image_pxe = yes + extra_params += ' -boot n' + kill_vm_on_error = yes + network = bridge + restart_vm = yes + pxe_timeout = 60 + - physical_resources_check: install setup unattended_install.cdrom type = physical_resources_check catch_uuid_cmd = dmidecode | awk -F: '/UUID/ {print $2}'