vscode-remote-release icon indicating copy to clipboard operation
vscode-remote-release copied to clipboard

Wrong Server and Cli downloading URL ( Incorrect download URL for VS Code Server (missing -x64 on Windows))

Open wanttosleep opened this issue 7 months ago • 5 comments

Is there an existing issue for this bug?

  • [x] I have searched the existing open issues and found none that apply.
  • [x] If I find any issue of interest that is related or closed, I will included a link to it in this issue.

Required Troubleshooting Steps

  • [x] I have read and performed the troubleshooting steps
  • [x] I have tried both values of the remote.SSH.useLocalServer setting
  • [x] My issue was not covered in the Tips and Tricks linked from the Troubleshooting Wiki.
  • [x] I will include a complete copy of my Remote - SSH logs by running Remote-SSH: Show Log in the command palette or from View > Output in the menu bar

[Optional] Diagnose with Copilot

I asked @remote-ssh but it did not help

In step 2 of the troubleshooting wiki, what was the result of running the generated SSH command verbatim outside of VS Code?

I did not try step 2 of the troubleshooting steps

Remote-SSH Log

[15:43:33.719] Log Level: 2 [15:43:33.733] SSH Resolver called for "ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d", attempt 1 [15:43:33.735] remote.SSH.useLocalServer = false [15:43:33.735] remote.SSH.useExecServer = true [15:43:33.735] remote.SSH.bindHost = {} [15:43:33.735] remote.SSH.showLoginTerminal = false [15:43:33.735] remote.SSH.remotePlatform = {"124.70.159.21":"linux","210.27.227.67":"windows","804DellWorkStation":"windows","804DellWorkStationipv6":"windows","804DellWorkStationipv4":"windows","804DellHSK":"windows","TongxinCloud":"linux","11.tcp.cpolar.top":"windows","804DellCpolar":"windows","804WorkstationLoCyanFrp":"windows","804WorkstationLoCyanFrp3":"windows","804WorkstationLoCyanFrp2":"windows","804WorkstationLoCyanFrp4":"windows"} [15:43:33.736] remote.SSH.path = undefined [15:43:33.736] remote.SSH.configFile = c:\Users\Sun.ssh\config [15:43:33.736] remote.SSH.useFlock = true [15:43:33.736] remote.SSH.lockfilesInTmp = false [15:43:33.736] remote.SSH.localServerDownload = auto [15:43:33.736] remote.SSH.remoteServerListenOnSocket = false [15:43:33.736] remote.SSH.defaultExtensions = [] [15:43:33.736] remote.SSH.defaultExtensionsIfInstalledLocally = [] [15:43:33.736] remote.SSH.loglevel = 2 [15:43:33.736] remote.SSH.enableDynamicForwarding = true [15:43:33.738] remote.SSH.enableRemoteCommand = false [15:43:33.738] remote.SSH.serverPickPortsFromRange = {} [15:43:33.738] remote.SSH.serverInstallPath = {} [15:43:33.738] remote.SSH.permitPtyAllocation = false [15:43:33.738] remote.SSH.preferredLocalPortRange = undefined [15:43:33.738] remote.SSH.useCurlAndWgetConfigurationFiles = false [15:43:33.738] remote.SSH.experimental.chat = false [15:43:33.738] remote.SSH.experimental.enhancedSessionLogs = false [15:43:33.738] remote.SSH.httpProxy = {"*":""} [15:43:33.738] remote.SSH.httpsProxy = {} [15:43:33.739] VS Code version: 1.100.0 [15:43:33.739] Remote-SSH version: [email protected] [15:43:33.740] win32 x64 [15:43:33.751] SSH Resolver called for host: 804WorkstationLoCyanFrp2 [15:43:33.751] Setting up SSH remote "804WorkstationLoCyanFrp2" [15:43:33.757] Using commit id "19e0f9e681ecb8e5c09d8784acaa601316ca4571" and quality "stable" for server [15:43:33.757] Extensions to install: [15:43:33.761] Install and start server if needed [15:43:33.764] Checking ssh with "D:\Program Files (x86)\VMware\VMware Workstation\bin\ssh.exe -V" [15:43:33.766] Got error from ssh: spawn D:\Program Files (x86)\VMware\VMware Workstation\bin\ssh.exe ENOENT [15:43:33.766] Checking ssh with "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.6\bin\ssh.exe -V" [15:43:33.767] Got error from ssh: spawn C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.6\bin\ssh.exe ENOENT [15:43:33.767] Checking ssh with "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.6\libnvvp\ssh.exe -V" [15:43:33.768] Got error from ssh: spawn C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.6\libnvvp\ssh.exe ENOENT [15:43:33.768] Checking ssh with "C:\WINDOWS\system32\ssh.exe -V" [15:43:33.769] Got error from ssh: spawn C:\WINDOWS\system32\ssh.exe ENOENT [15:43:33.769] Checking ssh with "C:\WINDOWS\ssh.exe -V" [15:43:33.770] Got error from ssh: spawn C:\WINDOWS\ssh.exe ENOENT [15:43:33.770] Checking ssh with "C:\WINDOWS\System32\Wbem\ssh.exe -V" [15:43:33.770] Got error from ssh: spawn C:\WINDOWS\System32\Wbem\ssh.exe ENOENT [15:43:33.770] Checking ssh with "C:\WINDOWS\System32\WindowsPowerShell\v1.0\ssh.exe -V" [15:43:33.771] Got error from ssh: spawn C:\WINDOWS\System32\WindowsPowerShell\v1.0\ssh.exe ENOENT [15:43:33.771] Checking ssh with "C:\WINDOWS\System32\OpenSSH\ssh.exe -V" [15:43:33.803] > OpenSSH_for_Windows_9.5p1, LibreSSL 3.8.2

