|
|
@ -9,7 +9,6 @@ import time |
|
|
|
import traceback |
|
|
|
import traceback |
|
|
|
import datetime |
|
|
|
import datetime |
|
|
|
import zstandard as zstd |
|
|
|
import zstandard as zstd |
|
|
|
from typing import BinaryIO |
|
|
|
|
|
|
|
from collections.abc import Iterator |
|
|
|
from collections.abc import Iterator |
|
|
|
|
|
|
|
|
|
|
|
from cereal import log |
|
|
|
from cereal import log |
|
|
@ -152,14 +151,12 @@ class Uploader: |
|
|
|
return FakeResponse() |
|
|
|
return FakeResponse() |
|
|
|
|
|
|
|
|
|
|
|
with open(fn, "rb") as f: |
|
|
|
with open(fn, "rb") as f: |
|
|
|
data: BinaryIO |
|
|
|
content = f.read() |
|
|
|
if key.endswith('.zst') and not fn.endswith('.zst'): |
|
|
|
if key.endswith('.zst') and not fn.endswith('.zst'): |
|
|
|
compressed = zstd.compress(f.read(), LOG_COMPRESSION_LEVEL) |
|
|
|
content = zstd.compress(content, LOG_COMPRESSION_LEVEL) |
|
|
|
data = io.BytesIO(compressed) |
|
|
|
|
|
|
|
else: |
|
|
|
|
|
|
|
data = f |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return requests.put(url, data=data, headers=headers, timeout=10) |
|
|
|
with io.BytesIO(content) as data: |
|
|
|
|
|
|
|
return requests.put(url, data=data, headers=headers, timeout=10) |
|
|
|
|
|
|
|
|
|
|
|
def upload(self, name: str, key: str, fn: str, network_type: int, metered: bool) -> bool: |
|
|
|
def upload(self, name: str, key: str, fn: str, network_type: int, metered: bool) -> bool: |
|
|
|
try: |
|
|
|
try: |
|
|
|