summaryrefslogtreecommitdiff
path: root/danger/ci_templates/Dangerfile
blob: 34b4bbff7a5e10c3a17e7d2a0b5c1274bec8e33a (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
# frozen_string_literal: true

gitlab_danger = GitlabDanger.new(helper.gitlab_helper)

TEMPLATE_MESSAGE = <<~MSG
This merge request requires a CI/CD Template review. To make sure these
changes are reviewed, take the following steps:

1. Ensure the merge request has the ~"ci::templates" label.
   If the merge request modifies CI/CD Template files, Danger will do this for you.
1. Prepare your MR for a CI/CD Template review according to the
   [template development guide](https://docs.gitlab.com/ee/development/cicd/templates.html).
1. Assign and `@` mention the CI/CD Template reviewer suggested by Reviewer Roulette.
MSG

TEMPLATE_FILES_MESSAGE = <<~MSG
The following files require a review from the CI/CD Templates maintainers:
MSG

return unless gitlab_danger.ci?

template_paths_to_review = helper.changes_by_category[:ci_template]

if gitlab.mr_labels.include?('ci::templates') || template_paths_to_review.any?
  message 'This merge request adds or changes files that require a ' \
    'review from the CI/CD Templates maintainers.'

  markdown(TEMPLATE_MESSAGE)
  markdown(TEMPLATE_FILES_MESSAGE + helper.markdown_list(template_paths_to_review)) if template_paths_to_review.any?
end