-
Notifications
You must be signed in to change notification settings - Fork 243
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
Create component support for odo devfile scenario #2557
Comments
/kind feature |
/assign @GeekArthur |
@elsony I have two questions need to confirm:
|
There should not be any special odo supported devfile. The goal is to have any Che supported devfile to be also odo supported devfile.
That is the source for devfile registry. This devfile registry is supposed to run inside the cluster. |
The devfile that can be used by odo will need to have build and runtime information associate with it. Although the devfile that odo supports shares the same schema and format as the regular Che dev file, in order for a given Che devfile to be useful for odo, it needs to have some minimal requirement, e.g. certain commands defined for build. For example, if some devfiles on the repo only defines the Theia editor and some Che plugins, it will not have enough information to tell odo on how to build the application and do iterative dev development. That's why we still need some filtering mechanism to find out all the devfile that fulfill those extra odo extra requirement in order for us to show the list of devfile style of odo components properly. |
@elsony Given that, we still need to push some odo supported devfiles (with extra requirement) to che registry, right? And pushing odo supported devfiles to che registry also belongs to this issue? |
I would rather avoid devfiles for odo and devfiles for Che separation. Ultimately "stacks" should support both. I think eventually we can replace/update the existing devfiles on the registry. |
Maybe the wrong wording on my side. Yes in your example of a Devfile that only defined Theia editor and plugins it won't make sense in odo context. But I would consider that an edge case. Let me put it in another way. Any devfile that works with odo should work with Che.
What do you mean by extra requirements? If Devfile has at least one Every devfile that is there right now https://github.com/eclipse/che-devfile-registry/tree/master/devfiles should at the end work with odo. |
@kadel I agree with you, there is no special for the devfile that support by odo. I didn't mean add new odo specific type, I mean the project devfile that includes specific commands for Codewind projects since Codewind will consume odo in the future. The current status from today's contribution call:
Finally we may need to push/update devfiles in Che devfile registry for specific commands support but not cover by this issue. |
If the devfile satisfies the following three conditions then it's supported devfile
|
Consideration of having a flag which allows users to specify commands for devfiles which do-not have |
@girishramnani We discussed the topic for supporting user specify commands by flag before, but from the previous discussion, IIRC we want to apply the flag to |
If we use those 3 criteria, out of the existing 26 Che devfile in the existing devfile repo, 12 of them meet those criteria: To limit the testing that we need to do for MVP for tech preview, we are going to pick a unique key instead of the more common build and run keys for the filtering. The revised criteria that we'll be using are: If the devfile satisfies the following three conditions then it's supported devfile |
@GeekArthur would that also store these values in local config so that on the next push user doesn’t have to map the commands again? |
@girishramnani Currently it won't but I think store the latest user specify commands in the local config is a good suggestion. |
Current status of
New design of unique key for parsing is here: #2557 (comment) |
To resolve the conflict issue, I can think of two options:
I am not sure which odo folk designs |
Can you please open PR with the changes that you implemented? We would like to move quickly with small PRs rather than creating some big PRs with a lot of changes. We can hide partially implemented features with
This is great I like that both are displayed with a clear distinction of what will be working without problems and what might need additional changes or flags.
You are reading it from the repository? Isn't that just the source code for the registry service? Shouldn't we use https://che-devfile-registry.openshift.io/ instead?
Ultimately, I would like to get to 2. and make Devfile the default.
Once we have feature parity with the old-style components we would just remove the Experimental flag and make the behavior that it was enabling default one. |
@kadel Thanks for your reply!
Sure, I will do some code cleanup and put up the PR, actually my current changes already included hiding the implementation with ODO_EXPERIMENTAL flag, so the PR should be ready soon
Yes, I am using
That makes sense, thanks for your suggestions |
Given odo create is just download devfile instead of create devile + we want to drop config.yaml file, we should have a way to handle Discussed this today, we decide to store the |
Another topic we should talk about is regarding our customized devfile, I believe the original issue is from @elsony 's comment here: #2557 (comment). @elsony 's point is that If we use Che devfile registry with conditions #2557 (comment) that we check, we will have 12 supported devfile components, that's too many for us to do the tech preview testing (I think the original design is focusing on open liberty, spring and nodejs for tech preview) given we want to fully support all supported devfile components. So we may have two ways to resolve the issue:
We can discuss this on our next odo contribution meeting. |
[kind/Feature]
Which functionality do you think we should add?
Create component support for odo devfile scenario:
Why is this needed?
The IDP definition of the devfile style applications are defined in a Che devfile repository. The Che devfile repository will contain a mix of devfile for regular Che usage as well as the ones that can provide IDP support for odo. We'll need a way to filter the devfile repo to build the list of components that odo supports. Combined with the odo create component support on the devfile style components, the user will be able to build and run their application via the devfile style component support.
The text was updated successfully, but these errors were encountered: