gitlab-ce/app/models/ci/pipeline_message.rb

29 lines
556 B
Ruby

# 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