[tox]
minversion = 1.6.0
-envlist = docs,pre-commit
+envlist = docs,pre-commit,gitlint
# TODO: Include docs when it starts performing strict checks.
skipsdist = true
commands =
sphinx-build -W -n -b html -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
-[testenv:pre-commit]
+[testenv:pre-commit-install]
basepython = python3
deps = pre-commit
commands =
pre-commit install
- pre-commit run --all-files
+ pre-commit install --hook-type commit-msg
+
+[testenv:pre-commit-uninstall]
+basepython = python3
+deps = pre-commit
+commands =
+ pre-commit uninstall
+ pre-commit uninstall --hook-type commit-msg
+
+[testenv:pre-commit-autoupdate]
+basepython = python3
+deps = pre-commit
+commands =
+ pre-commit autoupdate
+
+[testenv:pre-commit]
+basepython = python3
+deps = pre-commit
+passenv = HOME
+commands =
+ pre-commit run --all-files --show-diff-on-failure
+# FIXME: run gitlint with pre-commit once the following installation issue is resolved
+# in the Jenkins environment: https://github.com/jorisroovers/gitlint/issues/535
+# pre-commit run gitlint-ci --hook-stage manual
+
+[testenv:gitlint]
+basepython = python3
+deps = gitlint
+commands =
+ gitlint