Add pre-commit
This is helpful to automate code style checks at runtime. Some of these are currently disabled since fixing them requires some work. Those fixes will come separately. Signed-off-by: Stephen Finucane <stephenfin@redhat.com> Change-Id: I0eb7bdfe527722b012981a1d6bd15580b6adfe6e
This commit is contained in:
parent
86d3a50926
commit
f0a6443883
53
.pre-commit-config.yaml
Normal file
53
.pre-commit-config.yaml
Normal file
@ -0,0 +1,53 @@
|
||||
---
|
||||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v4.6.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
|
||||
files: .*\.(yaml|yml)$
|
||||
exclude: '^zuul.d/.*$'
|
||||
# - repo: https://github.com/astral-sh/ruff-pre-commit
|
||||
# rev: v0.5.5
|
||||
# hooks:
|
||||
# - id: ruff
|
||||
# args: ['--fix', '--unsafe-fixes']
|
||||
# - id: ruff-format
|
||||
- repo: https://github.com/PyCQA/bandit
|
||||
rev: 1.7.9
|
||||
hooks:
|
||||
- id: bandit
|
||||
# We ignore the following:
|
||||
# B110: except: pass
|
||||
# B410: importing etree
|
||||
args: ['-x', 'tests', '-s', 'B110,B410']
|
||||
- repo: https://opendev.org/openstack/hacking
|
||||
rev: 6.1.0
|
||||
hooks:
|
||||
- id: hacking
|
||||
additional_dependencies:
|
||||
- flake8-import-order~=0.18.2
|
||||
exclude: '^(doc|releasenotes|tools)/.*$'
|
||||
# - repo: https://github.com/pre-commit/mirrors-mypy
|
||||
# rev: v1.10.1
|
||||
# hooks:
|
||||
# - id: mypy
|
||||
# additional_dependencies:
|
||||
# - types-decorator
|
||||
# - types-PyYAML
|
||||
# - types-requests
|
||||
# - types-simplejson
|
||||
# # keep this in-sync with '[mypy] exclude' in 'setup.cfg'
|
||||
# exclude: |
|
||||
# (?x)(
|
||||
# doc/.*
|
||||
# | examples/.*
|
||||
# | releasenotes/.*
|
||||
# )
|
21
tox.ini
21
tox.ini
@ -17,17 +17,24 @@ commands =
|
||||
stestr run {posargs}
|
||||
|
||||
[testenv:pep8]
|
||||
description =
|
||||
Run style checks.
|
||||
skip_install = true
|
||||
deps =
|
||||
pre-commit
|
||||
commands =
|
||||
flake8
|
||||
# Run security linter
|
||||
# B110: except: pass
|
||||
# B410: importing etree
|
||||
bandit -r keystoneauth1 -x tests -s B110,B410
|
||||
pre-commit run --all-files --show-diff-on-failure
|
||||
|
||||
[testenv:bandit]
|
||||
# NOTE(browne): This is required for the integration test job of the bandit
|
||||
# project. Please do not remove.
|
||||
commands = bandit -r keystoneauth1 -x tests -s B110,B410
|
||||
[testenv:bandit]
|
||||
description =
|
||||
Run bandit security checks.
|
||||
skip_install = true
|
||||
deps =
|
||||
pre-commit
|
||||
commands =
|
||||
pre-commit run --all-files --show-diff-on-failure bandit
|
||||
|
||||
[testenv:venv]
|
||||
commands = {posargs}
|
||||
|
Loading…
Reference in New Issue
Block a user