class Bow::Ssh::Scp

Public Class Methods

new(ssh_helper) click to toggle source
# File lib/bow/ssh/scp.rb, line 6
def initialize(ssh_helper)
  @ssh_helper = ssh_helper
end

Public Instance Methods

call(source, target) click to toggle source
# File lib/bow/ssh/scp.rb, line 10
def call(source, target)
  @ssh_helper.execute(cmd_rm(target)) if cleanup_needed?
  @ssh_helper.run(cmd_scp(source, target))
  @ssh_helper.run(cmd)
end
cleanup_needed?(source, target) click to toggle source
# File lib/bow/ssh/scp.rb, line 29
def cleanup_needed?(source, target)
  File.basename(source) == File.basename(target)
end
cmd_rm(target) click to toggle source
# File lib/bow/ssh/scp.rb, line 25
def cmd_rm(target)
  format('rm -rf %s', target)
end
cmd_scp(source, target) click to toggle source
# File lib/bow/ssh/scp.rb, line 16
def cmd_scp(source, target)
  format(
    'scp -o ConnectTimeout -r %s %s:%s',
    source,
    @ssh_helper.conn,
    target
  )
end