Make recreate_server() wait until SSHABLE
Continuing the work to bandaid any tests that involve volume attachment/detachment, make the setUp() method of ServerActionsTestJSON wait for the SSHABLE status. Some of its tests, for example test_rebuild_server_with_volume_attached, use a class-level server resource that is created by setUp(). We also need to add the optional wait_until kwarg to recreate_server(), as the latter is called by setUp() in some cases. Change-Id: I3b7bcadbb7d608d705754b6ad7e2869e07b81b75 Related-Bug: 1960310
This commit is contained in:
parent
9625f0d364
commit
4fc47f68c7
@ -412,7 +412,8 @@ class BaseV2ComputeTest(api_version_utils.BaseMicroversionTest,
|
||||
return image
|
||||
|
||||
@classmethod
|
||||
def recreate_server(cls, server_id, validatable=False, **kwargs):
|
||||
def recreate_server(cls, server_id, validatable=False, wait_until='ACTIVE',
|
||||
**kwargs):
|
||||
"""Destroy an existing class level server and creates a new one
|
||||
|
||||
Some test classes use a test server that can be used by multiple
|
||||
@ -440,7 +441,7 @@ class BaseV2ComputeTest(api_version_utils.BaseMicroversionTest,
|
||||
validatable,
|
||||
validation_resources=cls.get_class_validation_resources(
|
||||
cls.os_primary),
|
||||
wait_until='ACTIVE',
|
||||
wait_until=wait_until,
|
||||
adminPass=cls.password,
|
||||
**kwargs)
|
||||
return server['id']
|
||||
|
@ -65,12 +65,12 @@ class ServerActionsTestJSON(base.BaseV2ComputeTest):
|
||||
server = self.create_test_server(
|
||||
validatable=True,
|
||||
validation_resources=validation_resources,
|
||||
wait_until='ACTIVE')
|
||||
wait_until='SSHABLE')
|
||||
self.__class__.server_id = server['id']
|
||||
except Exception:
|
||||
# Rebuild server if something happened to it during a test
|
||||
self.__class__.server_id = self.recreate_server(
|
||||
self.server_id, validatable=True)
|
||||
self.server_id, validatable=True, wait_until='SSHABLE')
|
||||
|
||||
def tearDown(self):
|
||||
super(ServerActionsTestJSON, self).tearDown()
|
||||
|
Loading…
Reference in New Issue
Block a user