diff mbox

KVM test: Make kvm_config.py to use autotest logging

Message ID 1249753034-3457-1-git-send-email-lmr@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Lucas Meneghel Rodrigues Aug. 8, 2009, 5:37 p.m. UTC
Make kvm_config.py be able to use the autotest logging
infrastructure even in stand alone mode. This way we
get the ability of having selective debug mode, and
just use the cleaner logging.[debuglevel]('message')
syntax instead of resorting to hardcoded [LEVEL]
strings in any message.

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
---
 client/tests/kvm/kvm_config.py |   26 ++++++++++++++++++--------
 1 files changed, 18 insertions(+), 8 deletions(-)
diff mbox

Patch

diff --git a/client/tests/kvm/kvm_config.py b/client/tests/kvm/kvm_config.py
index 7ff7a07..e2cf5be 100755
--- a/client/tests/kvm/kvm_config.py
+++ b/client/tests/kvm/kvm_config.py
@@ -1,7 +1,8 @@ 
 #!/usr/bin/python
-import re, os, sys, StringIO
+import logging, re, os, sys, StringIO
 import common
 from autotest_lib.client.common_lib import error
+from autotest_lib.client.common_lib import logging_config, logging_manager
 
 """
 KVM configuration file utility functions.
@@ -9,6 +10,12 @@  KVM configuration file utility functions.
 @copyright: Red Hat 2008-2009
 """
 
+class KvmLoggingConfig(logging_config.LoggingConfig):
+    def configure_logging(self, results_dir=None, verbose=False):
+        super(KvmLoggingConfig, self).configure_logging(use_console=True,
+                                                        verbose=verbose)
+
+
 class config:
     """
     Parse an input file or string that follows the KVM Test Config File format
@@ -413,11 +420,11 @@  class config:
                         if self.debug and not restricted:
                             self.__debug_print("", "Leaving file %s" % words[1])
                     else:
-                        print ("WARNING: Cannot include %s -- "
-                               "file not found" % filename)
+                        logging.warning("Cannot include %s -- file not found",
+                                        filename)
                 else:
-                    print ("WARNING: Cannot include %s because no file is "
-                           "currently open" % words[1])
+                    logging.warning("Cannot include %s because no file is "
+                                    "currently open", words[1])
 
             # Parse multi-line exceptions
             # (the block is parsed for each dict separately)
@@ -462,7 +469,7 @@  class config:
             str = "%-50s ---> %s" % (str1, str2)
         else:
             str = str1
-        print str
+        logging.debug(str)
 
 
     def __modify_list_variants(self, list, name, dep_list, add_to_shortname):
@@ -519,12 +526,15 @@  if __name__ == "__main__":
         filename = sys.argv[1]
     else:
         filename = os.path.join(os.path.dirname(sys.argv[0]), "kvm_tests.cfg")
+    # Here we configure the stand alone program to use the autotest
+    # logging system.
+    logging_manager.configure_logging(KvmLoggingConfig(), verbose=True)
     list = config(filename, debug=True).get_list()
     i = 0
     for dict in list:
-        print "Dictionary #%d:" % i
+        logging.debug("Dictionary #%d:", i)
         keys = dict.keys()
         keys.sort()
         for key in keys:
-            print "    %s = %s" % (key, dict[key])
+            logging.debug("    %s = %s", key, dict[key])
         i += 1