class CapistranoMulticonfigParallel::ChildProcessStatus

class that is used to execute the capistrano tasks and it is invoked by the celluloid worker

Attributes

show_bundler[RW]

Public Class Methods

new(process_runner, job, command, options={}) click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 8
def initialize(process_runner, job, command, options={})
  super(process_runner, job, command, options)
  @show_bundler = true
end

Public Instance Methods

async_exception_handler(*data) click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 55
def async_exception_handler(*data)
  log_to_file "Child process for worker #{@job_id} async_exception_handler  disconnected due to error #{data.inspect}"
  io_callback('stderr', data)
  @exit_status = 1
end
io_callback(io, data) click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 65
def io_callback(io, data)
  log_to_worker(data, io)
end
on_exit(status) click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 49
def on_exit(status)
  log_to_file "Child process for worker #{@job_id} on_exit  disconnected due to error #{exit_status.inspect}"
  print_error_if_exist
  @exit_status = status.exitstatus
end
on_input_stdin(data) click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 22
def on_input_stdin(data)
  io_callback('stdin', data)
end
on_read_stderr(data) click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 32
def on_read_stderr(data)
  @job.save_stderr_error(data) if development_debug?
  io_callback('stderr', data)
end
on_read_stdout(data) click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 26
def on_read_stdout(data)
  @show_bundler = false if  data.to_s.include?("The Gemfile's dependencies are satisfied") || data.to_s.include?("Bundle complete")
  @actor.async.update_machine_state(truncate(data, CapistranoMulticonfigParallel::ApplicationHelper::DEFAULT_TEXT_LENGTH), :bundler => true) if @show_bundler == true && data.strip.present? && data.strip != '.'
  io_callback('stdout', data)
end
on_size_limit() click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 43
def on_size_limit
  log_to_file "Child process for worker #{@job_id} on_size_limit  disconnected"
  @did_size_limit = true
  @callback.call(self) if @expect_size_limit
end
on_timeout() click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 37
def on_timeout
  log_to_file "Child process for worker #{@job_id} on_timeout  disconnected"
  @did_timeout = true
  @callback.call(self) if @expect_timeout
end
print_error_if_exist() click to toggle source
watch_handler(process) click to toggle source
# File lib/capistrano_multiconfig_parallel/classes/child_process_status.rb, line 61
def watch_handler(process)
  @process ||= process
end