aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.pre-commit-config.yaml14
-rw-r--r--test-requirements.txt1
-rw-r--r--tox.ini7
-rw-r--r--upper-constraints.txt1
4 files changed, 22 insertions, 1 deletions
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 00000000..a2e0d4c6
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,14 @@
+---
+repos:
+ - repo: https://github.com/pre-commit/pre-commit-hooks
+ rev: v4.4.0
+ hooks:
+ - id: trailing-whitespace
+ exclude: '.patch$'
+ # trailing blanks shall not preferably be fixed in patch files
+ - repo: https://github.com/Lucas-C/pre-commit-hooks
+ rev: v1.4.2
+ hooks:
+ - id: remove-tabs
+ stages: [commit]
+ exclude: '^(.git/|docs/make.bat|docs/Makefile|)'
diff --git a/test-requirements.txt b/test-requirements.txt
index a5399586..4be1d670 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -16,3 +16,4 @@ bashate # Apache-2.0
ansible-lint[core]
bandit
munch # MIT
+pre-commit
diff --git a/tox.ini b/tox.ini
index 7ae0cdc2..05975d64 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
[tox]
-envlist = docs,pep8,pylint,yamllint,bashate,py310,cover,perm
+envlist = docs,pep8,pylint,yamllint,bashate,py310,cover,perm,pre-commit
skipsdist = True
[testenv]
@@ -74,3 +74,8 @@ commands =
-exec ls -l \{\} + | grep '.' && exit 1 || exit 0"
bash -c "\
find {[testenv:perm]path} -exec file \{\} + | grep CRLF && exit 1 || exit 0"
+
+[testenv:pre-commit]
+basepython = python3.10
+commands =
+ pre-commit run --all-files --show-diff-on-failure
diff --git a/upper-constraints.txt b/upper-constraints.txt
index 613a9718..59d9f4d5 100644
--- a/upper-constraints.txt
+++ b/upper-constraints.txt
@@ -8,3 +8,4 @@ ansible-lint===5.2.1
pytest===7.1.2
pytest-cov===3.0.0
pytest-html===3.1.1
+pre-commit===3.1.1