[15:43:33.806] Using SSH config file "c:\Users\Sun.ssh\config" [15:43:33.807] Remote command length: 5051/8192 characters [15:43:33.807] Running script with connection command: "C:\WINDOWS\System32\OpenSSH\ssh.exe" -T -D 8849 -F "c:\Users\Sun.ssh\config" "804WorkstationLoCyanFrp2" powershell [15:43:33.808] Generated SSH command: 'type "C:\Users\Sun\AppData\Local\Temp\vscode-linux-multi-line-command-804-orkstation-o-yan-rp2-119198294.sh" | "C:\WINDOWS\System32\OpenSSH\ssh.exe" -T -D 8849 -F "c:\Users\Sun.ssh\config" "804WorkstationLoCyanFrp2" powershell' [15:43:33.809] Using connect timeout of 17 seconds [15:43:33.809] Terminal shell path: C:\WINDOWS\System32\cmd.exe [15:43:34.001] > [15:43:34.001] Got some output, clearing connection timeout [15:43:36.422] > Windows PowerShell

��Ȩ���� (C) Microsoft Corporation����������Ȩ���������µĿ�ƽ̨ PowerShell https://aka.ms/pscore6PS C:\Users\BoyanSun> PS C:\Users\BoyanSun> $uuid="6df4043c68f2" [15:43:36.450] > . : �޷������ļ� E:\Documents\WindowsPowerShell\profile.ps1����Ϊ�ڴ�ϵͳ�Ͻ�ֹ���нű����й���ϸ��Ϣ������� https:/go .microsoft.com/fwlink/?LinkID=135170 �е� about_Execution_Policies�� ����λ�� ��:1 �ַ�: 3

  • . 'E:\Documents\WindowsPowerShell\profile.ps1'
  • + CategoryInfo          : SecurityError: (:) []��PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
    

PS C:\Users\BoyanSun> "${uuid}: running" 6df4043c68f2: running PS C:\Users\BoyanSun> "6df4043c68f2: pauseLog" 6df4043c68f2: pauseLog [15:43:37.290] > Looking for existing CLI in C:\Users\BoyanSun.vscode-server Downloading cli 6df4043c68f2%%1%% [15:43:37.883] > Download failed. - Not Found Trigger local server download 6df4043c68f2:trigger_server_download artifact==cli-win32-== destFolder==C:\Users\BoyanSun.vscode-server== destFolder2==/vscode-cli-19e0f9e681ecb8e5c09d8784acaa601316ca4571.zip== 6df4043c68f2:trigger_server_download_end Waiting for client to transfer server archive... Waiting for C:\Users\BoyanSun.vscode-server\vscode-cli-19e0f9e681ecb8e5c09d8784 4acaa601316ca4571.zip.done and vscode-cli-19e0f9e681ecb8e5c09d8784acaa601316ca457 71.zip to exist [15:43:37.884] Got request to download on client for {"artifact":"cli-win32-","destPath":"C:\Users\BoyanSun\.vscode-server/vscode-cli-19e0f9e681ecb8e5c09d8784acaa601316ca4571.zip"} [15:43:37.884] server download URL: https://update.code.visualstudio.com/commit:19e0f9e681ecb8e5c09d8784acaa601316ca4571/cli-win32-/stable [15:43:37.884] Downloading VS Code server locally... [15:43:38.030] Resolver error: Error: 未能下载 VS Code 服务器(Server returned 404) at y.Create (c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:744751) at c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:790629 at async t.downloadAndCopyToHost (c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:790129) at async c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:864967 at async t.tryInstall (c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:865206) at async c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:824246 at async t.withShowDetailsEvent (c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:827501) at async A (c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:820760) at async t.resolve (c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:824898) at async c:\Users\Sun.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0\out\extension.js:2:1113660 [15:43:38.034] ------

