-
Notifications
You must be signed in to change notification settings - Fork 313
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
Generalize SSH explorer to also be usable for Containers and WSL #926
Comments
Here are some mockups of what the remote explorer might look like and proposals of how we can implement the remote explorer and data provider in the core. Targets Firstly, we want to show an Available Targets section at the top of the Remote Explorer viewlet if there is a remote resolver registered. It looks almost the same as If the window is local and we have more than one available remote solvers, we can display them all in the section, similar to how SCM handles multiple repositories. Targets tree views are grouped by Connection Details Help Section This one a bit hard to accomplish through static tree view contribution. We may want to add a new {
"remoteHelp": {
"getStarted": "https://code.visualstudio.com/docs/remote/ssh#_getting-started",
"documentation": "https://code.visualstudio.com/docs/remote/ssh",
"feedback": "https://twitter.com/intent/tweet?hashtags=remote,ssh&text=%40code"
}
} To archive above experience, extensions contribute the data by static view contribution or programmatically. The former one requires us to register two tree view sections The latter one is leveraging APIs we already have: namespace remote {
export function registerTargetsDataProvider<T>(treeDataProvider: TreeDataProvider<T>): Disposable;
export function registerConnectionDetailsDataProvider<T>(treeDataProvider: TreeDataProvider<T>): Disposable;
} |
The Remote Explorer is already added in the core and remote extensions can now contribute to it. Guidance is written down in https://github.com/microsoft/vscode-remote-release/wiki/Remote-Explorer . cc @alexr00 Currently the Remote Explorer doesn't validate
|
Hello all, I noticed in @rebornix's screenshot that the grouping mechanism being used is the tree view itself. In previous conversations we had discussed using separate panels. Something potentially like this: I'd love to learn a bit more about the thinking of moving towards a tree view, and the pros and cons of that approach. @rebornix or @kieferrm, is that something you could help me with? |
@nikmd23 the screenshot I posted above is a rough idea while exploring this issue. Going that route is a bit complex (as we don't have facility for that yet) and leading to quite a few questions (what the API looks like, how to handle title actions for tree views, etc). That's why we'd love to do the simple way for now, please see https://github.com/microsoft/vscode-remote-release/wiki/Remote-Explorer for more details. With that you should be able to archive a similar UX as the screenshot you posted above. |
@alexr00 @rebornix This is awesome! One note on containers - it would be great to show the location of the devcontainer.json file in the details. One piece of feedback we got was that when using the "image" property, you can't easily tell which container is the one you want since the image name would be the same for multiple containers (e.g. ubuntu:18.04). That's available in the labels for the container - I ended up adding a hacky |
This is great @alexr00! I'm pumped about this one! 🕺🏻 |
The Remote Explorer is shipped with Insiders and will be out with next Stable. Closing this one and we can create issues to track following improvements. |
Remote-SSH provides an explorer that shows configured SSH boxes and the history of folders and workspaces opened on those boxes. It also provides an inventory of forwarded ports as well as a help section.
We'll generalize this explorer to become more of a Remote explorer rather than being specific to SSH.
Approach:
when
clauses testingremoteName
.remoteName
they don't own/contribute. (We'll see how that plays out and whether we need to restrict this.)remoteName
they own/contribute.remoteName
.Notes:
The SSH Explorer support VM status indicators as well as
Start
andStop
actions for VMs (if the Azure Account extensions runs as a UI extension). This also makes sense for Remote-Containers. So, we need to establish guidelines for icons, action naming, etc.The text was updated successfully, but these errors were encountered: