-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
User Devfiles #16875
Comments
@l0rd From the server API point of view, we are talking about the devfile registry with editing/sharing capabilities? That would be the second registry that would work alongside a read-only registry? |
@skabashnyuk I would say Factory API. But I don't have a strong opinion on that. |
In addition to that, it would be nice if we could track a history of devfile that has been used to instantiate workspaces:
Typically, from the dashboard, the user may want to access to devfiles that are located in there git repo and not having find and go to that repo (maybe many repos in the user organisation ...) , copy the url and go back in Che, start the workspace. So basically, it would be an extension of the current proposal but using external devfile (in git repo) and not only devfiles stored in our database. |
@sunix your use case is a valid one. We need to support it. This is the list of "recently used devfiles". Those can be external (from a gist, pastebin, github...) or internal (factories and workspaces). Regarding where in the Dashboard we should have a list of "recently used devfiles" I see many options:
I would like to review that with @beaumorley before we take any decision on that. cc @gorkem |
@sunix we already tracking stack or devfile from which workspace was created |
cc @RickJWagner |
It seems like there may be two use cases here: 1.) User want to see recent devfiles which are any devfiles either stored in our database or external. They just use the same ones and want quick access to them. 2.) User want to have access to their external devfile links because it is hard to find them again. May or may not be used often. They are OK with drilling in a little for these since it is better than searching for them on some company server elsewhere. May/may not want to manage them. Is one more important?
I would probably keep the getting started page as simple and not add it here.
This is interesting. We currently have "Recent Workspaces" (kind of a history as well) showing up in the side nav. We could expand that to include "Recent Devfiles" underneath. This is nice because it is one click. Maybe this is the last 3 Devfiles whether internal or externally sourced?
This seems like a clean place to put a more exhaustive history of devfiles. This could have the add/remove/edit options if we thought they were needed.
Knee jerk I think in Devfile makes more sense but would want input on this. |
Hello @l0rd , What is the difference between Devfiles and Factory? Please correct me if I'm mistaken:
Also, the highlighted Open from the screenshot you provided, should be for Open file for the original functionality and this is being used. I'd suggest a new menu item Create new workspace with a submenu to From file, From factory, or From Stack if you are suggesting this to make more sense. Where:
|
@SDAdham |
How will "Share with team" and "Share with organization" work, as concept of organization in Che is not planned for enhancements. Wouldn't it be easier to push a workspace definition as devfile to a git repo (private or public) where the source for the project lives, and then have team members pick it up from there? Team members will have access to that same source repo, and org admins could move files from one git repo to another. |
I'm confused between three proposed options to use devfiles - Getting started (the stacks are devfiles), Workspaces->Add (devfiles), and Devfiles. |
This issue wants to enhance the concept of team and organization in Che. It will be possible to share a workspace definition with a restricted group of people (a team) or with every Che user (an organisation). And those devfile lists can be edited from Che dashboard. Currently instead there is one unique list static list of devfiles shared across all users: the devfile registry. What is missing in this issue is a clarification of the relationship between these new devfiles lists with the one imported from the devfile registry. One option would be that the devfiles in the registry will be the used as the initial list of organization level devfiles.
This issue is about a particular use case: allow to manage the list of devfiles visible from the dashboard. These are devfiles that do not live in a particular git repo (like the ones that are currently in the devfile registry). But I think that you are evoking 2 interesting use cases that we have not covered: SCENARIO 1. A developer setting up the Che workspace for a project and wants to contribute the devfile to the project git repo. In this case he should go trough the contribution flow of the repo (open a PR / merge request) and that, in my opinion, should happen from inside the IDE (theia). SCENARIO 2. When an developer/team/organization persists its devfiles in its git repositories we should allow to import the repository in the personal/team/organization devfile lists. Those should be references to the devfile rather than copies so that updates to the devfiles can only happne in the git repo. This second scenario looks critical indeed.
Here is how I see the differences in those 3 pages: Getting started Workspace -> Add to Devfiles Devfiles |
After discussing with @skabashnyuk and @sleshchenko I have updated the description of this issue to remove the term "team" and leave only "organization". |
@sleshchenko @l0rd I guess this is the next item after the dashboard-next work? |
@sunix this one is blocked because we do not have a story for create teams and users roles from the dashboard. I think that what should come first in dashboard-next is the creation of configuration/credential secrets (that currently has to be done manually). cc @sympatheticmoose |
@l0rd @sympatheticmoose OK I see, OK to have that after the creation of configuration/credential secrets, Also, we could split this issue: we could start to have at least the feature for a single user
|
Removed noteworthy since it's not such for time being, I believe. Please return back if I'm wrong. |
|
Issues go stale after Mark the issue as fresh with If this issue is safe to close now please do so. Moderators: Add |
Closing this issue. Until we do not implement organizations we cannot do much anyway. |
Is your enhancement related to a problem? Please describe.
Users are not able to use Che to share their workspace definitions (devfiles) anymore. That was possible on Che 6 with factories but now we do not have this capability anymore. The only way to share a devfile is using external services like pastebin or GitHub gists.
Describe the solution you'd like
We should replace "stacks" with "devfiles" in the left menu of the dashboard.
From there a user should be able to add a new devfile that would be persisted by the Che server:
A user should then be able to view the list of his devfiles:
And for every devfile he should be able:
Describe alternatives you've considered
Adding and listing devfiles with chectl
It should be possible to add and get the list of the devfiles using the command line
chectl devfile:add
chectl devfile:delete
chectl devfile:list
Adding and using devfilse from che-theia
A user should also be able to create a devfile using "share" from the editor menu:
And a user should also be able to "Open Che workspace from devfile"
Adding a devfile from the workspaces panel
A user should be able to add the definitions of his workspaces in the devfile list:
Implementation
Adapt Factory API Adapt persistent factories to Devfile concept #16897The text was updated successfully, but these errors were encountered: