def main(argv=None): """ Entry point for library-like use. """ try: logger.set_process_prefix() config.parse() if argv != None: backup_argv = sys.argv sys.argv = argv args = parse_args() if args.debug: logger.level(logging.DEBUG) device_manager = DevicesManager(args) if args.device: device, tester = device_manager.try_flash_specific(args) else: device, tester = device_manager.try_flash_model(args) if not args.notest: print("Testing " + str(device.name) + ".") tester.execute() if not args.nopoweroff: device.detach() if args.boot: device_manager.boot_device_to_mode(device, args) device_manager.release(device) if "backup_argv" in locals(): sys.argv = backup_argv return 0 except KeyboardInterrupt: print("Keyboard interrupt, stopping aft") logger.error("Keyboard interrupt, stopping aft.") sys.exit(0) except: _err = sys.exc_info() logger.error(str(_err[0]).split("'")[1] + ": " + str(_err[1])) raise finally: thread_handler.set_flag(thread_handler.RECORDERS_STOP) for thread in thread_handler.get_threads(): thread.join(5)
def main(argv=None): """ Entry point for library-like use. """ try: logger.init_root_logger() logger.init_thread() config.parse() if argv != None: backup_argv = sys.argv sys.argv = argv args = parse_args() if args.debug: logger.level(logging.DEBUG) if args.configure: builder = TopologyBuilder(args) builder.build_topology() return 0 if args.check: results = device_config.check(args) logger.info(results[1]) print(results[1]) if results[0] == True: return 0 else: return 1 elif args.checkall: results = device_config.check_all(args) logger.info(results[1]) print(results[1]) if results[0] == True: logger.info("All tests passed") return 0 else: logger.info("There were failures") return 1 device_manager = DevicesManager(args) if args.blacklist: if not args.device: print("Device must be specified for blacklisting") return 1 device_manager.blacklist_device(args.device, args.reason) return 0 if args.unblacklist: if not args.device: print("Device must be specified for unblacklisting") return 1 device_manager.unblacklist_device(args.device) return 0 if args.blacklist_print: device_manager.blacklist_print() return 0 if args.recover_edisons: recover_edisons(device_manager, args.verbose) return 0 if not args.machine: print("Both machine and image must be specified") return 1 if not args.noflash: if not args.file_name: print("Both machine and image must be specified") return 1 if not os.path.isfile(args.file_name): print("Didn't find image: " + args.file_name) logger.error("Didn't find image: " + args.file_name) return 1 if args.device: device, tester = try_flash_specific(args, device_manager) else: device, tester = try_flash_model(args, device_manager) if not args.notest: print("Testing " + str(device.name) + ".") tester.execute() if not args.nopoweroff: device.detach() device_manager.release(device) if "backup_argv" in locals(): sys.argv = backup_argv return 0 except KeyboardInterrupt: print("Keyboard interrupt, stopping aft") logger.error("Keyboard interrupt, stopping aft.") sys.exit(0) except: _err = sys.exc_info() logger.error(str(_err[0]).split("'")[1] + ": " + str(_err[1])) raise finally: thread_handler.set_flag(thread_handler.RECORDERS_STOP) for thread in thread_handler.get_threads(): thread.join(5)
def main(argv=None): """ Entry point for library-like use. """ try: logger.set_process_prefix() config.parse() if argv != None: backup_argv = sys.argv sys.argv = argv args = parse_args() if args.debug: logger.level(logging.DEBUG) device_manager = DevicesManager(args) device, tester = device_manager.try_flash_model(args) if args.emulateusb: device.boot_usb_test_mode() if not args.notest: if not args.emulateusb: device.boot_internal_test_mode() print("Testing " + str(device.name) + ".") tester.execute() if not args.nopoweroff: device.detach() if args.emulateusb: device_manager.stop_image_usb_emulation( device.leases_file_name) if not args.emulateusb: if args.boot == "test_mode": device.boot_internal_test_mode() elif args.boot == "service_mode": device.boot_usb_service_mode() device_manager.release(device) if "backup_argv" in locals(): sys.argv = backup_argv return 0 except KeyboardInterrupt: print("Keyboard interrupt, stopping aft") logger.error("Keyboard interrupt, stopping aft.") sys.exit(0) except: _err = sys.exc_info() logger.error(str(_err[0]).split("'")[1] + ": " + str(_err[1])) raise finally: thread_handler.set_flag(thread_handler.RECORDERS_STOP) for thread in thread_handler.get_threads(): thread.join(5)