Allow plugin broker to return plugins that are not explicitly in the devfile #17736
Closed
Description
Is your enhancement related to a problem? Please describe.
Currently, if the plugin broker returns a ChePlugin whose ID is not referenced in the devfile, the Che server will throw an error and fail workspace startup. However, certain cases require adding/removing plugin definitions during plugin meta.yaml process, e.g. merging plugins (#15373) or processing plugin dependencies (#15376).
Describe the solution you'd like
We should add fields to the internal struct used to pass data back to the Che server to help identify mystery plugins, e.g.
mergedPlugin: true
mergedFrom: [redhat/java11/latest, redhat/quarkus-java11/latest]
# and/or
isDependency: true
and then process this on the backend to ensure additional metadata is attached correctly.
I've added the area/che-theia
label since a component of this would be making sure the merged/dependent plugin is surfaced correctly in the Theia UI.
Additional context
Related issues:
- [meta.yaml / Che plug-ins]: Add dependencies section [meta.yaml / Che plug-ins]: Add dependencies section #15376
- Run vsx in same container if the container specs match Run vsx in same container if the container specs match #15373