diff options
Diffstat (limited to 'app/models/ci/daily_build_group_report_result.rb')
-rw-r--r-- | app/models/ci/daily_build_group_report_result.rb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/app/models/ci/daily_build_group_report_result.rb b/app/models/ci/daily_build_group_report_result.rb new file mode 100644 index 00000000000..3506b27e974 --- /dev/null +++ b/app/models/ci/daily_build_group_report_result.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module Ci + class DailyBuildGroupReportResult < ApplicationRecord + extend Gitlab::Ci::Model + + PARAM_TYPES = %w[coverage].freeze + + belongs_to :last_pipeline, class_name: 'Ci::Pipeline', foreign_key: :last_pipeline_id + belongs_to :project + + def self.upsert_reports(data) + upsert_all(data, unique_by: :index_daily_build_group_report_results_unique_columns) if data.any? + end + + def self.recent_results(attrs, limit: nil) + where(attrs).order(date: :desc, group_name: :asc).limit(limit) + end + end +end |