5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
# File 'lib/danarchy_deploy/helpers.rb', line 5
def self.run_command(command, options)
pid, stdout, stderr = nil
printf("%14s %0s\n", 'Running:', "#{command}")
Open3.popen3(command) do |i, o, e, t|
pid = t.pid
(out, err) = o.read, e.read
stdout = !out.empty? ? out : nil
stderr = !err.empty? ? err : nil
end
if options[:ssh_verbose]
puts "------\nSTDOUT: ", stdout, '------' if stdout
puts "------\nSTDERR: ", stderr, '------' if stderr
end
{ pid: pid, stdout: stdout, stderr: stderr }
end
|