diff --git a/lib/discourse.rb b/lib/discourse.rb index c9d740237de..e70685ccd20 100644 --- a/lib/discourse.rb +++ b/lib/discourse.rb @@ -169,7 +169,7 @@ module Discourse stdout, stderr, status = Open3.capture3(*args, chdir: chdir) if !status.exited? || !success_status_codes.include?(status.exitstatus) - message = [command, failure_message, stderr].filter(&:present?).join("\n") + message = [command.join(" "), failure_message, stderr].filter(&:present?).join("\n") raise CommandError.new(message, stdout: stdout, stderr: stderr, status: status) end diff --git a/spec/lib/discourse_spec.rb b/spec/lib/discourse_spec.rb index 2838ec9db0e..2e99924e1d5 100644 --- a/spec/lib/discourse_spec.rb +++ b/spec/lib/discourse_spec.rb @@ -553,8 +553,8 @@ RSpec.describe Discourse do it "includes the command in the error message" do expect do - Discourse::Utils.execute_command("false", failure_message: "oops") - end.to raise_error(RuntimeError, "false\noops") + Discourse::Utils.execute_command("false", "'foo'", failure_message: "oops") + end.to raise_error(RuntimeError, "false 'foo'\noops") end end