module Aggkit::Exec
Public Instance Methods
capture(cmd)
click to toggle source
# File lib/aggkit/exec.rb, line 14 def capture(cmd) puts "Capturing: #{cmd}" io = IO.popen(cmd) io.read.strip ensure io.close rescue nil end
capture!(cmd, error = nil)
click to toggle source
# File lib/aggkit/exec.rb, line 22 def capture!(cmd, error = nil) output = capture(cmd) error = error ? "#{error}: Execution failed" : 'Execution failed' die(error) unless ($?.success? rescue nil) output rescue Exception => e error = error ? "#{error}: #{e.inspect}" : "Execution failed: #{e.inspect}" die(error) end
die(message, code: 1)
click to toggle source
# File lib/aggkit/exec.rb, line 9 def die(message, code: 1) error(message) exit!(code) end
error(message)
click to toggle source
# File lib/aggkit/exec.rb, line 5 def error(message) STDERR.puts "Error: #{message}" end
execute!(cmd, error = nil)
click to toggle source
# File lib/aggkit/exec.rb, line 33 def execute!(cmd, error = nil) puts "Executing: #{cmd}" error = error ? "#{error}: Execution failed" : 'Execution failed' die(error) unless system(cmd) end