class Rustic::Wrapper

Public Class Methods

new(argv, env_variables = {}) click to toggle source
# File lib/rustic/wrapper.rb, line 9
def initialize(argv, env_variables = {})
  @argv = argv
  @env_variables = env_variables
end

Public Instance Methods

run() click to toggle source
# File lib/rustic/wrapper.rb, line 14
def run
  logger.info(self, "Executing:", @argv)
  begin
    status = Async::Process.spawn(@env_variables, *@argv)
  rescue StandardError
    raise ExecutionError
  end
  return if status.exitstatus.zero? # TODO: check #success?

  raise ExitStatusError, "Exit status is not 0: #{status.exitstatus}"
end