From 1161c65b23c218726d4aba85d777193af1ea4aae Mon Sep 17 00:00:00 2001 From: elijah Date: Tue, 20 May 2014 14:19:43 -0700 Subject: ssh: modified yet again how ssh is used. pin to a newer version of capistrano that i think handles ~/.ssh/config better, and explicitly specify that ~/.ssh/config should be loaded for Net::SSH connections. --- leap_cli.gemspec | 2 +- lib/leap_cli/util/remote_command.rb | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/leap_cli.gemspec b/leap_cli.gemspec index a2f197d..829309a 100644 --- a/leap_cli.gemspec +++ b/leap_cli.gemspec @@ -56,7 +56,7 @@ spec = Gem::Specification.new do |s| s.add_runtime_dependency('tee') # network gems - s.add_runtime_dependency('capistrano', '~> 2.13.5') + s.add_runtime_dependency('capistrano', '~> 2.15.5') #s.add_runtime_dependency('supply_drop') # ^^ currently vendored diff --git a/lib/leap_cli/util/remote_command.rb b/lib/leap_cli/util/remote_command.rb index 07db416..6972bbb 100644 --- a/lib/leap_cli/util/remote_command.rb +++ b/lib/leap_cli/util/remote_command.rb @@ -50,8 +50,7 @@ module LeapCli; module Util; module RemoteCommand # def ssh_options { - :config => false, # setting config to `false` is odd. however, if we don't do this, net:ssh doesn't use ssh-agent correctly, - # for some unknown reason. also, with config `false`, it seems to still use ~/.ssh/config, so go figure. + :config => "~/.ssh/config", :global_known_hosts_file => path(:known_hosts), :user_known_hosts_file => '/dev/null', :paranoid => true @@ -68,13 +67,12 @@ module LeapCli; module Util; module RemoteCommand # return {:password => password_proc} # def node_options(node, ssh_options_override=nil) - ssh_options_override ||= {} { :ssh_options => { # :host_key_alias => node.name, << incompatible with ports in known_hosts :host_name => node.ip_address, :port => node.ssh.port - }.merge(contingent_ssh_options_for_node(node)).merge(ssh_options_override) + }.merge(contingent_ssh_options_for_node(node)).merge(ssh_options_override||{}) } end -- cgit v1.2.3