Class: Gitlab::MergeRequests::MessageGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab/merge_requests/message_generator.rb

Instance Method Summary collapse

Constructor Details

#initialize(merge_request:, current_user:) ⇒ MessageGenerator

Returns a new instance of MessageGenerator.



5
6
7
8
# File 'lib/gitlab/merge_requests/message_generator.rb', line 5

def initialize(merge_request:, current_user:)
  @merge_request = merge_request
  @current_user = @merge_request.metrics&.merged_by || @merge_request.merge_user || current_user
end

Instance Method Details

#merge_commit_messageObject



10
11
12
13
14
# File 'lib/gitlab/merge_requests/message_generator.rb', line 10

def merge_commit_message
  return unless @merge_request.target_project.merge_commit_template.present?

  replace_placeholders(@merge_request.target_project.merge_commit_template, allowed_placeholders: PLACEHOLDERS)
end

#new_mr_descriptionObject



26
27
28
29
30
31
32
33
34
# File 'lib/gitlab/merge_requests/message_generator.rb', line 26

def new_mr_description
  return unless @merge_request.description.present?

  replace_placeholders(
    @merge_request.description,
    allowed_placeholders: ALLOWED_NEW_MR_PLACEHOLDERS,
    keep_carriage_return: true
  )
end

#squash_commit_messageObject



16
17
18
19
20
21
22
23
24
# File 'lib/gitlab/merge_requests/message_generator.rb', line 16

def squash_commit_message
  return unless @merge_request.target_project.squash_commit_template.present?

  replace_placeholders(
    @merge_request.target_project.squash_commit_template,
    allowed_placeholders: PLACEHOLDERS,
    squash: true
  )
end