Merge "Add a new tox environment to run unit tests in threading mode"

This commit is contained in:
Zuul
2025-08-13 21:37:19 +00:00
committed by Gerrit Code Review
3 changed files with 26 additions and 0 deletions

View File

@@ -297,6 +297,14 @@
devstack_localrc:
'SYSTEMD_ENV_VARS["watcher-decision-engine"]': OS_WATCHER_DISABLE_EVENTLET_PATCHING=true
- job:
name: openstack-tox-py312-threading
parent: openstack-tox-py312
description: |
Run tox with the py3-threading environment.
vars:
tox_envlist: py3-threading
- project:
queue: watcher
templates:
@@ -307,6 +315,7 @@
- release-notes-jobs-python3
check:
jobs:
- openstack-tox-py312-threading
- watcher-tempest-functional
- watcher-grenade
- watcher-tempest-strategies

10
tox.ini
View File

@@ -37,6 +37,16 @@ passenv =
# debugging issue with fixtures and mocks.
PYTHONOPTIMIZE
[testenv:py3-threading]
setenv =
OS_WATCHER_DISABLE_EVENTLET_PATCHING=true
commands =
rm -f .testrepository/times.dbm
find . -type f -name "*.py[c|o]" -delete
# NOTE(dviroel): Applier still requires changes to support
# threading mode
stestr run {posargs} --exclude-regex 'applier'
[testenv:pep8]
description =
Run style checks.

View File

@@ -21,6 +21,13 @@
from watcher import eventlet
eventlet.patch()
# NOTE(dviroel): oslo service backend needs to be initialize
# as soon as possible, before importing oslo service. If eventlet
# patching is enabled, it should be patched before calling this
# function
from watcher.common import oslo_service_helper as helper # noqa E402
helper.init_oslo_service_backend()
from watcher import objects # noqa E402
# NOTE(comstud): Make sure we have all of the objects loaded. We do this