Skip to content

Remote Development: Support project cloner

What does this MR do and why?

The following changes have been added in this MR

  • Support project cloner

    • Add a project cloner that will clone the devfile project (using the default branch of the project)
    • Refactor out the volume being declared within the add_editor function in devfile_processor.rb so it can be cleaning shared by the editor injector as well as the project cloner
    • Fix a bug in the add_editor function that must be fixed for the correct processing of the devfile with the cloner image
  • Standardise naming of sections that are added during processing of the devfile After an initial discussion with Vishal, it was decided that all sections that are added during processing should be prefixed with gl-. While all sections for the cloner already follow this convention, changes have been made to make editor injector sections conform to the same

  • Conform to devfile default specification for where the cloned project (and other persistent data) should be available The earlier implementation of the editor mounted the shared volume at /volume within the workspace container while devfile spec expects them to be available at /projects by default (indicated by the value of the env vars PROJECTS_ROOT and PROJECT_SOURCE that are added by the devfile parser). Changes have made across the editor injector and project cloner to conform to this expectation to avoid possible confusion

Relevant issue: #396417 (closed)

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Hunar Khanna

Merge request reports