diff options
author | Toon Claes <toon@gitlab.com> | 2022-05-04 18:10:24 +0300 |
---|---|---|
committer | Toon Claes <toon@gitlab.com> | 2022-05-04 18:27:04 +0300 |
commit | 98432633cf3a5c78e89e2f104b886ef8b10a9ff6 (patch) | |
tree | f281d255f77743cdb9c8a58df4c2c40d973b6089 | |
parent | 86aa7ee82a5dd241fd7d4b33435da0a7ecad12b0 (diff) |
Danger: Exclude generated protobuf files in sizetoon-danger-exclude-gen-proto
This change adds a lightly adjusted version of the changes_size rule.
This version excludes the generated protobuf files *.pb.go and *_pb.rb.
-rw-r--r-- | Dangerfile | 3 | ||||
-rw-r--r-- | danger/rules/changes_size/Dangerfile | 15 |
2 files changed, 17 insertions, 1 deletions
diff --git a/Dangerfile b/Dangerfile index 616556b1a..39c6730e2 100644 --- a/Dangerfile +++ b/Dangerfile @@ -14,5 +14,6 @@ Gitlab::Dangerfiles.for_project(self) do |gitlab_dangerfiles| danger.import_dangerfile(path: "danger/rules/#{rule}") end - gitlab_dangerfiles.import_defaults + gitlab_dangerfiles.import_plugins + gitlab_dangerfiles.import_dangerfiles(except: %w[changes_size]) end 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 |