From e3b19c9984696b3df3f38531e6866af75cdd3c7f Mon Sep 17 00:00:00 2001 From: edraft Date: Sun, 19 Oct 2025 19:48:41 +0200 Subject: [PATCH] Fixed init command regarding structure --- src/cli/cpl/cli/utils/structure.py | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/cli/cpl/cli/utils/structure.py b/src/cli/cpl/cli/utils/structure.py index f737c05b..1b2e15cd 100644 --- a/src/cli/cpl/cli/utils/structure.py +++ b/src/cli/cpl/cli/utils/structure.py @@ -84,7 +84,7 @@ class Structure: return Project.from_file(path) - workspace = Structure.find_workspace_in_path(path.parent) + workspace = Structure.find_workspace_in_path(path.parent, with_parents=True) if workspace is None: raise RuntimeError("No workspace found. Please run 'cpl init workspace' first.") @@ -138,6 +138,16 @@ class Structure: ) project.save() + Console.write_line(f"Created {project_type} project '{name}'") + + if workspace is not None: + rel_path = str(path.resolve().absolute().relative_to(Path(workspace.path).parent)).replace("\\", "/") + if rel_path not in workspace.projects: + workspace.projects.append(rel_path) + workspace.save() + + if verbose: + Console.write_line(f"Registered '{name}' in workspace.json") from cpl.cli.command.package.install import install @@ -149,17 +159,6 @@ class Structure: install.callback(package, project.name, dev=False, verbose=verbose) os.chdir(old_cwd) - - if workspace is not None: - rel_path = str(path.resolve().absolute().relative_to(Path(workspace.path).parent)).replace("\\", "/") - if rel_path not in workspace.projects: - workspace.projects.append(rel_path) - workspace.save() - - if verbose: - Console.write_line(f"Registered '{name}' in workspace.json") - - Console.write_line(f"Created {project_type} project '{name}'") return project @staticmethod