コード例 #1
0
def run_test_process(data):
  segment, cfg, args, cur_log_fn, ref_log_path, lr_dat = data
  res = None
  if not args.upload_only:
    lr = LogReader.from_bytes(lr_dat)
    res, log_msgs = test_process(cfg, lr, ref_log_path, args.ignore_fields, args.ignore_msgs)
    # save logs so we can upload when updating refs
    save_log(cur_log_fn, log_msgs)

  if args.update_refs or args.upload_only:
    print(f'Uploading: {os.path.basename(cur_log_fn)}')
    assert os.path.exists(cur_log_fn), f"Cannot find log to upload: {cur_log_fn}"
    upload_file(cur_log_fn, os.path.basename(cur_log_fn))
    os.remove(cur_log_fn)
  return (segment, cfg.proc_name, res)
コード例 #2
0
        ]
        results: Any = {TEST_ROUTE: {}}
        results[TEST_ROUTE]["modeld"] = compare_logs(cmp_log,
                                                     log_msgs,
                                                     ignore_fields=ignore)
        diff1, diff2, failed = format_diff(results, ref_commit)

        print(diff1)
        with open("model_diff.txt", "w") as f:
            f.write(diff2)

    if update or failed:
        from selfdrive.test.openpilotci import upload_file

        print("Uploading new refs")

        new_commit = get_git_commit()
        log_fn = "%s_%s_%s.bz2" % (TEST_ROUTE, "model", new_commit)
        save_log(log_fn, log_msgs)
        try:
            upload_file(log_fn, os.path.basename(log_fn))
        except Exception as e:
            print("failed to upload", e)

        with open(ref_commit_fn, 'w') as f:
            f.write(str(new_commit))

        print("\n\nNew ref commit: ", new_commit)

    sys.exit(int(failed))
コード例 #3
0
          f.write(diff)
    except Exception as e:
      print(str(e))
      failed = True

  # upload new refs
  if update or (failed and TICI):
    from selfdrive.test.openpilotci import upload_file

    print("Uploading new refs")

    frames_bzip = bzip_frames(frames)

    new_commit = get_commit()
    frame_fn = os.path.join(replay_dir, get_frame_fn(new_commit, TEST_ROUTE, tici=TICI))
    with open(frame_fn, "wb") as f2:
      f2.write(frames_bzip)

    try:
      upload_file(frame_fn, os.path.basename(frame_fn))
    except Exception as e:
      print("failed to upload", e)

  if update:
    with open(ref_commit_fn, 'w') as f:
      f.write(str(new_commit))

    print("\nNew ref commit: ", new_commit)

  sys.exit(int(failed))
コード例 #4
0
ファイル: update_model.py プロジェクト: s70160/SH
    ref_commit = get_git_commit()
    if ref_commit is None:
        raise Exception("couldn't get ref commit")
    with open(ref_commit_fn, "w") as f:
        f.write(ref_commit)

    for car_brand, segment in segments:
        rlog_fn = get_segment(segment, original=True)

        if rlog_fn is None:
            print("failed to get segment %s" % segment)
            sys.exit(1)

        lr = LogReader(rlog_fn)
        print('injecting model into % s' % segment)
        lr = inject_model(lr, segment)

        route_name, segment_num = segment.rsplit("--", 1)
        log_fn = "%s/%s/rlog_%s.bz2" % (route_name.replace(
            "|", "/"), segment_num, ref_commit)
        tmp_name = 'tmp_%s_%s' % (route_name, segment_num)
        save_log(tmp_name, lr)

        if not no_upload:
            upload_file(tmp_name, log_fn)
            print('uploaded %s', log_fn)
            os.remove(tmp_name)
        os.remove(rlog_fn)

    print("done")