1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00

Add an options hash to scp. Set to {} by default

This commit is contained in:
Luke Robins 2011-06-08 12:27:20 +10:00
parent 1066d9eded
commit 2e567a870d
7 changed files with 29 additions and 19 deletions

View file

@ -200,12 +200,14 @@ module Fog
Fog::SSH.new(public_ip_address, username, options).run(commands)
end
def scp(local_path, remote_path, recursive = false)
def scp(local_path, remote_path, options = {})
requires :public_ip_address, :username
options = {}
upload_options = options.dup
#don't want to pass recursive to constructor
options.delete(:recursive)
options[:key_data] = [private_key] if private_key
Fog::SCP.new(public_ip_address, username, options).upload(local_path, remote_path, recursive)
Fog::SCP.new(public_ip_address, username, options).upload(local_path, remote_path, upload_options)
end
def start

View file

@ -128,12 +128,14 @@ module Fog
Fog::SSH.new(ips.first['address'], username, options).run(commands)
end
def scp(local_path, remote_path, recursive = false)
def scp(local_path, remote_path, options = {})
requires :ips, :username
options = {}
upload_options = options.dup
#don't want to pass recursive to constructor
options.delete(:recursive)
options[:key_data] = [private_key] if private_key
Fog::SCP.new(ips.first['address'], username, options).upload(local_path, remote_path, recursive)
Fog::SCP.new(ips.first['address'], username, options).upload(local_path, remote_path, upload_options)
end
def username

View file

@ -78,12 +78,14 @@ module Fog
Fog::SSH.new(ip['ip'], username, options).run(commands)
end
def scp(local_path, remote_path, recursive = false)
def scp(local_path, remote_path, options = {})
requires :ip, :username
options = {}
upload_options = options.dup
#don't want to pass recursive to constructor
options.delete(:recursive)
options[:key_data] = [private_key] if private_key
Fog::SCP.new(ip['ip'], username, options).upload(local_path, remote_path, recursive)
Fog::SCP.new(ip['ip'], username, options).upload(local_path, remote_path, upload_options)
end
def setup(credentials = {})

View file

@ -120,12 +120,14 @@ module Fog
Fog::SSH.new(public_ip_address, username, options).run(commands)
end
def scp(local_path, remote_path, recursive = false)
def scp(local_path, remote_path, options = {})
requires :public_ip_address, :username
options = {}
upload_options = options.dup
#don't want to pass recursive to constructor
options.delete(:recursive)
options[:key_data] = [private_key] if private_key
Fog::SCP.new(public_ip_address, username, options).upload(local_path, remote_path, recursive)
Fog::SCP.new(public_ip_address, username, options).upload(local_path, remote_path, upload_options)
end
def username

View file

@ -110,12 +110,14 @@ module Fog
Fog::SSH.new(addresses.first, username, options).run(commands)
end
def scp(local_path, remote_path, recursive = false)
def scp(local_path, remote_path, options = {})
requires :addresses, :username
options = {}
upload_options = options.dup
#don't want to pass recursive to constructor
options.delete(:recursive)
options[:key_data] = [private_key] if private_key
Fog::SCP.new(addresses.first, username, options).upload(local_path, remote_path, recursive)
Fog::SCP.new(addresses.first, username, options).upload(local_path, remote_path, upload_options)
end
def username

View file

@ -151,7 +151,7 @@ module Fog
end
end
def scp(local_path, remote_path, recursive = false)
def scp(local_path, remote_path, options = {})
raise 'Not Implemented'
# requires :addresses, :username
#

View file

@ -23,7 +23,7 @@ module Fog
@options = options
end
def upload(local_path, remote_path, recursive = false )
def upload(local_path, remote_path, options = {} )
Fog::Mock.not_implemented
end
@ -45,10 +45,10 @@ module Fog
@options = { :paranoid => false }.merge(options)
end
def upload(local_path, remote_path, recursive = false )
def upload(local_path, remote_path, options = {} )
begin
Net::SCP.start(@address, @username, @options) do |scp|
scp.upload!(local_path, remote_path, :recursive => recursive ) do |ch, name, sent, total|
scp.upload!(local_path, remote_path, options ) do |ch, name, sent, total|
# TODO: handle progress display?
end
end