Class: EacRubyUtils::Envs::SshEnv

Inherits:
BaseEnv
  • Object
show all
Defined in:
lib/eac_ruby_utils/envs/ssh_env.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseEnv

#command, #file_exist?

Constructor Details

#initialize(uri) ⇒ SshEnv



21
22
23
# File 'lib/eac_ruby_utils/envs/ssh_env.rb', line 21

def initialize(uri)
  @uri = self.class.parse_uri(uri)
end

Class Method Details

.parse_uri(uri) ⇒ Object



5
6
7
8
9
# File 'lib/eac_ruby_utils/envs/ssh_env.rb', line 5

def parse_uri(uri)
  r = parse_user_hostname(uri) || ::Addressable::URI.parse(uri)
  return r if r.scheme == 'ssh'
  raise "URI has no SSH scheme: #{uri}"
end

Instance Method Details

#command_line(line) ⇒ Object



29
30
31
# File 'lib/eac_ruby_utils/envs/ssh_env.rb', line 29

def command_line(line)
  "#{ssh_command_line} #{Shellwords.escape(line)}"
end

#to_sObject



25
26
27
# File 'lib/eac_ruby_utils/envs/ssh_env.rb', line 25

def to_s
  uri.to_s
end