From 8f02d2dd1f2674d0268ff73ae80fa0b7534d1931 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20de=20Saint=20Martin?= <cedric.dsm@tiolive.com> Date: Tue, 24 Sep 2013 15:40:13 +0200 Subject: [PATCH] kvm resiliency test: better handling when takeover fails. --- slapos/resiliencytest/suites/kvm.py | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/slapos/resiliencytest/suites/kvm.py b/slapos/resiliencytest/suites/kvm.py index 0edd1a4..d348b78 100644 --- a/slapos/resiliencytest/suites/kvm.py +++ b/slapos/resiliencytest/suites/kvm.py @@ -163,16 +163,25 @@ def runTestSuite(server_url, key_file, cert_file, # Make the clone instance takeover the main instance logger.info('Replacing main instance by clone instance...') - takeover( - server_url=server_url, - key_file=key_file, - cert_file=cert_file, - computer_guid=computer_id, - partition_id=partition_id, - software_release=software, - namebase=namebase, - winner_instance_suffix=str(current_clone), - ) + for i in range(0, 10): + try: + takeover( + server_url=server_url, + key_file=key_file, + cert_file=cert_file, + computer_guid=computer_id, + partition_id=partition_id, + software_release=software, + namebase=namebase, + winner_instance_suffix=str(current_clone), + ) + break + except: # SSLError + traceback.print_exc() + if i is 9: + raise + logger.warning('takeover failed. Retrying...') + time.sleep(10) logger.info('Done.') # Wait for the new IP (of old-clone new-main instance) to appear. -- 2.30.9