Add pre-commit

As a starting point for the code renovation it makes sense to add
pre-commit with the same configuration as we spread across the other
services. For now comment out hooks that fail and address them one by
one.
At the end of the series we would have pre-commit executing all the
necessary checks (linting, flake, black, mypy, etc) and it will be
invoked directly in the `tox -e pep8` to unify all the processing. We
are going to re-format source code with `black` adding revisions to
git blame ignore to reduce amount of noise. This will help us to have
reasonable formatting of the code with possibility to just auto-format
the code.

Change-Id: Ia00f4209cde8f64828dc2d827d49bfc4bd6c1efa
This commit is contained in:
Artem Goncharov 2024-07-11 17:03:28 +02:00
parent 1b78b57ec5
commit 430bebe376
4 changed files with 49 additions and 3 deletions

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

@ -0,0 +1,46 @@
---
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.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/.*$'
# TODO(gtema): Uncomment once content is fixed
# - repo: https://github.com/PyCQA/doc8
# rev: v1.1.1
# hooks:
# - id: doc8
# - repo: https://github.com/asottile/pyupgrade
# rev: v3.15.2
# hooks:
# - id: pyupgrade
# args: ['--py38-plus']
# TODO(gtema): Uncomment it once all files are blackified
# - repo: https://github.com/psf/black
# rev: 24.4.0
# hooks:
# - id: black
# args: ['-S', '-l', '79']
# - 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.9.0
# hooks:
# - id: mypy

View File

@ -4,7 +4,7 @@ Using external authentication with Keystone
When Keystone is executed in a web server like Apache HTTPD,
it is possible to have the web server also handle authentication.
This enables support for additional methods of authentication that
This enables support for additional methods of authentication that
are not provided by the identity store backend and
the authentication plugins that Keystone supports.

View File

@ -23,7 +23,7 @@ Grant by the following steps in this guide. In this example,
.. _application credentials: https://docs.openstack.org/api-ref/identity/v3/index.html#application-credentials
.. _`Identity API reference`: https://docs.openstack.org/api-ref/identity/v3/index.html#os-oauth2-api
.. warning::
.. warning::
It is strongly recommended that HTTPS be enabled in Keystone when using
OAuth2.0 Client Credentials. See :doc:`./configure-https` for details.

View File

@ -16,7 +16,7 @@ deprecations:
[`bug 1794376 <https://bugs.launchpad.net/keystone/+bug/1794376>`_]
The following domain policy check strings have been deprecated in
favor of more clear and concise defaults:
* ``identity:get_domain``
* ``identity:list_domains``
* ``identity:create_domain``