Include a copy of tempest.scenario.manager module

Add tempest/scenario/manager.py from openstack/tempest [1], and update
imports in ironic. As announced in [2], the interface in manager.py is
not stable, and should not be consumed outside tempest. With this
temporary change, QA will have time to improve the tempest.scenario
interface for other projects to consume, without breaking gate jobs.

An alternative to copying the local file was proposed in [3], which
suggested creating a new interface class, living along with the old
interface. Through a tempest config option projects would choose which
scenario interface class to use. QA reasoned that this would increase
the number of jobs, and slow their work. Thus the option was rejected.

[1] http://git.openstack.org/cgit/openstack/tempest/tree/tempest/scenario/manager.py?id=82a278e88c9e9f9ba49f81c1f8dba0bca7943daf
[2] http://lists.openstack.org/pipermail/openstack-dev/2017-February/112938.html
[3] http://lists.openstack.org/pipermail/openstack-dev/2017-March/113496.html

Closes-Bug: #1668807
Change-Id: Iaa06df6ab75fb8f79cbcd3f6b21e68622e7799c1
This commit is contained in:
Solio Sarabia 2017-02-28 18:18:26 -06:00
parent 8d7b4319e9
commit 881e5ad9db
4 changed files with 1384 additions and 5 deletions

View File

@ -5,8 +5,10 @@ Ironic tempest plugin
This directory contains Tempest tests to cover the Ironic project, This directory contains Tempest tests to cover the Ironic project,
as well as a plugin to automatically load these tests into tempest. as well as a plugin to automatically load these tests into tempest.
See the tempest plugin docs for information on using it: See the tempest plugin documentation for information about creating
http://docs.openstack.org/developer/tempest/plugin.html#using-plugins a plugin, stable API interface, TempestPlugin class interface, plugin
structure, and how to use plugins:
http://docs.openstack.org/developer/tempest/plugin.html
See the Ironic documentation for information about how to run the See the Ironic documentation for information about how to run the
tempest tests: tempest tests:

File diff suppressed because it is too large Load Diff

View File

@ -20,11 +20,11 @@ from tempest.common import waiters
from tempest import config from tempest import config
from tempest.lib.common import api_version_utils from tempest.lib.common import api_version_utils
from tempest.lib import exceptions as lib_exc from tempest.lib import exceptions as lib_exc
from tempest.scenario import manager # noqa
from ironic_tempest_plugin import clients from ironic_tempest_plugin import clients
from ironic_tempest_plugin.common import utils from ironic_tempest_plugin.common import utils
from ironic_tempest_plugin.common import waiters as ironic_waiters from ironic_tempest_plugin.common import waiters as ironic_waiters
from ironic_tempest_plugin import manager
CONF = config.CONF CONF = config.CONF

View File

@ -13,13 +13,14 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
from ironic_tempest_plugin.tests.scenario import baremetal_manager
from tempest import config from tempest import config
from tempest.lib.common.utils import data_utils from tempest.lib.common.utils import data_utils
from tempest.lib import decorators from tempest.lib import decorators
from tempest.scenario import manager
from tempest import test from tempest import test
from ironic_tempest_plugin import manager
from ironic_tempest_plugin.tests.scenario import baremetal_manager
CONF = config.CONF CONF = config.CONF