this patch introduces an oslo.policy-based API access policy
enforcement engine to ironic-inspector.
As part of implementation, a proper oslo.context-based request
context is also generated and assigned to each request.
Short overview of changes:
- added custom RequestContext class
- extends oslo.context to handle of "is_public_api" flag
(False by default)
- added context to request in each API route
- '/continue' api sets the "is_public_api" flag to True
- added documented definitions for API access policies and their
- added enforcement of these policies on API requests
- added oslo.policy-specific entry points to setup.cfg
- added autogenerated policy sample file with defaults
- added documentation with autogenerated policies
This patch moves ironic-inspector to use 'stestr' test runner
via 'ostestr' wrapper.
- unit tests are now being run in parallel by default
- 'py*' jobs are not running code coverage measurements,
which is left for 'cover' job only
- 'cover' job now also produces html reports consumable by upstream CI,
and fails under 90% of code coverage
- users can leverage all the ostestr/stestr features
This directory keeps appearing, not sure why, probably when I rebuild
the tox environment. From the README file in this directory:
This directory contains eggs that were downloaded by setuptools to build,
test, and run plug-ins.
This directory caches those eggs to prevent repeated downloads.
However, it is safe to delete this directory.