JetBrains Gateway is unable to deploy the backend in remote host
Hello PyCharm and JetBrains Team,
I am using JetBrains Gateway to connect to a remote development server using SSH. The ssh agent authentication succeeds but then I get an exception when the gateway attempts to install the remote development backend. The error is caused because the script assumes the location of bash is in /bin/bash but in the remote development server is in /usr/bin/bash
```
valerio@sco3002:~/.local/share/JetBrains/JetBrainsGateway-243.21565.196/bin$ ./gateway
2024-11-29 09:12:51,681 [ 40854] WARN - #c.i.u.Alarm - Do not create alarm without coroutineScope: com.jetbrains.gateway.ssh.panels.recentConnections.RecentProjectsPanel$createSearchField$searchField$1.<init>(RecentProjectsPanel.kt:102)
2024-11-29 09:12:55,726 [ 44899] WARN - #c.j.g.s.p.r.HostBackgroundChecks - An error occurred while executing command on remote
com.jetbrains.gateway.ssh.deploy.DeployException: Worker binary deploy failed: check command log for details: Process for command \>/bin/bash -lc echo\ REMOTE_EXEC_OUTPUT_MARKER_\ \&\&\ echo\ \$HOME failed with exit code 127; stdout: ; stderr:
at com.jetbrains.gateway.ssh.GoWorkerDeployer.deploy$intellij_gateway_core(GoWorkerDeployer.kt:268)
at com.jetbrains.gateway.ssh.GoWorkerDeployer$deploy$1.invokeSuspend(GoWorkerDeployer.kt)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at kotlinx.coroutines.internal.SoftLimitedDispatcher$Worker.run(SoftLimitedDispatcher.kt:125)
at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:99)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)
Caused by: java.lang.IllegalStateException: Process for command \>/bin/bash -lc echo\ REMOTE_EXEC_OUTPUT_MARKER_\ \&\&\ echo\ \$HOME failed with exit code 127; stdout: ; stderr:
at com.jetbrains.gateway.ssh.deploy.ShellFacade.executeAssertSuccess(ShellFacade.kt:197)
````
The remote server has bash installed in a different location:
````
valerio@somalogin01 ~ $ which bash /usr/bin/bash valerio@somalogin01 ~ $ file /usr/bin/bash /usr/bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=85e3da5a087950e7aaeb7893c056218a8874d2e5, stripped
````
Question 1:
How can I modify the command run by JetBrains Gateway so that it uses the correct path?
Question 2:
How can I install the backend before hand?
I remember it used to be possible to look for installed backends using the Gateway tool.
请先登录再写评论。