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

Provide sidecar filesystem access for VS Code extensions #19110

Closed
azatsarynnyy opened this issue Feb 19, 2021 · 1 comment · Fixed by eclipse-che/che-theia#1045
Closed

Provide sidecar filesystem access for VS Code extensions #19110

azatsarynnyy opened this issue Feb 19, 2021 · 1 comment · Fixed by eclipse-che/che-theia#1045
Assignees
Labels
area/editor/theia Issues related to the che-theia IDE of Che good first issue Community, this issue looks easy to start with for a new contributor. Just take it. We'll help you! kind/task Internal things, technical debt, and to-do tasks to be performed. new&noteworthy For new and/or noteworthy issues that deserve a blog post, new docs, or emphasis in release notes severity/P1 Has a major impact to usage or development of the system.
Milestone

Comments

@azatsarynnyy
Copy link
Member

Is your task related to a problem? Please describe.

When a Che-Theia plug-in is running a separate sidecar and it requests a resource from a local file system with vscode.workspace.fs API, Che-Theia tries to look for a requested resource in its own container. But such a call should be forwarded into the plug-in's sidecar.

Describe the solution you'd like

We need to adapt vscode.workspace.fs Plug-in API to a remote plug-in model. A plug-in should be able to access the resources in its own sidecar file system.

Describe alternatives you've considered

Additional context

This issue is a part of #16818

The Devfile for testing includes the Python VS Code extension running in its own sidecar: https://gist.githubusercontent.com/azatsarynnyy/6bc5daaa984196569c961a8e8bb31459/raw/5002be117eeabfe8e2459b6f318f93655e11b009/devfile.yaml

The example of FS API call in Python extension: https://github.com/microsoft/vscode-python/blob/df3d6c7d00f2b4ec7bf2ae1032db4450882f44c8/src/client/common/platform/fileSystem.ts#L130

The example of how other APIs are adapted to a remote plug-in model: https://github.com/eclipse/che-theia/blob/5b151b0bc2aef303748f96b88b0e2afb89c26200/extensions/eclipse-che-theia-plugin-remote/src/node/plugin-remote-init.ts#L229

FS API in upstream Theia that should be adapted: https://github.com/eclipse-theia/theia/blob/4e1c1d429226280e6f0eff49658c733a38b50c4a/packages/plugin-ext/src/plugin/file-system-ext-impl.ts#L191

@azatsarynnyy azatsarynnyy added kind/task Internal things, technical debt, and to-do tasks to be performed. severity/P1 Has a major impact to usage or development of the system. area/editor/theia Issues related to the che-theia IDE of Che labels Feb 19, 2021
@azatsarynnyy azatsarynnyy added this to the 7.28 milestone Feb 19, 2021
@azatsarynnyy
Copy link
Member Author

It should work well after replacing the schema of a requested URI from local to file-sidecar-${machineName}.

@azatsarynnyy azatsarynnyy added the good first issue Community, this issue looks easy to start with for a new contributor. Just take it. We'll help you! label Feb 19, 2021
@azatsarynnyy azatsarynnyy changed the title Adapt vscode.workspace.fs Plug-in API to Che-Theia's remote plugin system Adapt vscode.workspace.fs Plug-in API to Che-Theia's remote plugin model Feb 25, 2021
@azatsarynnyy azatsarynnyy mentioned this issue Feb 25, 2021
11 tasks
@l0rd l0rd added the new&noteworthy For new and/or noteworthy issues that deserve a blog post, new docs, or emphasis in release notes label Mar 30, 2021
@l0rd l0rd changed the title Adapt vscode.workspace.fs Plug-in API to Che-Theia's remote plugin model Provide sidecar filesystem access for extensions Mar 30, 2021
@l0rd l0rd changed the title Provide sidecar filesystem access for extensions Provide sidecar filesystem access for VS Code extensions Mar 30, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/editor/theia Issues related to the che-theia IDE of Che good first issue Community, this issue looks easy to start with for a new contributor. Just take it. We'll help you! kind/task Internal things, technical debt, and to-do tasks to be performed. new&noteworthy For new and/or noteworthy issues that deserve a blog post, new docs, or emphasis in release notes severity/P1 Has a major impact to usage or development of the system.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants