tempest/releasenotes/notes/Stabilize-scenario-manager-...

32 lines
1.6 KiB
YAML

---
prelude: >
Tempest.scenario.manager is now a stable interface for Tempest plugins.
features:
- |
In this release, we made tempest/scenario/manager.py a stable interface
ready to be consumed by all tempest plugins. The effort was tracked in
the following etherpad [1], and the related review can be listed via [2]:
* [1] https://etherpad.opendev.org/p/tempest-scenario-manager
* [2] https://review.opendev.org/#/q/topic:bp/tempest-scenario-manager-stable(status:open+OR+status:merged)
Some time ago, tempest/scenario/manager.py got copied to most of the plugins
and therefore, it diverged - every plugin's copy had slight differences.
In this release, we pushed changes to unify the manager's methods and
improved their APIs in order to have them easier consumable:
* we added implementations of methods that were often used in plugins'
manager.py however were not implemented in our manager
* we improved APIs by f.e. adding a kwargs argument so that the consumers
are more in control of the data that are passed to tempest clients
* we modified logic of a few methods so that it complies with the plugins'
manager versions in order to prepare for a situation when the plugins
can reuse Tempest manager as much as possible rather than keeping their
own copy
* we made methods consistent w.r.t. names and parameters
* we split the lengthy methods to have more readable code
* previously private methods which had a potential to be reused were
made public so that it's clear they are expected to be used in tempest
plugins
* missing docstrings have been added