[15:43:38.034] ---------- [Session Summary] ----------- [15:43:38.034] [LocalDownloadFailed]: Error: LocalDownloadFailed (未能下载 VS Code 服务器(Server returned 404)) [15:43:38.034] ---------------------------------------- [15:43:38.610] Opening exec server for ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d [15:43:38.821] Opening exec server for ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d [15:43:38.837] Initizing new exec server for ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d [15:43:38.838] Using commit id "19e0f9e681ecb8e5c09d8784acaa601316ca4571" and quality "stable" for server [15:43:38.838] Extensions to install: [15:43:38.840] Install and start server if needed [15:43:38.843] Using SSH config file "c:\Users\Sun.ssh\config" [15:43:38.843] Remote command length: 5051/8192 characters [15:43:38.843] Running script with connection command: "C:\WINDOWS\System32\OpenSSH\ssh.exe" -T -D 8849 -F "c:\Users\Sun.ssh\config" "804WorkstationLoCyanFrp2" powershell [15:43:38.844] Generated SSH command: 'type "C:\Users\Sun\AppData\Local\Temp\vscode-linux-multi-line-command-804-orkstation-o-yan-rp2-463016921.sh" | "C:\WINDOWS\System32\OpenSSH\ssh.exe" -T -D 8849 -F "c:\Users\Sun.ssh\config" "804WorkstationLoCyanFrp2" powershell' [15:43:38.844] Using connect timeout of 17 seconds [15:43:38.844] Terminal shell path: C:\WINDOWS\System32\cmd.exe [15:43:39.036] > [15:43:39.036] Got some output, clearing connection timeout [15:43:41.450] > Windows PowerShell

��Ȩ���� (C) Microsoft Corporation����������Ȩ���������µĿ�ƽ̨ PowerShell https://aka.ms/pscore6PS C:\Users\BoyanSun> PS C:\Users\BoyanSun> $uuid="218d5a107aaa" [15:43:41.466] > . : �޷������ļ� E:\Documents\WindowsPowerShell\profile.ps1����Ϊ�ڴ�ϵͳ�Ͻ�ֹ���нű����й���ϸ��Ϣ������� https:/go .microsoft.com/fwlink/?LinkID=135170 �е� about_Execution_Policies�� ����λ�� ��:1 �ַ�: 3

  • . 'E:\Documents\WindowsPowerShell\profile.ps1'
  • + CategoryInfo          : SecurityError: (:) []��PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
    

