class Hookit::Resource::Scp

Public Class Methods

new(name) click to toggle source
Calls superclass method Hookit::Resource::Base::new
# File lib/hookit/resource/scp.rb, line 19
def initialize(name)
  source(name) unless source
  preserve(true) unless preserve
  recursive(true) unless recursive
  super
end

Public Instance Methods

cipher!() click to toggle source
# File lib/hookit/resource/scp.rb, line 37
def cipher!
  (return "-c #{cipher}") if cipher
  ""
end
compression!() click to toggle source
# File lib/hookit/resource/scp.rb, line 42
def compression!
  (return "C") if compression
  ""
end
config!() click to toggle source
# File lib/hookit/resource/scp.rb, line 47
def config!
  (return "-F #{config}") if config
  ""
end
copy!() click to toggle source
# File lib/hookit/resource/scp.rb, line 33
def copy!
  run_command!("scp -q#{preserve!}#{recursive!}B#{compression!} #{config!} #{port!} #{cipher!} #{identity!} #{ssh_options!} #{source} #{destination}")
end
identity!() click to toggle source
# File lib/hookit/resource/scp.rb, line 52
def identity!
  (return "-i #{identity}") if identity
  ""
end
port!() click to toggle source
# File lib/hookit/resource/scp.rb, line 57
def port!
  (return "-P #{port}") if port
  ""
end
preserve!() click to toggle source
# File lib/hookit/resource/scp.rb, line 62
def preserve!
  (return "p") if preserve
  ""
end
recursive!() click to toggle source
# File lib/hookit/resource/scp.rb, line 67
def recursive!
  (return "r") if recursive
  ""
end
run(action) click to toggle source
# File lib/hookit/resource/scp.rb, line 26
def run(action)
  case action
  when :copy
    copy!
  end
end
run_command!(cmd, expect_code=0) click to toggle source
# File lib/hookit/resource/scp.rb, line 77
def run_command!(cmd, expect_code=0)
  `#{cmd}`
  code = $?.exitstatus
  if code != expect_code
    raise Hookit::Error::UnexpectedExit, "#{cmd} failed with exit code '#{code}'"
  end
end
ssh_options!() click to toggle source
# File lib/hookit/resource/scp.rb, line 72
def ssh_options!
  (return "-o #{ssh_options}") if ssh_options
  ""
end