class GitlabClusterHelper::Shell

Public Instance Methods

run(command) click to toggle source
# File lib/gitlab_cluster_helper/shell.rb, line 7
def run(command)
  puts "Running command: #{command.join(" ")}"
  stdin, stdout, stderr, wait_thr = Open3.popen3(*command)

  stdin.close

  out = stdout.read
  stdout.close

  err = stderr.read
  stderr.close

  exit_status = wait_thr.value

  raise Error, out + err unless exit_status.success?

  out.chomp
end