From 118932acd3ba74cabcfeebd7993f94e5dcbbcda5 Mon Sep 17 00:00:00 2001 From: Jimmy <9859727+Quantizr@users.noreply.github.com> Date: Sun, 11 Aug 2024 15:10:14 -0700 Subject: [PATCH] Add testing closet to LogReader source (#33242) * add testing closet to logreader source * check source availability * use internal_source_available --- tools/lib/filereader.py | 6 +++--- tools/lib/logreader.py | 8 +++++++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/tools/lib/filereader.py b/tools/lib/filereader.py index 3bfdc75feb..963d7a8cdb 100644 --- a/tools/lib/filereader.py +++ b/tools/lib/filereader.py @@ -7,10 +7,10 @@ from openpilot.tools.lib.url_file import URLFile DATA_ENDPOINT = os.getenv("DATA_ENDPOINT", "http://data-raw.comma.internal/") -def internal_source_available(): +def internal_source_available(url=DATA_ENDPOINT): try: - hostname = urlparse(DATA_ENDPOINT).hostname - port = urlparse(DATA_ENDPOINT).port or 80 + hostname = urlparse(url).hostname + port = urlparse(url).port or 80 with socket.socket(socket.AF_INET,socket.SOCK_STREAM) as s: s.connect((hostname, port)) return True diff --git a/tools/lib/logreader.py b/tools/lib/logreader.py index 2487cb2825..815bd4b796 100755 --- a/tools/lib/logreader.py +++ b/tools/lib/logreader.py @@ -174,6 +174,12 @@ def comma_car_segments_source(sr: SegmentRange, mode=ReadMode.RLOG) -> LogPaths: return [get_comma_segments_url(sr.route_name, seg) for seg in sr.seg_idxs] +def testing_closet_source(sr: SegmentRange, mode=ReadMode.RLOG) -> LogPaths: + if not internal_source_available('http://testing.comma.life'): + raise InternalUnavailableException + return [f"http://testing.comma.life/download/{sr.route_name.replace('|', '/')}/{seg}/rlog" for seg in sr.seg_idxs] + + def direct_source(file_or_url: str) -> LogPaths: return [file_or_url] @@ -195,7 +201,7 @@ def auto_source(sr: SegmentRange, mode=ReadMode.RLOG) -> LogPaths: if mode == ReadMode.SANITIZED: return comma_car_segments_source(sr, mode) - SOURCES: list[Source] = [internal_source, internal_source_zst, openpilotci_source, comma_api_source, comma_car_segments_source,] + SOURCES: list[Source] = [internal_source, internal_source_zst, openpilotci_source, comma_api_source, comma_car_segments_source, testing_closet_source,] exceptions = {} # for automatic fallback modes, auto_source needs to first check if rlogs exist for any source