+ while True:
+ r.checkKinit(**kinit)
+ p = subprocess.Popen(['curl', '-s', '-k', '--negotiate', '-u', ':', 'https://xvm.mit.edu:442/offlist'], stdout=subprocess.PIPE)
+ if 0 != p.wait():
+ subprocess.call(['zwrite', '-d', '-c', 'xvm', '-i', 'migration', '-s', 'XVM Migration Script', '-m',
+ 'Failed to get list of remaining VMs. Will try again in 15 seconds'])
+ time.sleep(15)
+ continue
+
+ next_line = p.stdout.read().split('\n')[0]
+ if next_line == '':
+ subprocess.call(['zwrite', '-d', '-c', 'xvm', '-i', 'migration', '-s', 'XVM Migration Script', '-m',
+ 'XVM migration complete'])
+ break
+
+ next, uptime = next_line.split('\t')[:2]
+