enable pre-commit lints from main ironic repo
Brought over the same lints as used in the main ironic repo via
pre-commit and ruff. Updated tox.ini to use pre-commit the same way.
Change-Id: Ic2138427fd408a581cfbcb9c9da84074d1a2bfa8
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 0000000..62b24c9
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,66 @@
+---
+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
+ # NOTE(JayF): We shouldn't modify release notes after their
+ # associated release. Instead, ignore these minor lint issues.
+ - id: mixed-line-ending
+ args: ['--fix', 'lf']
+ exclude: |
+ (?x)(
+ .*.svg$|
+ )
+ - id: fix-byte-order-marker
+ - id: check-merge-conflict
+ - id: debug-statements
+ - id: check-json
+ files: .*\.json$
+ - id: check-yaml
+ files: .*\.(yaml|yml)$
+ exclude: releasenotes/.*$
+ - 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: []
+ exclude: '^(doc|releasenotes|tools)/.*$'
+ - repo: https://github.com/codespell-project/codespell
+ rev: v2.4.1
+ hooks:
+ - id: codespell
+ args: [--write-changes]
+ - repo: https://github.com/sphinx-contrib/sphinx-lint
+ rev: v1.0.0
+ hooks:
+ - id: sphinx-lint
+ args: [--enable=default-role]
+ files: ^doc/|releasenotes|api-ref
+ - repo: https://opendev.org/openstack/bashate
+ rev: 2.1.0
+ hooks:
+ - id: bashate
+ args: ["-iE006,E044", "-eE005,E042"]
+ name: bashate
+ description: This hook runs bashate for linting shell scripts
+ entry: bashate
+ language: python
+ types: [shell]
+ - repo: https://github.com/PyCQA/doc8
+ rev: v1.1.2
+ hooks:
+ - id: doc8
+ - repo: https://github.com/astral-sh/ruff-pre-commit
+ rev: v0.7.3
+ hooks:
+ - id: ruff
+ args: ['--fix', '--unsafe-fixes']