9
from phabletutils.device import AndroidBridge
11
EMULATOR = os.environ.get('USE_EMULATOR', '')
14
def _get_arg_parser():
15
parser = argparse.ArgumentParser(
16
description='Reboot device and waits for networking to become active.')
17
parser.add_argument('-s', '--serial', help='Device serial')
18
parser.add_argument('-n', '--num-tries', type=int, default=3,
19
help='''How many times to retry on failure.
20
default=%(default)d''')
25
device = AndroidBridge(args.serial)
26
device.wait_for_device()
27
for i in range(args.num_tries):
29
device.wait_for_device()
31
device.wait_for_device()
33
device.wait_for_network()
36
pass # try the loop again
37
logging.error('device failed to start and activate networking')
41
def emulator_main(args):
42
emulator = os.path.join(os.path.dirname(__file__), 'run-emulator')
43
subprocess.check_call([emulator])
46
if __name__ == '__main__':
47
logging.basicConfig(level=logging.INFO)
48
logging.getLogger().name = 'reboot-and-wait'
49
args = _get_arg_parser().parse_args()
51
logging.info('using emulator logic for reboot')
52
exit(emulator_main(args))