class Vx::Worker::Job
Attributes
message[R]
output[R]
output_counter[R]
Public Class Methods
new(perform_job_message)
click to toggle source
# File lib/vx/worker/job.rb, line 12 def initialize(perform_job_message) @output_counter = 0 @message = perform_job_message @output = Common::OutputBuffer.new(&method(:publish_job_log_message)) end
Public Instance Methods
add_command_to_output(cmd)
click to toggle source
# File lib/vx/worker/job.rb, line 23 def add_command_to_output(cmd) add_to_output "$ #{cmd}\n" end
add_to_output(str)
click to toggle source
# File lib/vx/worker/job.rb, line 18 def add_to_output(str) output << str logger.debug str.strip if logger.level == 0 end
add_trace_to_output(log)
click to toggle source
# File lib/vx/worker/job.rb, line 27 def add_trace_to_output(log) add_to_output log.split(/\n/).map{|i| " ===> #{i}\n" }.join end
publish_job_log_message(str)
click to toggle source
# File lib/vx/worker/job.rb, line 35 def publish_job_log_message(str) @output_counter += 1 log = Message::JobLog.new( build_id: message.id, job_id: message.job_id, tm: output_counter, log: str ) JobLogsConsumer.publish log log end
release()
click to toggle source
# File lib/vx/worker/job.rb, line 31 def release output.close end