summaryrefslogtreecommitdiff
path: root/danger
diff options
context:
space:
mode:
authorMike Lewis <mlewis@gitlab.com>2018-09-07 21:18:36 +0000
committerMike Lewis <mlewis@gitlab.com>2018-09-07 21:18:36 +0000
commit79322c3c93177a722aba8e1bcb6e8684b074e162 (patch)
tree4f4b7582fdc0ede5ceb04c4e9954ee7f19d98d87 /danger
parent15c87796ecac4c4148148eaf927056c7adc08623 (diff)
parentb1b55371c611b66c8bfe482dc0544fce39a0bf9c (diff)
downloadgitlab-ce-79322c3c93177a722aba8e1bcb6e8684b074e162.tar.gz
Merge branch 'docs/dangerfile' into 'master'
Add Documentation Dangerfile See merge request gitlab-org/gitlab-ce!21395
Diffstat (limited to 'danger')
-rw-r--r--danger/documentation/Dangerfile37
1 files changed, 37 insertions, 0 deletions
diff --git a/danger/documentation/Dangerfile b/danger/documentation/Dangerfile
new file mode 100644
index 00000000000..d65bec123a9
--- /dev/null
+++ b/danger/documentation/Dangerfile
@@ -0,0 +1,37 @@
+# frozen_string_literal: true
+
+# All the files/directories that should be reviewed by the Docs team.
+DOCS_FILES = [
+ 'doc/'
+].freeze
+
+def docs_paths_requiring_review(files)
+ files.select do |file|
+ DOCS_FILES.any? { |pattern| file.start_with?(pattern) }
+ end
+end
+
+all_files = git.added_files + git.modified_files
+
+docs_paths_to_review = docs_paths_requiring_review(all_files)
+
+unless docs_paths_to_review.empty?
+ message 'This merge request adds or changes files that require a ' \
+ 'review from the docs team.'
+
+ markdown(<<~MARKDOWN)
+## Docs Review
+
+The following files require a review from the Documentation team:
+
+* #{docs_paths_to_review.map { |path| "`#{path}`" }.join("\n* ")}
+
+To make sure these changes are reviewed, mention `@gl-docsteam` in a separate
+comment, and explain what needs to be reviewed by the team. Please don't mention
+the team until your changes are ready for review.
+ MARKDOWN
+
+ unless gitlab.mr_labels.include?('Documentation')
+ warn 'This merge request is missing the ~Documentation label.'
+ end
+end