qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC PATCH 10/14] KVM-test: Add a subtest of pxe


From: Amos Kong
Subject: Re: [Qemu-devel] [RFC PATCH 10/14] KVM-test: Add a subtest of pxe
Date: Tue, 10 Aug 2010 14:11:47 +0800
User-agent: Mutt/1.5.20 (2009-06-14)

On Wed, Jul 28, 2010 at 07:07:34PM -0300, Lucas Meneghel Rodrigues wrote:
> On Tue, 2010-07-20 at 09:36 +0800, Amos Kong wrote:
> > This case just snoop tftp packet through tcpdump, it depends on public dhcp
> > server, better to test it through dnsmasq.
> 
> It would be a good idea to have an alternate implementation using
> dnsmasq, but not urgent.

I changed unattended_install to use dnsmasq, but it was blocked by a pxe bug.
Also need completed test, we can add this later.

> > Signed-off-by: Jason Wang <address@hidden>
> > Signed-off-by: Amos Kong <address@hidden>
> > ---
> >  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)
> 
> ^ The only complaint I could make here is that since this command
> doesn't need to live throughout tests, utils.run would do just fine.
> Other than that, looks fine to me.
 
utils.run() desen't support timeout, tcpdump would not stop by itself.
also could not add output prefix "(pxe) " ?

> > +    logging.info("Analysing the tcpdump result...")
> 
> ^ typo, analyzing 
> 
> > +    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}'
> > 
> > 
> 
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]