summaryrefslogtreecommitdiff
path: root/app/models/project_auto_devops.rb
blob: 519bd2fe2ac7a3dec5711ed226fdccc0cdd8d3f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class ProjectAutoDevops < ActiveRecord::Base
  belongs_to :project

  scope :enabled, -> { where(enabled: true) }
  scope :disabled, -> { where(enabled: false) }

  validates :domain, allow_blank: true, hostname: { allow_numeric_hostname: true }

  def instance_domain
    Gitlab::CurrentSettings.auto_devops_domain
  end

  def has_domain?
    domain.present? || instance_domain.present?
  end

  def predefined_variables
    Gitlab::Ci::Variables::Collection.new.tap do |variables|
      variables.append(key: 'AUTO_DEVOPS_DOMAIN',
                       value: domain.presence || instance_domain,
                       public: true) if has_domain?
    end
  end
end