Run your command in `systemd()` to make debugging it easier
`DebugProcess` is not meant for direct use - `Aruba::Processes::InProcess.new` - by users. Only it’s public methods are part of the public API of aruba, e.g. `stdin`, `stdout`.
@private
Use only if mode is :debug
# File lib/aruba/processes/debug_process.rb, line 16 def self.match?(mode) mode == :debug || (mode.is_a?(Class) && mode <= DebugProcess) end
Close nothing
# File lib/aruba/processes/debug_process.rb, line 54 def close_io(*); end
# File lib/aruba/processes/debug_process.rb, line 20 def start Dir.chdir @working_directory do Aruba.platform.with_environment(environment) do @exit_status = system(command, *arguments) ? 0 : 1 end end end
Return stderr
@return [String]
A predefined string to make users aware they are using the DebugProcess
# File lib/aruba/processes/debug_process.rb, line 46 def stderr(*) 'This is the debug launcher on STDERR. If this output is unexpected, please check your setup.' end
Return stdin
@return [NilClass]
Nothing
# File lib/aruba/processes/debug_process.rb, line 32 def stdin(*); end
Return stdout
@return [String]
A predefined string to make users aware they are using the DebugProcess
# File lib/aruba/processes/debug_process.rb, line 38 def stdout(*) 'This is the debug launcher on STDOUT. If this output is unexpected, please check your setup.' end
Stop process
# File lib/aruba/processes/debug_process.rb, line 57 def stop(*) @started = false @exit_status end
Terminate process
# File lib/aruba/processes/debug_process.rb, line 64 def terminate(*) stop end
Write to nothing
# File lib/aruba/processes/debug_process.rb, line 51 def write(*); end