Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use DevWorkspace Operator contributions attributes to inject editors into Devfile containers #21738

Closed
Tracked by #21925 ...
amisevsk opened this issue Sep 29, 2022 · 3 comments · Fixed by eclipse-che/che-devfile-registry#707 or eclipse-che/che-dashboard#716
Assignees
Labels
area/dashboard kind/enhancement A feature request - must adhere to the feature request template. severity/P1 Has a major impact to usage or development of the system.

Comments

@amisevsk
Copy link
Contributor

Is your enhancement related to a problem? Please describe

Currently, the dashboard uses a library to inject editors into devfiles, which results in modifying the original devfile in the process of converting it into a DevWorkspace. DevWorkspace Operator PR devfile/devworkspace-operator#844 adds attributes on components that hopefully remove the need for this process:

  • controller.devfile.io/container-contribution: true defines a container component as a "container contribution"
  • controller.devfile.io/merge-contribution: true defines a container as a target for merging a "container contribution"

When present, these attributes define a component as a "contribution" that gets merged into the target, replicating the process performed by the dashboard in a (hopefully) simpler way. See details on original PR for how this works.

Describe the solution you'd like

  1. Apply controller.devfile.io/merge-contribution: true attribute to the Devfile component we currently inject editors into (e.g. tools)
  2. Deprecate dashboard-side injection of editors into workspace components, leaving Devfile-defined components unchanged when converting to DevWorkspace

Describe alternatives you've considered

It may be possible to do the steps above separately, i.e. begin adding the attribute but continuing to use the merge functionality as well. This would need to be tested but would reduce the coordination necessary between registries/dashboard/DWO to make everything work as intended without breaking an edge case.

Additional context

Relevant DWO PRs:

This issue is part of #21736

@amisevsk amisevsk added the kind/enhancement A feature request - must adhere to the feature request template. label Sep 29, 2022
@che-bot che-bot added the status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. label Sep 29, 2022
@amisevsk amisevsk added severity/P1 Has a major impact to usage or development of the system. and removed status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. labels Sep 30, 2022
@ibuziuk ibuziuk mentioned this issue Oct 11, 2022
67 tasks
@ibuziuk ibuziuk mentioned this issue Nov 22, 2022
68 tasks
@ibuziuk ibuziuk mentioned this issue Dec 9, 2022
82 tasks
@olexii4 olexii4 self-assigned this Jan 9, 2023
@ibuziuk ibuziuk mentioned this issue Jan 10, 2023
60 tasks
@svor
Copy link
Contributor

svor commented Jan 17, 2023

@olexii4 I think you can reuse che-devworkspace-generator npm library to prepare DevWorkspaces with container contributions attributes as it was done in the che-devfile registry

@svor
Copy link
Contributor

svor commented Jan 23, 2023

Probably it's not finished yet

@nickboldt
Copy link
Contributor

did all the changes to che-plugin-reg upstream get ported downstream fork too? Not seeing matching changes in https://github.com/redhat-developer/devspaces/commits/devspaces-3-rhel-8/dependencies/che-plugin-registry ...

please throw PRs at that repo and if no one is responding, ping in Slack for more 👀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/dashboard kind/enhancement A feature request - must adhere to the feature request template. severity/P1 Has a major impact to usage or development of the system.
Projects
None yet
5 participants