Index: client/tests/kvm/tests/migration_multi_host.py |
diff --git a/client/tests/kvm/tests/migration_multi_host.py b/client/tests/kvm/tests/migration_multi_host.py |
deleted file mode 100644 |
index 15af0c8e71c0d51c86264444ec012248834f3282..0000000000000000000000000000000000000000 |
--- a/client/tests/kvm/tests/migration_multi_host.py |
+++ /dev/null |
@@ -1,108 +0,0 @@ |
-import logging, time, socket |
-from autotest_lib.client.common_lib import error |
-import kvm_subprocess, kvm_test_utils, kvm_utils |
- |
- |
-def run_migration_multi_host(test, params, env): |
- """ |
- KVM multi-host migration test: |
- |
- Migration execution progress: |
- |
- source host dest host |
- ---------------------------------------------------------------------------- |
- log into guest |
- ---------------------------------------------------------------------------- |
- start socket server |
- |
- wait 30 secs -------------------- wait login_timeout+30 secs --------------- |
- |
- accept connection connect to socket server,send mig_port |
- ---------------------------------------------------------------------------- |
- start migration |
- |
- wait 30 secs -------------------- wait mig_timeout+30 secs ----------------- |
- |
- try to log into migrated guest check VM's status via monitor cmd |
- ---------------------------------------------------------------------------- |
- |
- @param test: kvm test object. |
- @param params: Dictionary with test parameters. |
- @param env: Dictionary with the test environment. |
- """ |
- def guest_active(vm): |
- o = vm.monitor.info("status") |
- if isinstance(o, str): |
- return "status: running" in o |
- else: |
- return o.get("status") == "running" |
- |
- vm = kvm_test_utils.get_living_vm(env, params.get("main_vm")) |
- login_timeout = int(params.get("login_timeout", 360)) |
- role = params.get("role") |
- srchost = params.get("srchost") |
- dsthost = params.get("dsthost") |
- mig_timeout = int(params.get("mig_timeout")) |
- # Port used to communicate info between source and destination |
- comm_port = int(params.get("comm_port", 12324)) |
- regain_ip_cmd = params.get("regain_ip_cmd", "dhclient") |
- if role == 'source': |
- session = kvm_test_utils.wait_for_login(vm, timeout=login_timeout) |
- |
- # Listen on a port to get the migration port received from |
- # dest machine |
- s_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) |
- s_socket.bind(('', comm_port)) |
- s_socket.listen(1) |
- |
- # Wait 30 seconds for source and dest to reach this point |
- test.job.barrier(srchost,'socket_started', 30).rendezvous(srchost, |
- dsthost) |
- |
- c_socket, addr = s_socket.accept() |
- mig_port = int(c_socket.recv(6)) |
- logging.info("Received from destination the migration port %s", |
- mig_port) |
- c_socket.close() |
- |
- logging.info("Start migrating now...") |
- kvm_test_utils.migrate(vm=vm, dest_host=dsthost, mig_port=mig_port, |
- env=env) |
- |
- # Wait up to 30 seconds for dest to reach this point |
- test.job.barrier(srchost, 'mig_finished', 30).rendezvous(srchost, |
- dsthost) |
- |
- elif role == 'destination': |
- # Wait up to login_timeout + 30 seconds for the source to |
- # reach this point |
- test.job.barrier(dsthost, 'socket_started', |
- login_timeout + 30).rendezvous(srchost, |
- dsthost) |
- |
- c_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) |
- c_socket.connect((srchost, comm_port)) |
- logging.info("Communicating to source migration port %s", |
- vm.migration_port) |
- c_socket.send("%d" % vm.migration_port) |
- c_socket.close() |
- |
- # Wait up to mig_timeout + 30 seconds for the source to |
- # reach this point: migration finished |
- test.job.barrier(dsthost, 'mig_finished', |
- mig_timeout + 30).rendezvous(srchost, |
- dsthost) |
- |
- if not guest_active(vm): |
- raise error.TestFail("Guest not active after migration") |
- |
- logging.info("Migrated guest appears to be running") |
- |
- # Log into the guest again |
- logging.info("Logging into migrated guest after migration...") |
- session_serial = kvm_test_utils.wait_for_login(vm, timeout=login_timeout, serial=True) |
- session_serial.cmd(regain_ip_cmd) |
- session = kvm_test_utils.wait_for_login(vm, timeout=login_timeout) |
- |
- else: |
- raise error.TestError('Invalid role specified') |