1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
# frozen_string_literal: true
module Ci
class PipelineMessage < Ci::ApplicationRecord
include Ci::Partitionable
MAX_CONTENT_LENGTH = 10_000
belongs_to :pipeline
validates :project_id, presence: true
validates :content, presence: true
partitionable scope: :pipeline
before_save :truncate_long_content
enum severity: { error: 0, warning: 1 }
private
def truncate_long_content
return if content.length <= MAX_CONTENT_LENGTH
self.content = content.truncate(MAX_CONTENT_LENGTH)
end
end
end
|