summaryrefslogtreecommitdiff
path: root/nova/tests/functional/integrated_helpers.py
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2019-12-12 13:11:35 +0000
committerGerrit Code Review <review@openstack.org>2019-12-12 13:11:35 +0000
commited503ce3e1a8598c6e8ee9d8b345c1d92df01539 (patch)
tree7a5a7335993f26718d04ef1503e288dbe3b61dce /nova/tests/functional/integrated_helpers.py
parent74a26713984f1838e671d47d10529d795d9feed9 (diff)
parentd888d9b8edc0e07abc39bd35acca33e029686d54 (diff)
downloadnova-ed503ce3e1a8598c6e8ee9d8b345c1d92df01539.tar.gz
Merge "functional: Unify '_build_minimal_create_server_request' implementations"
Diffstat (limited to 'nova/tests/functional/integrated_helpers.py')
-rw-r--r--nova/tests/functional/integrated_helpers.py65
1 files changed, 43 insertions, 22 deletions
diff --git a/nova/tests/functional/integrated_helpers.py b/nova/tests/functional/integrated_helpers.py
index 15ee3f04ea..e5db51c806 100644
--- a/nova/tests/functional/integrated_helpers.py
+++ b/nova/tests/functional/integrated_helpers.py
@@ -96,19 +96,29 @@ class InstanceHelperMixin(object):
return self._wait_for_server_parameter(
admin_api, server, {'status': expected_status}, max_retries)
- def _build_minimal_create_server_request(self, api, name, image_uuid=None,
- flavor_id=None, networks=None,
- az=None, host=None):
+ def _build_minimal_create_server_request(self, api, name=None,
+ image_uuid=None, flavor_id=None,
+ networks=None, az=None,
+ host=None):
server = {}
- # We now have a valid imageId
- server['imageRef'] = image_uuid or api.get_images()[0]['id']
+ if not image_uuid:
+ # NOTE(takashin): In API version 2.36, image APIs were deprecated.
+ # In API version 2.36 or greater, self.api.get_images() returns
+ # a 404 error. In that case, 'image_uuid' should be specified.
+ image_uuid = api.get_images()[0]['id']
+ server['imageRef'] = image_uuid
+
+ if not name:
+ name = ''.join(
+ random.choice(string.ascii_lowercase) for i in range(10))
+ server['name'] = name
if not flavor_id:
# Set a valid flavorId
- flavor_id = api.get_flavors()[1]['id']
- server['flavorRef'] = ('http://fake.server/%s' % flavor_id)
- server['name'] = name
+ flavor_id = api.get_flavors()[0]['id']
+ server['flavorRef'] = 'http://fake.server/%s' % flavor_id
+
if networks is not None:
server['networks'] = networks
if az is not None:
@@ -310,24 +320,35 @@ class _IntegratedTestBase(test.TestCase):
def get_invalid_image(self):
return uuids.fake
- def _build_minimal_create_server_request(self, image_uuid=None):
+ def _build_minimal_create_server_request(self, name=None, image_uuid=None,
+ flavor_id=None, networks=None,
+ az=None, host=None):
server = {}
- # NOTE(takashin): In API version 2.36, image APIs were deprecated.
- # In API version 2.36 or greater, self.api.get_images() returns
- # a 404 error. In that case, 'image_uuid' should be specified.
- server[self._image_ref_parameter] = (image_uuid or
- self.api.get_images()[0]['id'])
+ if not image_uuid:
+ # NOTE(takashin): In API version 2.36, image APIs were deprecated.
+ # In API version 2.36 or greater, self.api.get_images() returns
+ # a 404 error. In that case, 'image_uuid' should be specified.
+ image_uuid = self.api.get_images()[0]['id']
+ server['imageRef'] = image_uuid
- # Set a valid flavorId
- flavor = self.api.get_flavors()[0]
- LOG.debug("Using flavor: %s", flavor)
- server[self._flavor_ref_parameter] = ('http://fake.server/%s'
- % flavor['id'])
+ if not name:
+ name = ''.join(
+ random.choice(string.ascii_lowercase) for i in range(10))
+ server['name'] = name
- # Set a valid server name
- server_name = self.get_unused_server_name()
- server['name'] = server_name
+ if not flavor_id:
+ # Set a valid flavorId
+ flavor_id = self.api.get_flavors()[0]['id']
+ server['flavorRef'] = 'http://fake.server/%s' % flavor_id
+
+ if networks is not None:
+ server['networks'] = networks
+ if az is not None:
+ server['availability_zone'] = az
+ # This requires at least microversion 2.74 to work
+ if host is not None:
+ server['host'] = host
return server
def _create_flavor_body(self, name, ram, vcpus, disk, ephemeral, id, swap,