Add pre-commit configuration

'pre-commit' tool [1] provides an extensible way to configure hooks
which can be run automatically before each commit. That way we can make
sure that code send to review is passing base static analysis checks
like e.g. bandit, flake8 or hacking.
For now this is optional to use and not integrated in e.g. tox.ini file
but we can integrate it there too as next step.
[1] https://pre-commit.com/
Change-Id: Ic3ec4d699b80d2e31fa8d52da71069b3f1104d9b
This commit is contained in:
Slawek Kaplonski
2024年05月02日 15:02:04 +02:00
parent 51ae343b0e
commit e62d94fc98

48
.pre-commit-config.yaml Normal file
View File

@@ -0,0 +1,48 @@
---
default_language_version:
# force all unspecified python hooks to run python3
python:python3
repos:
- repo:https://github.com/pre-commit/pre-commit-hooks
rev:v4.5.0
hooks:
- id:trailing-whitespace
- id:mixed-line-ending
args:['--fix','lf']
exclude:'.*\.(svg)$'
- id:check-byte-order-marker
- id:check-executables-have-shebangs
- id:check-merge-conflict
- id:debug-statements
- id:check-yaml
- repo:https://github.com/lucas-c/pre-commit-hooks
rev:v1.5.4
hooks:
- id:remove-tabs
exclude:'.*\.(svg)$'
- repo:https://opendev.org/openstack/hacking
rev:6.1.0
hooks:
- id:hacking
additional_dependencies:['neutron-lib']
exclude:'^(doc|releasenotes|tools)/.*$'
- repo:local
hooks:
- id:flake8
name:flake8
additional_dependencies:
- hacking>=6.1.0,<6.2.0
- neutron-lib
language:python
entry:flake8
files:'^.*\.py$'
exclude:'^(doc|releasenotes|tools)/.*$'
# todo(slaweq): enable pylint check once all issues in the current code will
# be solved
# - id: pylint
# name: pylint
# entry: .tox/pep8/bin/pylint
# files: ^networking-bgpvpn/
# language: system
# types: [python]
# args: ['--rcfile=.pylintrc', '--output-format=colorized']
Reference in New Issue
openstack/networking-bgpvpn
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.

The note is not visible to the blocked user.