[Libvirt-cim] [PATCH V2 3/3] cimtest: Add default network existence check to 06_parent_net_pool.py

Xu Wang gesaint at linux.vnet.ibm.com
Wed Aug 7 08:37:13 UTC 2013


The default network card name is 'eth0' or 'em1'. But if the network
card name doesn't contain those values, error would occur. So this patch
will check if the default network card name exists in the network
card name list. If not, the network card name would changed into
the first one in the network card name list.

Signed-off-by: Xu Wang <gesaint at linux.vnet.ibm.com>
---
 .../libvirt-cim/cimtest/RASD/06_parent_net_pool.py |   25 +++++++++++++++++--
 1 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/suites/libvirt-cim/cimtest/RASD/06_parent_net_pool.py b/suites/libvirt-cim/cimtest/RASD/06_parent_net_pool.py
index 2c1f285..d8b82ca 100644
--- a/suites/libvirt-cim/cimtest/RASD/06_parent_net_pool.py
+++ b/suites/libvirt-cim/cimtest/RASD/06_parent_net_pool.py
@@ -39,7 +39,8 @@
 # -Netmask="255.255.255.0"
 # -IPRangeStart="192.168.122.2"
 # -IPRangeEnd="192.168.122.254"
-# -ForwardDevice=  [ verified for 'None' and "eth0" ]
+# -ForwardDevice=  [ verified for 'None' and forward device name \
+#  (default is 'eth0' if available) ]
 # -ForwardMode=0   [ verified for 1,2 as well ]
 # 
 # 
@@ -47,6 +48,7 @@
 #                                               Date : 18-05-2009
 
 import sys
+import os
 from sets import Set
 from CimTest.Globals import logger
 from XenKvmLib.const import do_main
@@ -67,6 +69,23 @@ def main():
     options = main.options
     virt = options.virt
     server = options.ip
+    net_dev = 'eth0'
+
+    # The default device name may not named 'eth0', so this case would
+    # return FAIL. The following code will check if default device exists in
+    # the network card list and if not, source_dev will be changed into the 1st
+    # network card in the list.
+    f = open("/proc/net/dev")
+    lines = f.readlines()
+    f.close()
+    if str(lines).find(net_dev) <> -1:
+        """
+        net_dev exists in the network info list and keep it.
+        """
+    else:
+        line = lines[2]
+        con = line.split(":")
+        net_dev = con[0].strip(" ")
 
     status, netpool_rasd = get_pool_rasds(server, virt, filter_default=False)
     if status != PASS:
@@ -80,8 +99,8 @@ def main():
                   'IPRangeStart' : "192.168.122.2",
                   'IPRangeEnd'   : "192.168.122.254"
                 }
-    exp_mode_device = [('None', 0L), ('None', 1L), ('eth0', 1L), 
-                       ('None', 2L), ('eth0', 2L)]
+    exp_mode_device = [('None', 0L), ('None', 1L), (net_dev, 1L), 
+                       ('None', 2L), (net_dev, 2L)]
     for inst_type in inst_list:
         logger.info("Verifying '%s' records", inst_type)
 
-- 
1.7.1




More information about the Libvirt-cim mailing list