class Samovar::Command
def system!(*args, **options)
def system!(*args, **options) command_line = args.join(' ') pid = Process.spawn(*args, **options) puts Rainbow(command_line).color(:blue) status = Process.waitpid2(pid).last if status.success? return true else raise SystemError.new("Command #{command_line.dump} failed: #{status.to_s}") end rescue Errno::ENOENT raise SystemError.new("Command #{command_line.dump} failed: #{$!}") end