Skip to contentSkip to conversation

commonize log_into_alive_vm code

PATCH In review Glauber Costa 2 participants 2 messages Mar 24, 2009 KVM

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 commonize log_into_alive_vm code

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.

---
 client/tests/kvm_runtest_2/kvm_tests.py |   46 ++++++-------------------------
 1 files changed, 9 insertions(+), 37 deletions(-)
client/tests/kvm_runtest_2/kvm_tests.py +9 -37
index 31e2f7c..38bc3be 100644
@@ -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,12 @@ def run_boot(test, params, env):
 
     kvm_log.info("Logged in")
 
+
+def run_boot(test, params, env):
+    vm = kvm_utils.env_get_vm(env, params.get("main_vm"))
+
+    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 +207,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")
+    log_into_alive_vm(vm)
 
     # Collect some info
     test_name = params.get("test_name")
@@ -378,25 +367,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")
+    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)
Signature · 1 line
1.5.6.6
#1 lore raw
Quoted 4 lines · Glauber Costa

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.

screw this.

I just realized I sent an older version of the patch.

Will send again shortly

Signature · 5 lines
Glauber  Costa.
"Free as in Freedom"
http://glommer.net

"The less confident you are, the more serious you have to act."