aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjose.lausuch <jose.lausuch@ericsson.com>2016-01-20 15:39:29 +0100
committerMorgan Richomme <morgan.richomme@orange.com>2016-01-20 15:41:22 +0000
commit4fcdb6c51787015b144f16a0501e6b60526b5e84 (patch)
treefcedff0d3ca9b280b7760fdd37f493dc01c7a0da
parentc32e8458529401ff1a5fc92bbb151101364340dd (diff)
Check if rally image already exist and don't create it again if so
Change-Id: Ib872b7c21449fe4dc9c4331401fbfbff86140f68 Signed-off-by: jose.lausuch <jose.lausuch@ericsson.com> (cherry picked from commit 2a9268e11cbac21a0952dee6831d28cd06dc70d7)
-rwxr-xr-xtestcases/VIM/OpenStack/CI/libraries/run_rally-cert.py33
-rw-r--r--testcases/VIM/OpenStack/CI/libraries/run_rally.py44
2 files changed, 38 insertions, 39 deletions
diff --git a/testcases/VIM/OpenStack/CI/libraries/run_rally-cert.py b/testcases/VIM/OpenStack/CI/libraries/run_rally-cert.py
index 13066b3df..17a6596d3 100755
--- a/testcases/VIM/OpenStack/CI/libraries/run_rally-cert.py
+++ b/testcases/VIM/OpenStack/CI/libraries/run_rally-cert.py
@@ -282,20 +282,22 @@ def main():
client_dict['neutron'] = neutron_client
- logger.debug("Creating image '%s' from '%s'..." % (GLANCE_IMAGE_NAME, GLANCE_IMAGE_PATH))
- image_id = functest_utils.create_glance_image(glance_client,
- GLANCE_IMAGE_NAME,GLANCE_IMAGE_PATH)
- if not image_id:
- logger.error("Failed to create a Glance image...")
- exit(-1)
- # Check if the given image exists
- try:
- nova_client.images.find(name=GLANCE_IMAGE_NAME)
- logger.info("Glance image found '%s'" % GLANCE_IMAGE_NAME)
- except:
- logger.error("ERROR: Glance image '%s' not found." % GLANCE_IMAGE_NAME)
- logger.info("Available images are: ")
- exit(-1)
+ image_id = functest_utils.get_image_id(glance_client, GLANCE_IMAGE_NAME)
+
+ if image_id == '':
+ logger.debug("Creating image '%s' from '%s'..." % (GLANCE_IMAGE_NAME, \
+ GLANCE_IMAGE_PATH))
+ image_id = functest_utils.create_glance_image(glance_client,\
+ GLANCE_IMAGE_NAME,GLANCE_IMAGE_PATH)
+ if not image_id:
+ logger.error("Failed to create the Glance image...")
+ exit(-1)
+ else:
+ logger.debug("Image '%s' with ID '%s' created succesfully ." \
+ % (GLANCE_IMAGE_NAME, image_id))
+ else:
+ logger.debug("Using existing image '%s' with ID '%s'..." \
+ % (GLANCE_IMAGE_NAME,image_id))
if args.test_name == "all":
for test_name in tests:
@@ -307,7 +309,8 @@ def main():
print(args.test_name)
run_task(args.test_name)
- logger.debug("Deleting image...")
+ logger.debug("Deleting image '%s' with ID '%s'..." \
+ % (GLANCE_IMAGE_NAME, image_id))
if not functest_utils.delete_glance_image(nova_client, image_id):
logger.error("Error deleting the glance image")
diff --git a/testcases/VIM/OpenStack/CI/libraries/run_rally.py b/testcases/VIM/OpenStack/CI/libraries/run_rally.py
index b879758ca..a7f1db13a 100644
--- a/testcases/VIM/OpenStack/CI/libraries/run_rally.py
+++ b/testcases/VIM/OpenStack/CI/libraries/run_rally.py
@@ -122,16 +122,6 @@ def get_task_id(cmd_raw):
return None
-def create_glance_image(path, name, disk_format):
- """
- Create a glance image given the absolute path of the image, its name and the disk format
- """
- cmd = ("glance image-create --name " + name + " --visibility public "
- "--disk-format " + disk_format + " --container-format bare --file " + path)
- functest_utils.execute_command(cmd, logger)
- return True
-
-
def task_succeed(json_raw):
"""
Parse JSON from rally JSON results
@@ -244,20 +234,24 @@ def main():
glance_client = glanceclient.Client(1, glance_endpoint,
token=keystone_client.auth_token)
- logger.debug("Creating image '%s' from '%s'..." % (GLANCE_IMAGE_NAME, GLANCE_IMAGE_PATH))
- image_id = functest_utils.create_glance_image(glance_client,
- GLANCE_IMAGE_NAME,GLANCE_IMAGE_PATH)
- if not image_id:
- logger.error("Failed to create a Glance image...")
- exit(-1)
- # Check if the given image exists
- try:
- nova_client.images.find(name=GLANCE_IMAGE_NAME)
- logger.info("Glance image found '%s'" % GLANCE_IMAGE_NAME)
- except:
- logger.error("ERROR: Glance image '%s' not found." % GLANCE_IMAGE_NAME)
- logger.info("Available images are: ")
- exit(-1)
+
+ image_id = functest_utils.get_image_id(glance_client, GLANCE_IMAGE_NAME)
+
+ if image_id == '':
+ logger.debug("Creating image '%s' from '%s'..." % (GLANCE_IMAGE_NAME, \
+ GLANCE_IMAGE_PATH))
+ image_id = functest_utils.create_glance_image(glance_client,\
+ GLANCE_IMAGE_NAME,GLANCE_IMAGE_PATH)
+ if not image_id:
+ logger.error("Failed to create the Glance image...")
+ exit(-1)
+ else:
+ logger.debug("Image '%s' with ID '%s' created succesfully ." \
+ % (GLANCE_IMAGE_NAME, image_id))
+ else:
+ logger.debug("Using existing image '%s' with ID '%s'..." \
+ % (GLANCE_IMAGE_NAME,image_id))
+
if args.test_name == "all":
for test_name in tests:
@@ -272,6 +266,8 @@ def main():
print(args.test_name)
run_task(args.test_name)
+ logger.debug("Deleting image '%s' with ID '%s'..." \
+ % (GLANCE_IMAGE_NAME, image_id))
if not functest_utils.delete_glance_image(nova_client, image_id):
logger.error("Error deleting the glance image")