lib/evrone/ci/worker/job.rb in evrone-ci-worker-0.2.0.pre4 vs lib/evrone/ci/worker/job.rb in evrone-ci-worker-0.2.0.pre5

- old
+ new

@@ -10,35 +10,40 @@ attr_reader :output, :message, :output_counter def initialize(perform_job_message) @output_counter = 0 - @output = "" @message = perform_job_message + @output = Common::OutputBuffer.new(&method(:publish_job_log_message)) end def add_to_output(str) output << str logger.debug str.strip if logger.level == 0 - JobLogsConsumer.publish create_job_log_message(str) end def add_command_to_output(cmd) add_to_output "$ #{cmd}\n" end def add_trace_to_output(log) add_to_output log.split(/\n/).map{|i| " ===> #{i}\n" }.join end - def create_job_log_message(data) + def release + output.close + end + + def publish_job_log_message(str) @output_counter += 1 - Message::JobLog.new( + log = Message::JobLog.new( build_id: message.id, job_id: message.job_id, - tm: @output_counter, - log: data + tm: output_counter, + log: str ) + JobLogsConsumer.publish log + log end end end end