def slave_main():
    log_handler, log_buffer = setup_logger(True)
    run = get_random_pending_run()
    # noinspection PyBroadException
    try:
        if not run:
            log_to_info('Nothing to start, exiting')
            return
        # log_to_info('NothingScore: 77.7% to start, exiting')
        main(run=run)
    except Exception:
        logging.exception('Unknown error')

    output = get_log_output(log_handler, log_buffer)
    report_results(run['id'], output)
def say_result(log_handler, log_buffer):
    output = get_log_output(log_handler, log_buffer)
    score = float(re.findall('Score: (\d+\.?\d*)%', output)[0])
    subprocess.call(['say', 'New score: {:.2f}%!'.format(score)])