Files
natelandau_ansible-homelab-…/.pre-commit-config.yaml
2024-03-15 21:25:01 -04:00

88 lines
2.5 KiB
YAML

---
repos:
- repo: "https://github.com/commitizen-tools/commitizen"
rev: v3.18.4
hooks:
- id: "commitizen"
- repo: "https://github.com/pre-commit/pre-commit-hooks"
rev: v4.5.0
hooks:
- id: check-added-large-files
- id: check-ast
- id: check-builtin-literals
- id: check-case-conflict
- id: check-docstring-first
- id: check-json
exclude: ^files/certs
- id: check-merge-conflict
- id: check-shebang-scripts-are-executable
- id: check-executables-have-shebangs
- id: check-merge-conflict
- id: check-symlinks
- id: check-toml
- id: check-vcs-permalinks
- id: check-xml
- id: check-yaml
- id: detect-private-key
- id: mixed-line-ending
- id: trailing-whitespace
types: [python]
args: [--markdown-linebreak-ext=md]
- repo: "https://github.com/adrienverge/yamllint.git"
rev: v1.35.1
hooks:
- id: yamllint
files: \.(yaml|yml)$
exclude: |
(?x)^(
\.cz|
vault|
./galaxy-roles
)\.(yaml|yml)$
entry: yamllint --strict --config-file .yamllint.yml
- repo: "https://github.com/crate-ci/typos"
rev: v1.19.0
hooks:
- id: typos
- repo: "https://github.com/ansible/ansible-lint"
rev: v24.2.1
hooks:
- id: ansible-lint
additional_dependencies:
- ansible
args:
- --config-file
- .ansible-lint.yml
- repo: local
hooks:
- id: vault-pre-commit
name: check unencrypted vault
entry: scripts/ansible-vault-precommit.sh
language: system
# This calls a custom script. Remove if you don't need it.
- id: stopwords
name: stopwords
entry: git-stopwords
# args: ["-v"]
language: system
pass_filenames: true
types: [text]
- id: "lint-shellscript-templates"
name: lint shellscript templates
language: system
files: \.sh\.j2$
entry: shellcheck -x --exclude=1009,1054,1056,1072,1073,1083,2001,2148
- id: "ansible-encryption-check"
name: Ansible Encryption Check
language: system
entry: scripts/ansible-vault-precommit.sh
files: vault\.ya?ml$