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 <jasowang@xxxxxxxxxx> > > Signed-off-by: Amos Kong <akong@xxxxxxxxxx> > > --- > > 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}' > > > > > > -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html