capistrano / capistrano/sshkit

Overriding Net::SSH::Config.default_files is not the best strategy as of today

Open
#422 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
Ruby
Stars
1.2k
Forks
257
PR merge metrics
No merged PRs in 30d

Description

Hi, I'm currently unable to use the ProxyJump config with sshkit, due to this issue:

https://github.com/net-ssh/net-ssh/issues/587

sshkit will override Net::SSH.default_files here:

https://github.com/capistrano/sshkit/blob/158c2867071e015a117e188d1a0ee7b579c9b24e/lib/sshkit/backends/netssh.rb#L13

By the way, is there any reasons to do that instead of something simpler like:

```ruby
Net::SSH::Config.default_files << File.join(Dir.pwd, '.ssh/config')
```

Either way, net-ssh doesn't work the same way when the :config option is used in Net::SSH.start and when passed to default_files, as you could see in the issue I mentioned above.

Currently I'm in a rush to try to meet some tight deadlines for a new project I started and it will last a few months at least. If I were to find some time to contribute it would be more likely to provide some patch to sshkit to use the :config option instead of overriding `default_files` as it seems a simpler/quicker change for someone new to both projects, in my opinion. Before I do so, I'd like to check on your opinion. Is there anyone here that is comfortable with net-ssh source and would be willing to contribute to it by providing the "-F" option to the ssh client for each of those default_files? Otherwise, would you be willing to accept a patch that would change the current approach in sshkit so that this default configuration would be passed to the :config option instead of overriding `default_files`?

Thanks for your time to read all of this :)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.