1# frozen_string_literal: true
2
3module Ci
4  class BuildNeed < Ci::ApplicationRecord
5    include BulkInsertSafe
6
7    belongs_to :build, class_name: "Ci::Processable", foreign_key: :build_id, inverse_of: :needs
8
9    validates :build, presence: true
10    validates :name, presence: true, length: { maximum: 128 }
11    validates :optional, inclusion: { in: [true, false] }
12
13    scope :scoped_build, -> { where('ci_builds.id=ci_build_needs.build_id') }
14    scope :artifacts, -> { where(artifacts: true) }
15  end
16end
17