Class: EacRubyUtils::Envs::SshEnv
- Defined in:
- lib/eac_ruby_utils/envs/ssh_env.rb
Constant Summary collapse
- USER_PATTERN =
/[a-z_][a-z0-9_-]*/.freeze
- HOSTNAME_PATTERN =
/[^@]+/.freeze
- USER_HOSTNAME_PATTERN =
/\A(?:(#{USER_PATTERN})@)?(#{HOSTNAME_PATTERN})\z/.freeze
Instance Attribute Summary collapse
-
#uri ⇒ Object
readonly
Returns the value of attribute uri.
Class Method Summary collapse
Instance Method Summary collapse
- #command_line(line) ⇒ Object
-
#initialize(uri) ⇒ SshEnv
constructor
A new instance of SshEnv.
- #to_s ⇒ Object
Methods inherited from BaseEnv
#command, #executable, #file, #file_exist?
Constructor Details
#initialize(uri) ⇒ SshEnv
Returns a new instance of SshEnv.
37 38 39 |
# File 'lib/eac_ruby_utils/envs/ssh_env.rb', line 37 def initialize(uri) @uri = self.class.parse_uri(uri).freeze end |
Instance Attribute Details
#uri ⇒ Object (readonly)
Returns the value of attribute uri.
35 36 37 |
# File 'lib/eac_ruby_utils/envs/ssh_env.rb', line 35 def uri @uri end |
Class Method Details
.parse_uri(uri) ⇒ Object
16 17 18 |
# File 'lib/eac_ruby_utils/envs/ssh_env.rb', line 16 def parse_uri(uri) uri_by_url(uri) || uri_by_user_hostname(uri) || raise("URI has no SSH scheme: #{uri}") end |