Rebuild SSH installation (#20220)
Closes #ISSUE This refactors SSH installation to require less shell stuff. We'd like to support arbitrary remote hosts, and unfortunately csh/tcsh have quoting rules that make it impossible to run multi-line scripts. The primary changes are: * The target path now contains the version: `./zed_server/zed-remote-server-{release_channel}-{version}` * We do all our processing in a temporary file and `mv` it into place. * We do fewer calls to `ssh_command` overall. With the previous two changes we can avoid lock files, and fuser calls. Instead cleanup of old binaries now happens in `execute_run`. * We only try to install the remote server when the connection is established, not on each project open. This should also put us in a good position if we want to pre-emptively install new versions when the auto-updater detects an update for the running version of zed (but that's not wired up yet) Release Notes: - Remoting: Fixed remoting when the remote runs `tcsh` - Remoting: Improved latency of connecting
This commit is contained in:
parent
7c72929f0b
commit
87ba5fd7bc
7 changed files with 287 additions and 585 deletions
|
@ -53,6 +53,7 @@ serde_json.workspace = true
|
|||
settings.workspace = true
|
||||
shellexpand.workspace = true
|
||||
smol.workspace = true
|
||||
sysinfo.workspace = true
|
||||
telemetry_events.workspace = true
|
||||
util.workspace = true
|
||||
worktree.workspace = true
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue