Experimental ssh: Enable scp/rsync/sftp support for ssh connect#5000
Open
Experimental ssh: Enable scp/rsync/sftp support for ssh connect#5000
Conversation
The `ssh connect` command now automatically writes an SSH config entry so that standard SSH tools can connect using the same hostname. This also suppresses noisy output in proxy mode and handles context cancellation gracefully when tools like scp disconnect. - Auto-write SSH config from `connect` (opt out with `--no-config`) - Add `--multiplex` flag for SSH ControlMaster connection reuse - Suppress cmdio output in proxy mode (fixes "Uploading binaries..." noise) - Return nil for context.Canceled in proxy mode (fixes "Error: context canceled") - Remove stale metadata from persisted SSH config (IDE mode fix) - Refactor GenerateHostConfig to use HostConfigOptions struct Co-authored-by: Isaac
Waiting for approvalBased on git history, these people are best suited to review:
Eligible reviewers: Suggestions based on git history. See OWNERS for ownership rules. |
Co-authored-by: Isaac
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ssh connectnow auto-writes an SSH config entry so thatscp,rsync, andsftpwork with the same hostname (opt out with--no-config)--multiplexflag to bothconnectandsetupfor SSH ControlMaster connection reuse during active sessionsscpinvoke the ProxyCommandcontext.Canceledgracefully in proxy mode — fixes "Error: context canceled" message whenscp/rsyncdisconnectGenerateHostConfigto use aHostConfigOptionsstruct for extensibilityTest plan
databricks ssh connectprints SSH tool usage hints and writes configscp <hostname>:remote-file local-fileworks while session is activedatabricks ssh connect --no-configskips config writingdatabricks ssh connect --multiplexadds ControlMaster to config and inline argsdatabricks ssh setup --name=my-host --cluster=<id> --multiplexincludes ControlMastercat ~/.databricks/ssh-tunnel-configs/<hostname>shows correct configgo test ./experimental/ssh/...This pull request was AI-assisted by Isaac.