summaryrefslogtreecommitdiffstats
path: root/utils/clean_openstack.py
diff options
context:
space:
mode:
authorvitikkan <viktor.tikkanen@nokia.com>2016-05-19 14:08:47 +0300
committerJose Lausuch <jose.lausuch@ericsson.com>2016-05-19 12:00:26 +0000
commite12f3661b74d998bdd5b75761f9700fcbb837534 (patch)
tree72cf5c361c393c6ebefdd6bb3d39324a9ffb3fca /utils/clean_openstack.py
parent58c7d61bd5ceca0aed2b9e3888d0380970700029 (diff)
Preserving Nova instances from os_defaults.yaml
Previously clean_openstack deleted all the existing instances even if they were included into os_defaults.yaml. Change-Id: Id7c17ec86a5616c44bd2965844a4a8545054358b Signed-off-by: vitikkan <viktor.tikkanen@nokia.com>
Diffstat (limited to 'utils/clean_openstack.py')
-rw-r--r--utils/clean_openstack.py30
1 files changed, 18 insertions, 12 deletions
diff --git a/utils/clean_openstack.py b/utils/clean_openstack.py
index b3c0d351d..70eced62c 100644
--- a/utils/clean_openstack.py
+++ b/utils/clean_openstack.py
@@ -54,23 +54,29 @@ def remove_instances(nova_client, default_instances):
for instance in instances:
instance_name = getattr(instance, 'name')
instance_id = getattr(instance, 'id')
- logger.debug("Removing instance '%s', ID=%s ..."
- % (instance_name, instance_id))
- if os_utils.delete_instance(nova_client, instance_id):
- logger.debug(" > Done!")
+ logger.debug("'%s', ID=%s " % (instance_name, instance_id))
+ if instance_id not in default_instances:
+ logger.debug("Removing instance '%s' ..." % instance_id)
+ if os_utils.delete_instance(nova_client, instance_id):
+ logger.debug(" > Request sent.")
+ else:
+ logger.error("There has been a problem removing the "
+ "instance %s..." % instance_id)
else:
- logger.error("There has been a problem removing the "
- "instance %s..." % instance_id)
+ logger.debug(" > this is a default instance and will "
+ "NOT be deleted.")
timeout = 50
while timeout > 0:
instances = os_utils.get_instances(nova_client)
- if instances is None or len(instances) == 0:
- break
- else:
- logger.debug("Waiting for instances to be terminated...")
- timeout -= 1
- time.sleep(1)
+ for instance in instances:
+ instance_id = getattr(instance, 'id')
+ if instance_id not in default_instances:
+ logger.debug("Waiting for instances to be terminated...")
+ timeout -= 1
+ time.sleep(1)
+ continue
+ break
def remove_images(nova_client, default_images):