Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

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

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
ruby
Domain
devops

Research direction

Start by reading lib/sshkit/backends/netssh.rb at the linked line and compare how SSHKit overrides Net::SSH.default_files with the :config option described in the issue. Review net-ssh issue #587 to understand the ProxyJump behavior. Done means establishing which configuration path SSHKit should use and confirming that ProxyJump works without the current configuration mismatch.

Written by the indexing model from the issue text.

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:

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 :)

Dominant language
Ruby
Stars
1.2k
Forks
257
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from capistrano/sshkit

All issues in capistrano/sshkit

Similar issues

More Ruby issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.