Class: Magnesium::SSH
- Inherits:
-
Object
- Object
- Magnesium::SSH
- Defined in:
- lib/magnesium/extensions/ssh.rb
Instance Attribute Summary collapse
-
#host ⇒ Object
Returns the value of attribute host.
-
#local ⇒ Object
Returns the value of attribute local.
-
#pwd ⇒ Object
Returns the value of attribute pwd.
-
#server ⇒ Object
Returns the value of attribute server.
-
#username ⇒ Object
Returns the value of attribute username.
Instance Method Summary collapse
-
#download_file ⇒ Object
(local,server).
-
#download_file_to_memory ⇒ Object
(server).
-
#download_folder ⇒ Object
(local,server).
- #exec_command(command) ⇒ Object
- #upload_file ⇒ Object
-
#upload_folder ⇒ Object
(local,server).
Instance Attribute Details
#host ⇒ Object
Returns the value of attribute host.
6 7 8 |
# File 'lib/magnesium/extensions/ssh.rb', line 6 def host @host end |
#local ⇒ Object
Returns the value of attribute local.
9 10 11 |
# File 'lib/magnesium/extensions/ssh.rb', line 9 def local @local end |
#pwd ⇒ Object
Returns the value of attribute pwd.
8 9 10 |
# File 'lib/magnesium/extensions/ssh.rb', line 8 def pwd @pwd end |
#server ⇒ Object
Returns the value of attribute server.
10 11 12 |
# File 'lib/magnesium/extensions/ssh.rb', line 10 def server @server end |
#username ⇒ Object
Returns the value of attribute username.
7 8 9 |
# File 'lib/magnesium/extensions/ssh.rb', line 7 def username @username end |
Instance Method Details
#download_file ⇒ Object
(local,server)
27 28 29 30 31 32 33 |
# File 'lib/magnesium/extensions/ssh.rb', line 27 def download_file #(local,server) Net::SCP.start(@host, @username, :password => @pwd) do |scp| scp.download!(@server,@local) do |ch, name, sent, total| puts "\r#{name}:#{(sent.to_f * 100 / total.to_f).to_i}%" end end end |
#download_file_to_memory ⇒ Object
(server)
47 48 49 50 51 |
# File 'lib/magnesium/extensions/ssh.rb', line 47 def download_file_to_memory #(server) Net::SCP.start(@host, @username, :password => @pwd) do |scp| return scp.download!(@server),to_yaml end end |
#download_folder ⇒ Object
(local,server)
41 42 43 44 45 |
# File 'lib/magnesium/extensions/ssh.rb', line 41 def download_folder #(local,server) Net::SSH.start(@host, @username, :password => @pwd) do |ssh| ssh.scp.download!(@local,@server,:recursive => true) end end |
#exec_command(command) ⇒ Object
12 13 14 15 16 17 |
# File 'lib/magnesium/extensions/ssh.rb', line 12 def exec_command(command) Net::SSH.start(@host, @username, :password => @pwd) do |ssh| result = ssh.exec!(command.to_s) return result end end |
#upload_file ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/magnesium/extensions/ssh.rb', line 19 def upload_file Net::SCP.start(@host, @username, :password => @pwd) do |scp| scp.upload!(@local,@server) do |ch, name, sent, total| puts "\r#{name}:#{(sent.to_f * 100 / total.to_f).to_i}%" end end end |
#upload_folder ⇒ Object
(local,server)
35 36 37 38 39 |
# File 'lib/magnesium/extensions/ssh.rb', line 35 def upload_folder #(local,server) Net::SSH.start(@host, @username, :password => @pwd) do |ssh| ssh.scp.upload!(@local,@server,:recursive => true) end end |