lib/hobo/helper/shell.rb in hobo-inviqa-0.0.8 vs lib/hobo/helper/shell.rb in hobo-inviqa-0.0.9.pre.alpha

- old
+ new

@@ -38,11 +38,12 @@ opts = { :capture => false, :indent => 0, :realtime => false, :env => {}, - :ignore_errors => false + :ignore_errors => false, + :exit_status => false }.merge! opts Hobo::Logging.logger.debug("helper.shell: Invoking '#{args.join(" ")}' with #{opts.to_s}") indent = " " * opts[:indent] @@ -69,9 +70,11 @@ t.join end buffer.fsync buffer.rewind + + return external.value.exitstatus if opts[:exit_status] raise ::Hobo::ExternalCommandError.new(args.join(" "), external.value.exitstatus, buffer) if external.value.exitstatus != 0 && !opts[:ignore_errors] return opts[:capture] ? buffer.read.strip : nil end \ No newline at end of file