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 indevfile_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
-
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 varsPROJECTS_ROOT
andPROJECT_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.
-
I have evaluated the MR acceptance checklist for this MR.