Danger check for ignored eslint rules
We disabled a lot of eslint rules on a per-file basis. This checks touched files for those and reminds you to re-enable the rules and fix them.
This commit is contained in:
parent
4df24e5f04
commit
685d579472
3 changed files with 31 additions and 0 deletions
|
@ -461,6 +461,7 @@ danger-review:
|
|||
- $CI_COMMIT_REF_NAME =~ /.*-stable(-ee)?-prepare-.*/
|
||||
script:
|
||||
- git version
|
||||
- node --version
|
||||
- yarn install --frozen-lockfile --cache-folder .yarn-cache
|
||||
- danger --fail-on-errors=true
|
||||
|
||||
|
|
|
@ -8,3 +8,4 @@ danger.import_dangerfile(path: 'danger/documentation')
|
|||
danger.import_dangerfile(path: 'danger/frozen_string')
|
||||
danger.import_dangerfile(path: 'danger/commit_messages')
|
||||
danger.import_dangerfile(path: 'danger/prettier')
|
||||
danger.import_dangerfile(path: 'danger/eslint')
|
||||
|
|
29
danger/eslint/Dangerfile
Normal file
29
danger/eslint/Dangerfile
Normal file
|
@ -0,0 +1,29 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
def get_eslint_files(files)
|
||||
files.select do |file|
|
||||
file.end_with?('.js', '.vue') &&
|
||||
File.read(file).include?('/* eslint-disable')
|
||||
end
|
||||
end
|
||||
|
||||
eslint_candidates = get_eslint_files(git.added_files + git.modified_files)
|
||||
|
||||
return if eslint_candidates.empty?
|
||||
|
||||
warn 'This merge request changed files with disabled eslint rules. Please consider fixing them.'
|
||||
|
||||
markdown(<<~MARKDOWN)
|
||||
## Disabled eslint rules
|
||||
|
||||
The following files have disabled `eslint` rules. Please consider fixing them:
|
||||
|
||||
* #{eslint_candidates.map { |path| "`#{path}`" }.join("\n* ")}
|
||||
|
||||
Run the following command for more details
|
||||
|
||||
```
|
||||
node_modules/.bin/eslint --report-unused-disable-directives --no-inline-config \\
|
||||
#{eslint_candidates.map { |path| " '#{path}'" }.join(" \\\n")}
|
||||
```
|
||||
MARKDOWN
|
Loading…
Reference in a new issue