Method: Mccloud::Provider::Core::VmCommand#ssh_commandline_options

Defined in:
lib/mccloud/provider/core/vm/ssh.rb

#ssh_commandline_options(options) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/mccloud/provider/core/vm/ssh.rb', line 8

def ssh_commandline_options(options)

  command_options = [
    "-q", #Suppress warning messages
     #           "-T", #Pseudo-terminal will not be allocated because stdin is not a terminal.
    "-t",
    "-p #{@port}",
    "-o UserKnownHostsFile=/dev/null",
    "-o StrictHostKeyChecking=no",
    #"-o IdentitiesOnly=yes",
    "-o VerifyHostKeyDNS=no",
    "-o ControlMaster=auto",
    "-o \"ControlPath=~/.ssh/master-%r@%h:%p\""
  ]
  unless @private_key_path.nil?
    command_options << "-i #{@private_key_path}"

  end
  if @agent_forwarding
    command_options << "-A"
  end
  commandline_options="#{command_options.join(" ")} ".strip

  unless options[:user]
    user_option=@user.nil? ? "" : "-l #{@user}"
  else
    user_option=@user.nil? ? "" : "-l #{options[:user]}"
  end

  return "#{commandline_options} #{user_option}"
end