Skip to content

RFE: Ability to have a nested clonePath under projects #1410

Open
@isuftin

Description

@isuftin

Description

Currently we can only clone to a first-level directory under the projects clonePath param. Adding a nested path returns an error. In order to better group projects in a multi-root workspace, it would be nice to be able to create nested paths that projects may be checked out into (/projects/docker/my-project-1, /projects/docker/my-project-2, etc)

If we do try adding a nested path, we get errors during project-clone...

2025/04/10 14:46:18 Using temporary directory /projects/project-clone-2803674796
2025/04/10 14:46:18 Read DevWorkspace at /devworkspace-metadata/flattened.devworkspace.yaml
2025/04/10 14:46:19 Processing project developer-workspace
2025/04/10 14:46:19 Project 'developer-workspace' is already cloned and has all remotes configured
2025/04/10 14:46:19 Processing project developer-workspace-test
2025/04/10 14:46:19 Cloning project developer-workspace-test to /projects/project-clone-2803674796/nested/developer-workspace
Cloning into '/projects/project-clone-2803674796/nested/developer-workspace'...
2025/04/10 14:46:22 Cloned project developer-workspace-test to /projects/project-clone-2803674796/nested/developer-workspace
2025/04/10 14:46:22 Setting up remotes for project developer-workspace-test
2025/04/10 14:46:22 Fetched remote origin at https://my-gitlab-server/developer-workspace.git
2025/04/10 14:46:22 Checking out remote branch development
Switched to a new branch 'development'
branch 'development' set up to track 'origin/development'.
2025/04/10 14:46:22 Moving cloned project developer-workspace-test from temporary directory /projects/project-clone-2803674796/nested/developer-workspace to /projects/nested/developer-workspace
2025/04/10 14:46:22 Encountered error while setting up project developer-workspace-test: failed to move cloned project to /projects: rename /projects/project-clone-2803674796/nested/developer-workspace /projects/nested/developer-workspace: no such file or directory

A sample of the devfile:

---
schemaVersion: 2.3.0
metadata:
  generateName: isuftin-developer-ws

projects:
  - name: developer-workspace
    clonePath: "developer-workspace"
    git:
      remotes:
        origin: "https://my-gitlab-server/developer-workspace.git"
      checkoutFrom:
        revision: isuftin-workspace
  - name: developer-workspace-test
    clonePath: "nested/developer-workspace"
    git:
      remotes:
        origin: "https://my-gitlab-server/developer-workspace.git"
      checkoutFrom:
        revision: development

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions