From 04b2e64152322f8e1cdd882ef10bf880eabc49d3 Mon Sep 17 00:00:00 2001 From: Raffaello Bonghi Date: Sun, 26 Jan 2025 18:02:13 +0000 Subject: [PATCH] fix ws functions --- src/nanosaur/workspace.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/nanosaur/workspace.py b/src/nanosaur/workspace.py index efa8b6d..c0c4b91 100644 --- a/src/nanosaur/workspace.py +++ b/src/nanosaur/workspace.py @@ -157,6 +157,8 @@ def clean(platform, params: utilities.Params, args): 'perception': lambda: clean_workspace(params.get('ws_perception_name', DEFAULT_WORKSPACE_PERCEPTION)) } if args.all: + workspaces = get_workspaces_path(params) + workspace_actions = {k: v for k, v in workspace_actions.items() if k in workspaces} print(TerminalFormatter.color_text("Cleaning all workspaces", bold=True)) return all(action() for action in workspace_actions.values()) # Get the workspace @@ -201,7 +203,7 @@ def update_workspace(params, workspace_type, workspace_name_key, force, skip_ros workspace_path = get_workspace_path(params, workspace_name_key) if not workspace_path: print(TerminalFormatter.color_text(f"Workspace {workspace_type} not found", color='red')) - return True + return False rosinstall_path = os.path.join(workspace_path, f"{workspace_type}.rosinstall") if not skip_rosinstall_update: # Download rosinstall for this device @@ -230,6 +232,8 @@ def update_workspace(params, workspace_type, workspace_name_key, force, skip_ros ros.manage_isaac_ros_common_repo(nanosaur_home_path, isaac_ros_branch, args.force) print(TerminalFormatter.color_text("Updating all workspaces", bold=True)) update_shared_workspace(args.force) + workspaces = get_workspaces_path(params) + workspace_actions = {k: v for k, v in workspace_actions.items() if k in workspaces} return all(action() for action in workspace_actions.values()) # Get the workspace workspace = get_selected_workspace(params, workspace_actions, args) @@ -270,6 +274,8 @@ def get_build_action(workspace_name_key): 'simulation': lambda: get_build_action('ws_simulation_name'), } if args.all: + workspaces = get_workspaces_path(params) + workspace_actions = {k: v for k, v in workspace_actions.items() if k in workspaces} print(TerminalFormatter.color_text("Building all workspaces", bold=True)) return all(action() for action in workspace_actions.values()) # Get the workspace