PS C:\Users\BoyanSun> "${uuid}: running" [15:43:41.484] > 218d5a107aaa: running PS C:\Users\BoyanSun> "218d5a107aaa: pauseLog" 218d5a107aaa: pauseLog [15:43:41.823] > [15:43:42.297] > Looking for existing CLI in C:\Users\BoyanSun.vscode-server Downloading cli 218d5a107aaa%%1%% [15:43:42.307] > [15:43:42.778] > Download failed. - Not Found Trigger local server download 218d5a107aaa:trigger_server_download artifact==cli-win32-== destFolder==C:\Users\BoyanSun.vscode-server== destFolder2==/vscode-cli-19e0f9e681ecb8e5c09d8784acaa601316ca4571.zip== 218d5a107aaa:trigger_server_download_end Waiting for client to transfer server archive... Waiting for C:\Users\BoyanSun.vscode-server\vscode-cli-19e0f9e681ecb8e5c09d8784 4acaa601316ca4571.zip.done and vscode-cli-19e0f9e681ecb8e5c09d8784acaa601316ca457 71.zip to exist [15:43:42.778] Got request to download on client for {"artifact":"cli-win32-","destPath":"C:\Users\BoyanSun\.vscode-server/vscode-cli-19e0f9e681ecb8e5c09d8784acaa601316ca4571.zip"} [15:43:42.778] server download URL: https://update.code.visualstudio.com/commit:19e0f9e681ecb8e5c09d8784acaa601316ca4571/cli-win32-/stable [15:43:42.778] Downloading VS Code server locally... [15:43:42.796] > [15:43:42.920] Exec server for ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d failed: Error: 未能下载 VS Code 服务器(Server returned 404) [15:43:42.920] Existing exec server for ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d errored (Error: 未能下载 VS Code 服务器(Server returned 404)) [15:43:42.920] Initizing new exec server for ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d [15:43:42.921] Error opening exec server for ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d: Error: 未能下载 VS Code 服务器(Server returned 404) [15:43:42.921] ---------- [Session Summary] ----------- [15:43:42.921] [LocalDownloadFailed]: Error: LocalDownloadFailed (未能下载 VS Code 服务器(Server returned 404)) [15:43:42.921] ---------------------------------------- [15:43:42.921] Using commit id "19e0f9e681ecb8e5c09d8784acaa601316ca4571" and quality "stable" for server [15:43:42.921] Extensions to install: [15:43:42.922] Install and start server if needed [15:43:42.925] Using SSH config file "c:\Users\Sun.ssh\config" [15:43:42.925] Remote command length: 5051/8192 characters [15:43:42.925] Running script with connection command: "C:\WINDOWS\System32\OpenSSH\ssh.exe" -T -D 8849 -F "c:\Users\Sun.ssh\config" "804WorkstationLoCyanFrp2" powershell [15:43:42.926] Generated SSH command: 'type "C:\Users\Sun\AppData\Local\Temp\vscode-linux-multi-line-command-804-orkstation-o-yan-rp2-324722286.sh" | "C:\WINDOWS\System32\OpenSSH\ssh.exe" -T -D 8849 -F "c:\Users\Sun.ssh\config" "804WorkstationLoCyanFrp2" powershell' [15:43:42.926] Using connect timeout of 17 seconds [15:43:42.926] Terminal shell path: C:\WINDOWS\System32\cmd.exe [15:43:43.115] > [15:43:43.115] Got some output, clearing connection timeout [15:43:45.459] > Windows PowerShell ��Ȩ���� (C) Microsoft Corporation����������Ȩ���������µĿ�ƽ̨ PowerShell https://aka.ms/pscore6PS C:\Users\BoyanSun> PS C:\Users\BoyanSun> $uuid="15b4c6939ef5" [15:43:45.474] > . : �޷������ļ� E:\Documents\WindowsPowerShell\profile.ps1����Ϊ�ڴ�ϵͳ�Ͻ�ֹ���нű����й���ϸ��Ϣ������� https:/go .microsoft.com/fwlink/?LinkID=135170 �е� about_Execution_Policies�� ����λ�� ��:1 �ַ�: 3

  • . 'E:\Documents\WindowsPowerShell\profile.ps1'
  • + CategoryInfo          : SecurityError: (:) []��PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
    

PS C:\Users\BoyanSun> "${uuid}: running" 15b4c6939ef5: running [15:43:45.489] > PS C:\Users\BoyanSun> "15b4c6939ef5: pauseLog" 15b4c6939ef5: pauseLog [15:43:45.841] > PS C:\Users\BoyanSun> main [15:43:46.316] > Looking for existing CLI in C:\Users\BoyanSun.vscode-server Downloading cli 15b4c6939ef5%%1%% [15:43:46.330] > [15:43:46.912] > Download failed. - Not Found Trigger local server download 15b4c6939ef5:trigger_server_download artifact==cli-win32-== destFolder==C:\Users\BoyanSun.vscode-server== destFolder2==/vscode-cli-19e0f9e681ecb8e5c09d8784acaa601316ca4571.zip== 15b4c6939ef5:trigger_server_download_end Waiting for client to transfer server archive... Waiting for C:\Users\BoyanSun.vscode-server\vscode-cli-19e0f9e681ecb8e5c09d8784 4acaa601316ca4571.zip.done and vscode-cli-19e0f9e681ecb8e5c09d8784acaa601316ca457 71.zip to exist [15:43:46.912] Got request to download on client for {"artifact":"cli-win32-","destPath":"C:\Users\BoyanSun\.vscode-server/vscode-cli-19e0f9e681ecb8e5c09d8784acaa601316ca4571.zip"} [15:43:46.912] server download URL: https://update.code.visualstudio.com/commit:19e0f9e681ecb8e5c09d8784acaa601316ca4571/cli-win32-/stable [15:43:46.912] Downloading VS Code server locally... [15:43:47.057] Exec server for ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d failed: Error: 未能下载 VS Code 服务器(Server returned 404) [15:43:47.057] Error opening exec server for ssh-remote+7b22686f73744e616d65223a22383034576f726b73746174696f6e4c6f4379616e46727032227d: Error: 未能下载 VS Code 服务器(Server returned 404) [15:43:47.057] ---------- [Session Summary] ----------- [15:43:47.057] [LocalDownloadFailed]: Error: LocalDownloadFailed (未能下载 VS Code 服务器(Server returned 404)) [15:43:47.057] ----------------------------------------

