summaryrefslogtreecommitdiff
path: root/app/models/ci/application_setting.rb
blob: 1307fa0b472def2dd758f3c15ee50c47dd43a473 (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
25
26
27
28
29
30
31
32
33
# == Schema Information
#
# Table name: ci_application_settings
#
#  id                :integer          not null, primary key
#  all_broken_builds :boolean
#  add_pusher        :boolean
#  created_at        :datetime
#  updated_at        :datetime
#

module Ci
  class ApplicationSetting < ActiveRecord::Base
    extend Ci::Model

    after_commit do
      Rails.cache.write('ci_application_setting.last', self)
    end

    def self.current
      Rails.cache.fetch('ci_application_setting.last') do
        Ci::ApplicationSetting.last
      end
    end

    def self.create_from_defaults
      create(
        all_broken_builds: Settings.gitlab_ci['all_broken_builds'],
        add_pusher: Settings.gitlab_ci['add_pusher'],
      )
    end
  end
end