61 lines
1.7 KiB
YAML
61 lines
1.7 KiB
YAML
default_install_hook_types:
|
|
- pre-commit
|
|
- commit-msg
|
|
repos:
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
rev: v4.6.0
|
|
hooks:
|
|
# list of supported hooks: https://pre-commit.com/hooks.html
|
|
- id: check-yaml
|
|
args: ["--unsafe"]
|
|
- id: debug-statements
|
|
- id: end-of-file-fixer
|
|
- id: mixed-line-ending
|
|
args: ["--fix=lf"]
|
|
- id: trailing-whitespace
|
|
args: ["--markdown-linebreak-ext=md"]
|
|
|
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
rev: v0.14.0
|
|
hooks:
|
|
- id: ruff-check
|
|
args: [--output-format, github, --fix]
|
|
- id: ruff-format
|
|
|
|
- repo: https://github.com/crate-ci/typos
|
|
rev: v1.35.5
|
|
hooks:
|
|
- id: typos
|
|
# only for staged files
|
|
|
|
- repo: https://github.com/rhysd/actionlint
|
|
rev: v1.7.7
|
|
hooks:
|
|
- id: actionlint
|
|
files: ^\.github/workflows/.*\.ya?ml$
|
|
|
|
|
|
- repo: local
|
|
hooks:
|
|
- id: signoff-commit
|
|
name: Sign-off Commit
|
|
entry: bash
|
|
args:
|
|
- -c
|
|
- |
|
|
if ! grep -q "^Signed-off-by: $(git config user.name) <$(git config user.email)>" "$(git rev-parse --git-path COMMIT_EDITMSG)"; then
|
|
printf "\nSigned-off-by: $(git config user.name) <$(git config user.email)>\n" >> "$(git rev-parse --git-path COMMIT_EDITMSG)"
|
|
fi
|
|
language: system
|
|
verbose: true
|
|
stages: [commit-msg]
|
|
|
|
# Keep `suggestion` last
|
|
- id: suggestion
|
|
name: Suggestion
|
|
entry: bash -c 'echo "To bypass all the pre-commit hooks, add --no-verify to git commit. To skip a specific hook, prefix the commit command with SKIP=<hook-id>."'
|
|
language: system
|
|
verbose: true
|
|
pass_filenames: false
|
|
# Insert new entries above the `suggestion` entry
|