diff options
Diffstat (limited to 'functest/utils/openstack_clean.py')
-rwxr-xr-x | functest/utils/openstack_clean.py | 32 |
1 files changed, 18 insertions, 14 deletions
diff --git a/functest/utils/openstack_clean.py b/functest/utils/openstack_clean.py index 0ce08798..e88245d6 100755 --- a/functest/utils/openstack_clean.py +++ b/functest/utils/openstack_clean.py @@ -80,22 +80,25 @@ def remove_instances(nova_client, default_instances): break -def remove_images(nova_client, default_images): +def remove_images(glance_client, default_images): logger.debug("Removing Glance images...") - images = os_utils.get_images(nova_client) - if images is None or len(images) == 0: + images = os_utils.get_images(glance_client) + if images is None: + return -1 + images = {image.id: image.name for image in images} + if len(images) == 0: logger.debug("No images found.") return for image in images: - image_name = getattr(image, 'name') - image_id = getattr(image, 'id') + image_id = image + image_name = images.get(image_id) logger.debug("'%s', ID=%s " % (image_name, image_id)) if (image_id not in default_images and image_name not in default_images.values()): logger.debug("Removing image '%s', ID=%s ..." % (image_name, image_id)) - if os_utils.delete_glance_image(nova_client, image_id): + if os_utils.delete_glance_image(glance_client, image_id): logger.debug(" > Done!") else: logger.error("There has been a problem removing the" @@ -135,9 +138,9 @@ def remove_volumes(cinder_client, default_volumes): "NOT be deleted.") -def remove_floatingips(nova_client, default_floatingips): +def remove_floatingips(neutron_client, default_floatingips): logger.debug("Removing floating IPs...") - floatingips = os_utils.get_floating_ips(nova_client) + floatingips = os_utils.get_floating_ips(neutron_client) if floatingips is None or len(floatingips) == 0: logger.debug("No floating IPs found.") return @@ -145,13 +148,13 @@ def remove_floatingips(nova_client, default_floatingips): init_len = len(floatingips) deleted = 0 for fip in floatingips: - fip_id = getattr(fip, 'id') - fip_ip = getattr(fip, 'ip') + fip_id = fip['id'] + fip_ip = fip['floating_ip_address'] logger.debug("'%s', ID=%s " % (fip_ip, fip_id)) if (fip_id not in default_floatingips and fip_ip not in default_floatingips.values()): logger.debug("Removing floating IP %s ..." % fip_id) - if os_utils.delete_floating_ip(nova_client, fip_id): + if os_utils.delete_floating_ip(neutron_client, fip_id): logger.debug(" > Done!") deleted += 1 else: @@ -163,7 +166,7 @@ def remove_floatingips(nova_client, default_floatingips): timeout = 50 while timeout > 0: - floatingips = os_utils.get_floating_ips(nova_client) + floatingips = os_utils.get_floating_ips(neutron_client) if floatingips is None or len(floatingips) == (init_len - deleted): break else: @@ -385,6 +388,7 @@ def main(): neutron_client = os_utils.get_neutron_client() keystone_client = os_utils.get_keystone_client() cinder_client = os_utils.get_cinder_client() + glance_client = os_utils.get_glance_client() try: with open(OS_SNAPSHOT_FILE) as f: @@ -411,11 +415,11 @@ def main(): remove_instances(nova_client, default_instances) separator() - remove_images(nova_client, default_images) + remove_images(glance_client, default_images) separator() remove_volumes(cinder_client, default_volumes) separator() - remove_floatingips(nova_client, default_floatingips) + remove_floatingips(neutron_client, default_floatingips) separator() remove_networks(neutron_client, default_networks, default_routers) separator() |