Configuration¶
For its configuration, autohooks uses the pyproject.toml file specified in PEP518. This file is adjusted when using the autohooks CLI but can also be changed manually.
Adding a [tool.autohooks]
section allows to specify the desired autohooks mode
and to set python modules to be run as autohooks plugins.
Mode Configuration¶
The mode can be set by adding a mode =
line to the pyproject.toml file.
Current possible options are "pythonpath"
, "pipenv"
and "poetry"
(see
autohooks mode). If the mode setting is missing, the pythonpath
mode is used.
Example pyproject.toml:
[tool.autohooks]
mode = "poetry"
[tool.autohooks]
mode = "pipenv"
[tool.autohooks]
mode = "pythonpath"
Calling autohooks activate
also allows for overriding the mode
defined in the pyproject.toml settings:
poetry run autohooks activate --mode poetry --force
pipenv run autohooks activate --mode pipenv --force
autohooks activate --mode pythonpath --force
Please keep in mind that autohooks will always issue a warning if the mode used in the git hooks is different from the configured mode in the pyproject.toml file.
The activation can always be verified by running autohooks check
.
Plugins Configuration¶
Afterwards, the pylint plugin can be configured to run as a pre-commit git hook
by adding the autohooks-plugins-pylint Python module name to the pre-commit
setting in the [tool.autohooks]
section in the pyproject.toml file.
Example pyproject.toml:
[tool.autohooks]
mode = "poetry"
pre-commit = ["autohooks.plugins.pylint"]
Alternatively the autohooks plugins
CLI can be used to manage the plugins.
poetry run autohooks plugins add autohooks.plugins.pylint
pipenv run autohooks plugins add autohooks.plugins.pylint
autohooks plugins add autohooks.plugins.pylint