Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/danger
diff options
context:
space:
mode:
Diffstat (limited to 'danger')
-rw-r--r--danger/rules/changes_size/Dangerfile15
1 files changed, 15 insertions, 0 deletions
diff --git a/danger/rules/changes_size/Dangerfile b/danger/rules/changes_size/Dangerfile
new file mode 100644
index 000000000..841b373f7
--- /dev/null
+++ b/danger/rules/changes_size/Dangerfile
@@ -0,0 +1,15 @@
+# frozen_string_literal: true
+
+thresholds = helper.config.code_size_thresholds
+
+lines_changed = (git.added_files + git.modified_files).sum do |file|
+ next 0 if file.end_with?('.pb.go') || file.end_with?('_pb.rb')
+
+ git.info_for_file(file)[:insertions]
+end
+
+if lines_changed > thresholds[:high]
+ warn "This merge request is definitely too big (#{lines_changed} lines changed), please split it into multiple merge requests."
+elsif lines_changed > thresholds[:medium]
+ warn "This merge request is quite big (#{lines_changed} lines changed), please consider splitting it into multiple merge requests."
+end