diff mbox

[autotest] commonize log_into_alive_vm code

Message ID 1238168883-28482-1-git-send-email-glommer@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Glauber Costa March 27, 2009, 3:48 p.m. UTC
Almost all tests that are and will be have the common
need to log into the vm, and verify it is alive.
It's currently duplicated across all tests, so rip it
to a common location.

Signed-off-by: Glauber Costa <glommer@redhat.com>
---
 client/tests/kvm_runtest_2/kvm_tests.py |   47 ++++++------------------------
 1 files changed, 10 insertions(+), 37 deletions(-)
diff mbox

Patch

diff --git a/client/tests/kvm_runtest_2/kvm_tests.py b/client/tests/kvm_runtest_2/kvm_tests.py
index 31e2f7c..317e076 100644
--- a/client/tests/kvm_runtest_2/kvm_tests.py
+++ b/client/tests/kvm_runtest_2/kvm_tests.py
@@ -9,8 +9,7 @@  import ppm_utils
 import scan_results
 
 
-def run_boot(test, params, env):
-    vm = kvm_utils.env_get_vm(env, params.get("main_vm"))
+def log_into_alive_vm(vm):
     if not vm:
         message = "VM object not found in environment"
         kvm_log.error(message)
@@ -30,6 +29,13 @@  def run_boot(test, params, env):
 
     kvm_log.info("Logged in")
 
+    return session
+
+def run_boot(test, params, env):
+    vm = kvm_utils.env_get_vm(env, params.get("main_vm"))
+
+    session = log_into_alive_vm(vm)
+
     if params.get("reboot") == "yes":
         session.sendline(params.get("cmd_reboot"))
         kvm_log.info("Reboot command sent; waiting for guest to go down...")
@@ -202,24 +208,8 @@  def run_migration(test, params, env):
 
 def run_autotest(test, params, env):
     vm = kvm_utils.env_get_vm(env, params.get("main_vm"))
-    if not vm:
-        message = "VM object not found in environment"
-        kvm_log.error(message)
-        raise error.TestError, message
-    if not vm.is_alive():
-        message = "VM seems to be dead; Test requires a living VM"
-        kvm_log.error(message)
-        raise error.TestError, message
 
-    kvm_log.info("Logging into guest...")
-
-    session = kvm_utils.wait_for(vm.ssh_login, 240, 0, 2)
-    if not session:
-        message = "Could not log into guest"
-        kvm_log.error(message)
-        raise error.TestFail, message
-
-    kvm_log.info("Logged in")
+    session = log_into_alive_vm(vm)
 
     # Collect some info
     test_name = params.get("test_name")
@@ -378,25 +368,8 @@  def internal_yum_update(session, command, prompt, timeout):
 
 
 def run_yum_update(test, params, env):
-    vm = kvm_utils.env_get_vm(env, params.get("main_vm"))
-    if not vm:
-        message = "VM object not found in environment"
-        kvm_log.error(message)
-        raise error.TestError, message
-    if not vm.is_alive():
-        message = "VM seems to be dead; Test requires a living VM"
-        kvm_log.error(message)
-        raise error.TestError, message
-
-    kvm_log.info("Logging into guest...")
 
-    session = kvm_utils.wait_for(vm.ssh_login, 120, 0, 2)
-    if not session:
-        message = "Could not log into guest"
-        kvm_log.error(message)
-        raise error.TestFail, message
-
-    kvm_log.info("Logged in")
+    session = log_into_alive_vm(vm)
 
     internal_yum_update(session, "yum update", params.get("ssh_prompt"), 600)
     internal_yum_update(session, "yum update kernel", params.get("ssh_prompt"), 600)