From Fedora Project Wiki

Thursday Sep 17, 2009 All day #fedora-test-day (webchat)

What to test?[edit]

This part of today's Fedora Test Day will focus on testing the libvirt network interface management feature in F12..

If you come to this page after the test day is completed, your testing is still valuable, and you can use the information on this page to test libvirt and provide feedback.

Who's available[edit]

David Lutterkort is your host for today. IRC nick 'lutter'; I am on the West Coast in the US (UTC-7 right now)

The following people have also agreed to be available for testing, workarounds, bug fixes, and general discussion:

What's needed to test[edit]

  • A fully updated Fedora 12 Rawhide machine. See instructions on the main test day page.
  • For some end-to-end tests, you might want at least one guest image installed before the test day (suggested reading - Virtualization_Quick_Start), though all functionality can be fully accessed from the host running libvirtd
  • Make sure you have netcf-0.1.1; if the rawhide mirrors don't update in time, you can get a build from koji

Test Cases[edit]

libvirt provides network configuration functionality through the virInterface API functions, and through the iface-* commands in virsh. The heavy lifting for these is actually done by a separate library, netcf, which comes with its own command line tool ncftool. Basic usage of that is described here

Missing features
Currently, netcf does not support interface aliases or IPv6. Keep that in mind in the tests below
Turn off NetworkManager
Run service NetworkManager stop and chkconfig NetworkManager off prior to doing any tests

Before you start[edit]

If you like your current network config, back it up:

  # nsb=/tmp/network-scripts-backup
  # mkdir $nsb
  # cp -p /etc/sysconfig/network-scripts/ifcfg-* $nsb

Reading manual configurations[edit]

If you have a machine that has been manually configured, especially when the configuration is 'interesting', try the following:

  # for iface in $(virsh iface-list --all); do
  #   virsh iface-dumpxml $iface > /tmp/iface-$iface.xml
  # done

or with ncftool

  # ncftool
  ncftool> list --all
  ncftool> dumpxml eth0
  (repeat for each listed interface)

Inspect the XML and make sure it properly reflects the ifcfg-* files for that interface.

Remove an interface[edit]

Remove an existing interface by issuing iface-destroy (if the interface is up) and then iface-undefine in virsh.

Verify that all the ifcfg-* files for that interface and all its slaves/components have been removed.

Create a new interface[edit]

Create or redefine an interface by issuing iface-define in virsh. Verify that all the ifcfg-* files for it are written and contain what's expected. For examples of interface XML files, you can either use the ones created by iface-dumpxml above, or look at these files for inspiration.

Bring the interface up with iface-start in virsh, and check that you have the expected network connectivity.

Issues that were identified[edit]

When you file a bug report, please attach the interface XML file and all your ifcfg-* files (and, of course, anything else that seems relevant).

It will be very valuable to know if any problem you encounter in virsh also happens with ncftool.

Tester Description Bug references Status