module Busser::UI
User interface methods.
@author Fletcher Nichol <fnichol@nichol.ca>
Public Instance Methods
die(msg, exitstatus = 1)
click to toggle source
# File lib/busser/ui.rb, line 62 def die(msg, exitstatus = 1) fatal(msg) exit(exitstatus) end
fatal(msg)
click to toggle source
# File lib/busser/ui.rb, line 42 def fatal(msg) error("!!!!!! #{msg}") end
handle_command(type, cmd) { || ... }
click to toggle source
# File lib/busser/ui.rb, line 71 def handle_command(type, cmd) begin yield rescue => e fatal( "#{type} [#{cmd}] raised an exception: #{e.message}\n" + e.backtrace.join("\n")) raise end if status.nil? die( "#{type} [#{cmd}] did not return a valid status. " \ "This instance could be starved for RAM or may have swap disabled." ) elsif status.success? true else code = status.exitstatus die("#{type} [#{cmd}] exit code was #{code}", code) end end
info(msg)
click to toggle source
# File lib/busser/ui.rb, line 34 def info(msg) say(" #{msg}") end
run!(cmd, config = {})
click to toggle source
# File lib/busser/ui.rb, line 46 def run!(cmd, config = {}) config = { :capture => false, :verbose => false }.merge(config) handle_command("Command", cmd) do run(cmd, config) end end
run_ruby_script!(cmd, config = {})
click to toggle source
# File lib/busser/ui.rb, line 54 def run_ruby_script!(cmd, config = {}) config = { :capture => false, :verbose => false }.merge(config) handle_command("Ruby Script", cmd) do run_ruby_script(cmd, config) end end
status()
click to toggle source
# File lib/busser/ui.rb, line 67 def status $? end
warn(msg)
click to toggle source
# File lib/busser/ui.rb, line 38 def warn(msg) say(">>>>>> #{msg}") end