File tree Expand file tree Collapse file tree 2 files changed +13
-5
lines changed
Expand file tree Collapse file tree 2 files changed +13
-5
lines changed Original file line number Diff line number Diff line change 55from pathlib import Path
66
77from foxglove_data_platform .client import Client
8- from mcap .mcap0 . reader import make_reader
8+ from mcap .reader import make_reader
99
1010from sensor_msgs .msg import Imu
1111from foxglove .SceneUpdate_pb2 import SceneUpdate
Original file line number Diff line number Diff line change 44from pathlib import Path
55
66from foxglove_data_platform .client import Client
7- from mcap .mcap0 . reader import make_reader
7+ from mcap .reader import make_reader
88from device_name import make_device_name
99
1010from tqdm import tqdm
@@ -49,16 +49,24 @@ def main():
4949 for filepath in filepaths :
5050 filename = filepath .name
5151 print (f"checking for previous imports of { filename } ..." )
52- previous_uploads = client .get_imports ( filename = filename )
52+ previous_uploads = client .get_recordings ( path = filename )
5353 with open (filepath , "rb" ) as f :
5454 reader = make_reader (f )
5555 scene_info = next (metadata for metadata in reader .iter_metadata () if metadata .name == "scene-info" )
5656 device_name = make_device_name (scene_info .metadata )
5757 device_id = device_ids .get (device_name )
5858 if device_id is None :
59- client .create_device (name = device_name )
59+ try :
60+ client .create_device (name = device_name )
61+ except Exception as e :
62+ # Device might already exist, which is fine
63+ if "already exists" not in str (e ):
64+ raise
65+ # Refresh device list to get the device_id (whether newly created or existing)
66+ device_ids = {resp ["name" ]: resp ["id" ] for resp in client .get_devices ()}
6067 device_id = device_ids .get (device_name )
61- device_ids [device_name ] = device_id
68+ if device_id is None :
69+ raise RuntimeError (f"Failed to create or find device: { device_name } " )
6270
6371 f .seek (0 )
6472 print (f"uploading { filename } with device name { device_name } ..." )
You can’t perform that action at this time.
0 commit comments