From 48f7f0f1bcb0d43d18e89f8ff54971f450f2f58b Mon Sep 17 00:00:00 2001 From: TerryHowe <terrylhowe@gmail.com> Date: Fri, 21 Aug 2015 12:06:54 -0600 Subject: [PATCH] Automate flavors, networks, and image get Functional tests rely on some sort of configuration and rather than configure something right now, how about it pulls something from the middle of the available list. Change-Id: I8147e40e5ee7393d8a8dcf1b0beb48856f28af7e --- functional/tests/compute/v2/test_server.py | 38 +++++++++++++++++----- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/functional/tests/compute/v2/test_server.py b/functional/tests/compute/v2/test_server.py index aa1c1201df..a6cc98e621 100644 --- a/functional/tests/compute/v2/test_server.py +++ b/functional/tests/compute/v2/test_server.py @@ -15,6 +15,7 @@ import uuid import testtools +from functional.common import exceptions from functional.common import test @@ -27,19 +28,38 @@ class ServerTests(test.TestCase): FIELDS = ['name'] IP_POOL = 'public' + @classmethod + def get_flavor(cls): + raw_output = cls.openstack('flavor list -f value -c ID') + ray = raw_output.split('\n') + idx = len(ray)/2 + return ray[idx] + + @classmethod + def get_image(cls): + raw_output = cls.openstack('image list -f value -c ID') + ray = raw_output.split('\n') + idx = len(ray)/2 + return ray[idx] + + @classmethod + def get_network(cls): + try: + raw_output = cls.openstack('network list -f value -c ID') + except exceptions.CommandFailed: + return '' + ray = raw_output.split('\n') + idx = len(ray)/2 + return ' --nic net-id=' + ray[idx] + @classmethod def setUpClass(cls): opts = cls.get_show_opts(cls.FIELDS) - # TODO(thowe): pull these values from clouds.yaml - flavor = '4' - image = 'cirros-0.3.4-x86_64-uec' - netid = '' - if netid: - nicargs = ' --nic net-id=' + netid - else: - nicargs = '' + flavor = cls.get_flavor() + image = cls.get_image() + network = cls.get_network() raw_output = cls.openstack('server create --flavor ' + flavor + - ' --image ' + image + nicargs + ' ' + + ' --image ' + image + network + ' ' + cls.NAME + opts) expected = cls.NAME + '\n' cls.assertOutput(expected, raw_output)