-
Notifications
You must be signed in to change notification settings - Fork 30.8k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
fix: add linux library dependency check for remote server #202210
Conversation
Testing with custom insiders Build running at https://monacotools.visualstudio.com/Monaco/_build/results?buildId=251108&view=results ❌ - marks error flow aarch64 and armhf connections were tested using remote containers
|
10653c1
to
8e6cf94
Compare
Currently the requirements check is done in the CLI, which is what remotes are normalizing on as a way to install things. In the shell script this duplicates logic and surfaces warnings in a way that's harder for remote extensions to handle if we moved to using this script--we'd need to add logic to look for specific output on the vscode server. Is there a reason to prefer the shell script over allowing the CLI to guard it? |
As far as what I have heard from @aeschli and @chrmarti the cli is not yet the default in all remote scenarios, correct me here. We want these prerequisites to be checked for the upcoming 1.86 release for all cases. I am happy to rely on the CLI if that does the work today for all scenarios.
The script executes before the server starts and aborts server setup if conditions are not met, can you clarify the need to parse the output ? |
To clarify, the shell code is not meant to be permanent, it is temporary way to reliably check the requirements on all remote cases as the server executable will not run on the affected platforms starting with |
I'm not sure (haven't tested) whether the remotes show that nicely. Of course, showing just the raw output is probably fine, but e.g. I think remote SSH has some logic that shows failed prerequisite checks in a cleaner notification.
Sounds reasonable then 👍 |
Yeah this would be a nice follow-up, I have added a custom exit code for this case specifically. Extensions need not parse the output but rather listen for the exit code and show a notification with the same FAQ link. |
Fixes #201129
Originally based on https://github.com/microsoft/vscode-remote-ssh/blob/84f9f5a0668aa37d9d8d73e508660679fc7db88f/open-ssh-remote/src/install-script/server-installer.ts#L166-L277 but script has been changed to be aware of multi-arch libraries and cases where ldd might not return accurate result. Please check comments above specific sections for details.