mirror of
https://github.com/nodejs/node.git
synced 2024-11-21 10:59:27 +00:00
build: add YAML linting
PR-URL: https://github.com/nodejs/node/pull/40007 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com>
This commit is contained in:
parent
77c81cbc4a
commit
2b131a50e0
5
.gitignore
vendored
5
.gitignore
vendored
@ -9,9 +9,11 @@
|
||||
!deps/**/.*
|
||||
!test/fixtures/**/.*
|
||||
!.clang-format
|
||||
!.cpplint
|
||||
!.editorconfig
|
||||
!.eslintignore
|
||||
!.eslintrc.js
|
||||
!.eslintrc.yaml
|
||||
!.flake8
|
||||
!.gitattributes
|
||||
!.github
|
||||
@ -19,8 +21,7 @@
|
||||
!.gitkeep
|
||||
!.mailmap
|
||||
!.nycrc
|
||||
!.eslintrc.yaml
|
||||
!.cpplint
|
||||
!.yamllint.yaml
|
||||
|
||||
# === Rules for root dir ===
|
||||
/core
|
||||
|
8
.yamllint.yaml
Normal file
8
.yamllint.yaml
Normal file
@ -0,0 +1,8 @@
|
||||
extends: relaxed
|
||||
|
||||
rules:
|
||||
line-length: disable
|
||||
|
||||
ignore: |
|
||||
/deps/
|
||||
node_modules/
|
25
Makefile
25
Makefile
@ -1389,13 +1389,13 @@ cpplint: lint-cpp
|
||||
|
||||
.PHONY: lint-py-build
|
||||
# python -m pip install flake8
|
||||
# Try with '--system' is to overcome systems that blindly set '--user'
|
||||
# Try with '--system' if it fails without; the system may have set '--user'
|
||||
lint-py-build:
|
||||
$(info Pip installing flake8 linter on $(shell $(PYTHON) --version)...)
|
||||
$(PYTHON) -m pip install --upgrade -t tools/pip/site-packages flake8 || \
|
||||
$(PYTHON) -m pip install --upgrade --system -t tools/pip/site-packages flake8
|
||||
|
||||
ifneq ("","$(wildcard tools/pip/site-packages)")
|
||||
ifneq ("","$(wildcard tools/pip/site-packages/flake8)")
|
||||
.PHONY: lint-py
|
||||
# Lints the Python code with flake8.
|
||||
# Flag the build if there are Python syntax errors or undefined names
|
||||
@ -1407,6 +1407,24 @@ lint-py:
|
||||
$(warning Run 'make lint-py-build')
|
||||
endif
|
||||
|
||||
.PHONY: lint-yaml-build
|
||||
# python -m pip install yamllint
|
||||
# Try with '--system' if it fails without; the system may have set '--user'
|
||||
lint-yaml-build:
|
||||
$(info Pip installing yamllint on $(shell $(PYTHON) --version)...)
|
||||
$(PYTHON) -m pip install --upgrade -t tools/pip/site-packages yamllint || \
|
||||
$(PYTHON) -m pip install --upgrade --system -t tools/pip/site-packages yamllint
|
||||
|
||||
.PHONY: lint-yaml
|
||||
# Lints the YAML files with yamllint.
|
||||
lint-yaml:
|
||||
@if [ -d "tools/pip/site-packages/yamllint" ]; then \
|
||||
PYTHONPATH=tools/pip $(PYTHON) -m yamllint .; \
|
||||
else \
|
||||
echo 'YAML linting with yamllint is not available'; \
|
||||
echo "Run 'make lint-yaml-build'"; \
|
||||
fi
|
||||
|
||||
.PHONY: lint
|
||||
.PHONY: lint-ci
|
||||
ifneq ("","$(wildcard tools/node_modules/eslint/)")
|
||||
@ -1416,11 +1434,12 @@ lint: ## Run JS, C++, MD and doc linters.
|
||||
$(MAKE) lint-cpp || EXIT_STATUS=$$? ; \
|
||||
$(MAKE) lint-addon-docs || EXIT_STATUS=$$? ; \
|
||||
$(MAKE) lint-md || EXIT_STATUS=$$? ; \
|
||||
$(MAKE) lint-yaml || EXIT_STATUS=$$? ; \
|
||||
exit $$EXIT_STATUS
|
||||
CONFLICT_RE=^>>>>>>> [[:xdigit:]]+|^<<<<<<< [[:alpha:]]+
|
||||
|
||||
# Related CI job: node-test-linter
|
||||
lint-ci: lint-js-ci lint-cpp lint-py lint-md lint-addon-docs
|
||||
lint-ci: lint-js-ci lint-cpp lint-py lint-md lint-addon-docs lint-yaml-build lint-yaml
|
||||
@if ! ( grep -IEqrs "$(CONFLICT_RE)" --exclude="error-message.js" benchmark deps doc lib src test tools ) \
|
||||
&& ! ( $(FIND) . -maxdepth 1 -type f | xargs grep -IEqs "$(CONFLICT_RE)" ); then \
|
||||
exit 0 ; \
|
||||
|
Loading…
Reference in New Issue
Block a user