Expected Behavior

The extension should download the 64-bit CLI for Windows using a URL similar to: https://update.code.visualstudio.com/commit:19e0f9e681ecb8e5c09d8784acaa601316ca4571/cli-win32-x64/stable

Actual Behavior

The extension tries to download from a URL similar to: https://update.code.visualstudio.com/commit:19e0f9e681ecb8e5c09d8784acaa601316ca4571/cli-win32-/stable

Steps To Reproduce

Steps to Reproduce:

Attempt to connect to a remote Windows machine configured in my SSH config. Observe the Remote - SSH extension log. The log shows the extension trying to download the VS Code Server from a URL that is missing the -x64 identifier for the Windows 64-bit CLI.

Anything else?

No response

wanttosleep avatar May 10 '25 07:05 wanttosleep

Interesting, it appears the architecture was resolved to an empty string 🤔 Should be (for an x64 system):

https://update.code.visualstudio.com/commit:19e0f9e681ecb8e5c09d8784acaa601316ca4571/cli-win32-/stable -> https://update.code.visualstudio.com/commit:19e0f9e681ecb8e5c09d8784acaa601316ca4571/cli-win32-x64/stable

joshspicer avatar May 12 '25 15:05 joshspicer

There looks to be some security errors executing a powershell script on your remote host

+ CategoryInfo          : SecurityError: (:) []��PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess

Could antivirus software on your machine perhaps be restricting execution of powershell scripts? That said, from the log it seems like we still execute (at least some) parts of the script on your machine.

It would be interesting to see on your machine if this snippet of code correctly identifies the architecture:

$p = $env:PROCESSOR_ARCHITECTURE
$arch = ''
if ($p -eq 'AMD64' -or $p -eq 'IA64') {
    $arch = 'x64'
} elseif ($p -eq 'ARM64') {
    $arch = 'arm64'
}

if ($arch -eq '') {
    Write-Output "Unsupported architecture '$p'."
    exit 1
}

Write-Output "Architecture: $arch"

joshspicer avatar May 12 '25 15:05 joshspicer

(base) PS C:\Users\BoyanSun> $p = $env:PROCESSOR_ARCHITECTURE

$arch = '' if ($p -eq 'AMD64' -or $p -eq 'IA64') { $arch = 'x64' } elseif ($p -eq 'ARM64') { $arch = 'arm64' }

if ($arch -eq '') { Write-Output "Unsupported architecture '$p'." exit 1 }

Write-Output "Architecture: $arch" Architecture: x64 The output is correct.

wanttosleep avatar May 12 '25 16:05 wanttosleep

There looks to be some security errors executing a powershell script on your remote host

+ CategoryInfo          : SecurityError: (:) []��PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess

Could antivirus software on your machine perhaps be restricting execution of powershell scripts? That said, from the log it seems like we still execute (at least some) parts of the script on your machine.

It would be interesting to see on your machine if this snippet of code correctly identifies the architecture:

$p = $env:PROCESSOR_ARCHITECTURE
$arch = ''
if ($p -eq 'AMD64' -or $p -eq 'IA64') {
    $arch = 'x64'
} elseif ($p -eq 'ARM64') {
    $arch = 'arm64'
}

if ($arch -eq '') {
    Write-Output "Unsupported architecture '$p'."
    exit 1
}

Write-Output "Architecture: $arch"

Architecture: x64 The output is correct.

wanttosleep avatar May 15 '25 07:05 wanttosleep

I need your help

o(╥﹏╥)o

wanttosleep avatar May 15 '25 13:05 wanttosleep