summaryrefslogtreecommitdiff
path: root/lib/gitlab/danger/merge_request_linter.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gitlab/danger/merge_request_linter.rb')
-rw-r--r--lib/gitlab/danger/merge_request_linter.rb30
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/gitlab/danger/merge_request_linter.rb b/lib/gitlab/danger/merge_request_linter.rb
new file mode 100644
index 00000000000..d401d332aa7
--- /dev/null
+++ b/lib/gitlab/danger/merge_request_linter.rb
@@ -0,0 +1,30 @@
+# frozen_string_literal: true
+
+require_relative 'base_linter'
+
+module Gitlab
+ module Danger
+ class MergeRequestLinter < BaseLinter
+ alias_method :lint, :lint_subject
+
+ def self.subject_description
+ 'merge request title'
+ end
+
+ def self.mr_run_options_regex
+ [
+ 'RUN AS-IF-FOSS',
+ 'UPDATE CACHE',
+ 'RUN ALL RSPEC',
+ 'SKIP RSPEC FAIL-FAST'
+ ].join('|')
+ end
+
+ private
+
+ def subject
+ super.gsub(/\[?(#{self.class.mr_run_options_regex})\]?/, '').strip
+ end
+ end
+ end
+end