Eventlet may be installed, but not used for example projects
like octavia. Improve autodetection mechanism by trying to import
module and check if it is actually patched.
Closes-Bug: #2039346
Change-Id: I860abe953ce945bb5152c77a7daeb6aa1003512b
Add file to the reno documentation build to show release notes for
stable/2024.1.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2024.1.
Sem-Ver: feature
Change-Id: I4f35c60e6b4605bc09eadf51c97ca118221afc21
We also remove these unnecessary linter dependencies from
test-requirements.txt.
Co-Authored-By: Stephen Finucane <sfinucan@redhat.com>
Change-Id: Ie797e48fb9d04649fa70e3d5c2f4161d123ed8f5
As per the current release tested runtime, we test
python version from 3.8 to 3.11 so updating the
same in python classifier in setup.cfg
Change-Id: Ie93ba0a3b817944b9ca801590c02d3900c23cde6
Add file to the reno documentation build to show release notes for
stable/2023.2.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.2.
Sem-Ver: feature
Change-Id: I8edfee12910034cbff318131654ffe00de8396c9
Since python 3.12, logging is raising RuntimeError when content is
invalid [1][2]. Note this is also backported to 3.11 branch.
This is making oslo_log to not raise LogConfigError but throw the
underlying RuntimeError.
[1] 152227b569
[2] 12f1581b0c
Change-Id: I7631394bee7281f6a393ab4ba7604f871626997a
Within 2023.2 python version 3.9 and 3.10 are the
supported python runtimes [1].
[1] https: //review.opendev.org/c/openstack/governance/+/872232
Change-Id: Ibabaaf286ca4ce942908086e490929900ccf7c95
Add file to the reno documentation build to show release notes for
stable/2023.1.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.1.
Sem-Ver: feature
Change-Id: I8e979b65ca350f53b6eb795f5d2358c628268425
This repo is now testing only with Python 3, so let's make
a few cleanups:
- Remove python 2.7 stanza from setup.py
Change-Id: I82753bf268ebcc6fd701a56c64534a9cd3d5b4ae
This patch changes the ``log.setup()`` signature to allow a kwarg
that makes the eventlet logging fix conditional.
Some libraries that import oslo.log, replace the logging locking
handling with its own implementation. For example oslo.privsep
replaces the logging handler with its own one [1], that allows the
communication between the privileged daemon process and the service
importing the library. This local handler clashes with the
evenlet logging fix implemented in [2].
[1]1020c6fbf5/oslo_privsep/daemon.py (L579)
[2]https://review.opendev.org/c/openstack/oslo.log/+/852443
Partial-Bug: #1995514
Related-Bug: #1995091
Change-Id: I4bbcfe7db6d75188e61b9084cb02b2dd2aaa0c76
There is a bug in eventlet where logging within a native thread can lead
to a deadlock situation: https://github.com/eventlet/eventlet/issues/432
When encountered with this issue some projects in OpenStack using
oslo.log, eg. Cinder, resolve them by removing any logging withing
native threads.
There is actually a better approach. The Swift team came up with a
solution a long time ago [1], and in this patch that fix is included as
part of the setup method, but will only be run if the eventlet library
has already been loaded.
This patch adds the eventlet library as a testing dependency for the
PipeMutext unit tests.
[1]: 69c715c505
Closes-Bug: #1983863
Change-Id: Iac1b0891ae584ce4b95964e6cdc0ff2483a4e57d
Initialize by default the `global_request_id` if not passed
in the given context to avoid error with logging.
Change-Id: I6bd63c1d6a1331a4e47b923ccf6df50c930c8162
Closes-Bug: #1972974
In Zed cycle testing runtime, we are targetting to drop the
python 3.6/3.7 support, project started adding python 3.8 as minimum,
example nova:
- 56b5aed08c/setup.cfg (L13)
Change-Id: I46e2456b9931d215c97b15ac97b47a6977282584
Global Request IDs were introduced a while ago[1] so that operators can
trace processing of resources across multiple services more easily.
Some services like Nova or Neutron have implemented this feature and
a request made by these services have additional global request id in
its context. However current default format doesn't include that new id
and users need to update the log format parameter in each service to
get this information recorded.
This change updates the default log format so that the Global Request
IDs can be more widely and easily used.
[1] https://specs.openstack.org/openstack/oslo-specs/specs/pike/global-req-id.html
Change-Id: I1adc9b29bb356ce56704c066b375b49374200d3c
As part of Secure RBAC work, support for system users(eg. system admin)
is being added. However current default format does not include
the system scope information so we can't determine whether the context
is non-scoped or system-scoped.
This change updates the default logging_user_identity_format so that
system scope is logged by default.
Change-Id: I7982cdb280599fb38362eb837cb527592267b91f
This patch updates the project template to use the Yoga project template
to ensure unit testing is in place for all of the tested runtimes
for yoga. For more please refer to [1].
[1]: https://governance.openstack.org/tc/reference/project-testing-interface.html
Change-Id: Idda4215001b245322983d59507a38d19d1d322bd
The logging_user_identity_format option's default value is changed
to reference the project instead of the tenant. This is necessary
because I2fded6f3476df1fb8c4e042ef28ed8ccb7ab0737 removed the tenant
argument from request contexts.
Related-Bug: #1505827
Change-Id: Id6d4b6eaa2b96ba5bd53e8b2dae5d9eea13b25d9
The following arguments of the RequestContext class are deprecated
since oslo.context 2.18[1].
user : renamed to user_id
tenant : renamed to project_id
domain : renamed to domain_id
user_domain : renamed to user_domain_id
project_domain: renamed to project_domain_id
This change updates arguments used accordingly.
[1] d78cf592e1e3e7aa0fc99bfdd655e82f5c44dfe3
Change-Id: I815790106e42ca3cb5b8b3cf98b065a27b9a520e
Setuptools v54.1.0 introduces a warning that the use of dash-separated
options in 'setup.cfg' will not be supported in a future version [1].
Get ahead of the issue by replacing the dashes with underscores. Without
this, we see 'UserWarning' messages like the following on new enough
versions of setuptools:
UserWarning: Usage of dash-separated 'description-file' will not be
supported in future versions. Please use the underscore name
'description_file' instead
[1] https://github.com/pypa/setuptools/commit/a2e9ae4cb
Change-Id: I19543673ddf80d93e28f5503b7672f64a6cecf2a