class Aruba::Processes::BasicProcess
Basic Process
‘BasicProcess` is not meant for direct use - `BasicProcess.new` - by users.
@private
Attributes
Public Class Methods
Source
# File lib/aruba/processes/basic_process.rb, line 19 def initialize(cmd, exit_timeout, io_wait_timeout, working_directory, # rubocop:disable Metrics/ParameterLists environment = Aruba.platform.environment_variables.hash_from_env, main_class = nil, stop_signal = nil, startup_wait_time = 0) @cmd = cmd @working_directory = working_directory @environment = environment @main_class = main_class @exit_status = nil @stop_signal = stop_signal @startup_wait_time = startup_wait_time @exit_timeout = exit_timeout @io_wait_timeout = io_wait_timeout @started = false @timed_out = false end
Public Instance Methods
Source
# File lib/aruba/processes/basic_process.rb, line 113 def after_run; end
Hook which is run after command is run
Source
# File lib/aruba/processes/basic_process.rb, line 129 def arguments return Shellwords.split(commandline)[1..] if Shellwords.split(commandline).size > 1 [] end
Source
# File lib/aruba/processes/basic_process.rb, line 110 def before_run; end
Hook which is run before command is run
Source
# File lib/aruba/processes/basic_process.rb, line 68 def close_io(*) raise NotImplementedError end
Source
# File lib/aruba/processes/basic_process.rb, line 125 def command Shellwords.split(commandline).first end
Source
# File lib/aruba/processes/basic_process.rb, line 38 def commandline @cmd end
Return command line
Source
# File lib/aruba/processes/basic_process.rb, line 80 def content raise NotImplementedError end
Source
# File lib/aruba/processes/basic_process.rb, line 76 def filesystem_status raise NotImplementedError end
Source
# File lib/aruba/processes/basic_process.rb, line 115 def inspect out = truncate(stdout(wait_for_io: 0).inspect, 35) err = truncate(stderr(wait_for_io: 0).inspect, 35) fmt = '#<%s:%s commandline="%s": stdout=%s stderr=%s>' format fmt, self.class, object_id, commandline, out, err end
Also aliased as: to_s
Source
# File lib/aruba/processes/basic_process.rb, line 48 def output(opts = {}) stdout(opts) + stderr(opts) end
Output stderr and stdout
Source
# File lib/aruba/processes/basic_process.rb, line 43 def pid raise NotImplementedError end
Output pid of process
Source
# File lib/aruba/processes/basic_process.rb, line 89 def restart stop start end
Restart a command
Source
# File lib/aruba/processes/basic_process.rb, line 72 def send_signal(*) raise NotImplementedError end
Source
# File lib/aruba/processes/basic_process.rb, line 100 def started? @started == true end
Was process already started
Source
# File lib/aruba/processes/basic_process.rb, line 64 def stderr(*) raise NotImplementedError end
Source
# File lib/aruba/processes/basic_process.rb, line 56 def stdin(*) raise NotImplementedError end
Source
# File lib/aruba/processes/basic_process.rb, line 60 def stdout(*) raise NotImplementedError end
Source
# File lib/aruba/processes/basic_process.rb, line 95 def stopped? @started == false end
Was process already stopped
Source
# File lib/aruba/processes/basic_process.rb, line 105 def timed_out? @timed_out == true end
Does the process failed to stop in time
Source
# File lib/aruba/processes/basic_process.rb, line 84 def wait raise NotImplementedError end
Source
# File lib/aruba/processes/basic_process.rb, line 52 def write(*) raise NotImplementedError end
Private Instance Methods
Source
# File lib/aruba/processes/basic_process.rb, line 141 def truncate(string, max_length) return string if string.length <= max_length "#{string[0, max_length - 1]} ..." end