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