X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=nfvbench%2Fcleanup.py;h=23cdf56042a63556b5620f3a40edc4df5e728f98;hb=1c686977d9146f1b2dbbf0085c98897311c46789;hp=6cb27138f489d4d8f97e12049d567d07ab183e61;hpb=9f451d6e57d8aab489ee33123abca70300cc268b;p=nfvbench.git diff --git a/nfvbench/cleanup.py b/nfvbench/cleanup.py index 6cb2713..23cdf56 100644 --- a/nfvbench/cleanup.py +++ b/nfvbench/cleanup.py @@ -15,7 +15,6 @@ # import sys -import time from neutronclient.neutron import client as nclient from novaclient.client import Client @@ -24,6 +23,7 @@ from tabulate import tabulate from . import credentials from .log import LOG +from . import utils class ComputeCleaner(object): @@ -36,13 +36,6 @@ class ComputeCleaner(object): self.servers = [server for server in all_servers if server.name.startswith(instance_prefix)] - def instance_exists(self, server): - try: - self.nova_client.servers.get(server.id) - except NotFound: - return False - return True - def get_resource_list(self): return [["Instance", server.name, server.id] for server in self.servers] @@ -59,29 +52,8 @@ class ComputeCleaner(object): if self.clean_needed(clean_options): if self.servers: for server in self.servers: - try: - LOG.info('Deleting instance %s...', server.name) - self.nova_client.servers.delete(server.id) - except Exception: - LOG.exception("Instance %s deletion failed", server.name) - LOG.info(' Waiting for %d instances to be fully deleted...', len(self.servers)) - retry_count = 15 + len(self.servers) * 5 - while True: - retry_count -= 1 - self.servers = [server for server in self.servers if - self.instance_exists(server)] - if not self.servers: - break - - if retry_count: - LOG.info(' %d yet to be deleted by Nova, retries left=%d...', - len(self.servers), retry_count) - time.sleep(2) - else: - LOG.warning( - ' instance deletion verification time-out: %d still not deleted', - len(self.servers)) - break + utils.delete_server(self.nova_client, server) + utils.waiting_servers_deletion(self.nova_client, self.servers) class NetworkCleaner(object):