forked from ansible/ansible-language-server
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.pre-commit-config.yaml
118 lines (116 loc) · 3.42 KB
/
.pre-commit-config.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
---
ci:
# format compatible with commitlint
autoupdate_commit_msg: "chore: pre-commit autoupdate"
autoupdate_schedule: monthly
autofix_commit_msg: |
chore: auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
skip:
# https://github.com/pre-commit-ci/issues/issues/55
- npm-ci
- codecov
- shellcheck # docker not available on pre-commit.ci
repos:
- repo: https://github.com/koalaman/shellcheck-precommit
rev: v0.8.0
hooks:
- id: shellcheck
# cspell:disable-next-line
entry: docker.io/koalaman/shellcheck:v0.8.0
args: ["--color=always"]
- repo: local
hooks:
- id: npm-ci
name: Run 'npm ci' to ensure deps and versions are correct
entry: >-
bash -c 'npm ci --ignore-scripts &&
npm version --allow-same-version --no-commit-hooks
--no-git-tag-version $(npm pkg get version | sed "s/\"//g")'
language: node
files: "(package|package-lock).json$"
pass_filenames: false
- id: git-dirty
name: Check if git reports dirty
entry: git diff --exit-code
language: system
pass_filenames: false
always_run: true
- id: codecov
name: Check codecov.yml
# https://superuser.com/a/1587813/3004
entry: >
bash -c '[ $(
curl --silent -o /dev/stderr -w "%{http_code}" -X POST
--data-binary @codecov.yml https://codecov.io/validate
) -eq 200 ]'
language: system
files: "codecov.yml"
pass_filenames: false
- repo: https://github.com/streetsidesoftware/cspell-cli
rev: v6.1.5
hooks:
- id: cspell
name: Spell check with cspell
- repo: https://github.com/pre-commit/pre-commit-hooks.git
rev: v4.3.0
hooks:
- id: end-of-file-fixer
exclude: >
(?x)^(
docs/settings.md
)$
- id: trailing-whitespace
exclude: >
(?x)^(
docs/settings.md
)$
- id: mixed-line-ending
- id: check-byte-order-marker
- id: check-executables-have-shebangs
- id: check-merge-conflict
- id: check-json
# https://github.com/pre-commit/pre-commit-hooks/issues/395
exclude: >
(?x)^(
.vscode/.*|
scripts/tsconfig.json|
scripts/tsconfig.esm.json|
scripts/tsconfig.umd.json|
tsconfig.json
)$
- id: debug-statements
language_version: python3
- repo: https://github.com/pre-commit/mirrors-prettier
# keep it before markdownlint and eslint
rev: "v2.7.1"
hooks:
- id: prettier
- repo: https://github.com/igorshubovych/markdownlint-cli
rev: v0.31.1
hooks:
- id: markdownlint
exclude: >
(?x)^
docs/changelog-fragments\.d/\d+\.\w+\.md|
docs/settings.md
$
- repo: https://github.com/pre-commit/mirrors-eslint
rev: v8.19.0
hooks:
- id: eslint
args:
- --fix
- --max-warnings
- "0"
additional_dependencies:
- "@typescript-eslint/eslint-plugin"
- "@typescript-eslint/parser"
- eslint-plugin-prettier
- eslint-config-prettier
- prettier
- typescript
- typescript-eslint
files: \.[jt]sx?$ # *.js, *.jsx, *.ts and *.tsx
types: [file]