diff options
Diffstat (limited to 'app/models/merge_request.rb')
-rw-r--r-- | app/models/merge_request.rb | 57 |
1 files changed, 1 insertions, 56 deletions
diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index ce32b7cb05e..75e9bdaaa45 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -7,41 +7,6 @@ class MergeRequest < ActiveRecord::Base include IgnorableColumn include CreatedAtFilterable - SAFE_HOOK_ATTRIBUTES = %i[ - assignee_id - author_id - created_at - deleted_at - description - head_pipeline_id - id - iid - last_edited_at - last_edited_by_id - merge_commit_sha - merge_error - merge_params - merge_status - merge_user_id - merge_when_pipeline_succeeds - milestone_id - ref_fetched - source_branch - source_project_id - state - target_branch - target_project_id - time_estimate - title - updated_at - updated_by_id - ].freeze - - SAFE_HOOK_RELATIONS = %i[ - assignee - labels - ].freeze - ignore_column :locked_at belongs_to :target_project, class_name: "Project" @@ -214,28 +179,8 @@ class MergeRequest < ActiveRecord::Base work_in_progress?(title) ? title : "WIP: #{title}" end - def self.safe_hook_attributes - SAFE_HOOK_ATTRIBUTES - end - - def self.safe_hook_relations - SAFE_HOOK_RELATIONS - end - def hook_attrs - attrs = { - url: Gitlab::UrlBuilder.build(self), - source: source_project.try(:hook_attrs), - target: target_project.hook_attrs, - last_commit: diff_head_commit&.hook_attrs, - work_in_progress: work_in_progress?, - total_time_spent: total_time_spent, - human_total_time_spent: human_total_time_spent, - human_time_estimate: human_time_estimate - } - - attributes.with_indifferent_access.slice(*self.class.safe_hook_attributes) - .merge!(attrs) + Gitlab::HookData::MergeRequestBuilder.new(self).build end # Returns a Hash of attributes to be used for Twitter card metadata |