Code Review
/
functest.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Merge "Add extra check to avoid double delete of instances"
[functest.git]
/
functest
/
utils
/
openstack_clean.py
diff --git
a/functest/utils/openstack_clean.py
b/functest/utils/openstack_clean.py
index
c08568b
..
ce61fca
100755
(executable)
--- a/
functest/utils/openstack_clean.py
+++ b/
functest/utils/openstack_clean.py
@@
-23,14
+23,16
@@
#
import time
#
import time
+
+import yaml
+
import functest.utils.functest_logger as ft_logger
import functest.utils.openstack_utils as os_utils
import functest.utils.functest_logger as ft_logger
import functest.utils.openstack_utils as os_utils
-import yaml
-import functest.utils.functest_constants as ft_constants
+from functest.utils.constants import CONST
logger = ft_logger.Logger("openstack_clean").getLogger()
logger = ft_logger.Logger("openstack_clean").getLogger()
-OS_SNAPSHOT_FILE =
ft_constants.OPENSTACK_SNAPSHOT_FILE
+OS_SNAPSHOT_FILE =
CONST.openstack_snapshot_file
def separator():
def separator():
@@
-47,9
+49,14
@@
def remove_instances(nova_client, default_instances):
for instance in instances:
instance_name = getattr(instance, 'name')
instance_id = getattr(instance, 'id')
for instance in instances:
instance_name = getattr(instance, 'name')
instance_id = getattr(instance, 'id')
+ instance_status = getattr(instance, 'status')
+ instance_state = getattr(instance, 'OS-EXT-STS:task_state')
+
logger.debug("'%s', ID=%s " % (instance_name, instance_id))
if (instance_id not in default_instances and
logger.debug("'%s', ID=%s " % (instance_name, instance_id))
if (instance_id not in default_instances and
- instance_name not in default_instances.values()):
+ instance_name not in default_instances.values() and
+ instance_status != 'DELETED' and
+ (instance_status != 'BUILD' or instance_state != 'deleting')):
logger.debug("Removing instance '%s' ..." % instance_id)
if os_utils.delete_instance(nova_client, instance_id):
logger.debug(" > Request sent.")
logger.debug("Removing instance '%s' ..." % instance_id)
if os_utils.delete_instance(nova_client, instance_id):
logger.debug(" > Request sent.")
@@
-395,7
+402,7
@@
def main():
default_security_groups = snapshot_yaml.get('secgroups')
default_floatingips = snapshot_yaml.get('floatingips')
default_users = snapshot_yaml.get('users')
default_security_groups = snapshot_yaml.get('secgroups')
default_floatingips = snapshot_yaml.get('floatingips')
default_users = snapshot_yaml.get('users')
-
#
default_tenants = snapshot_yaml.get('tenants')
+ default_tenants = snapshot_yaml.get('tenants')
if not os_utils.check_credentials():
logger.error("Please source the openrc credentials and run "
if not os_utils.check_credentials():
logger.error("Please source the openrc credentials and run "
@@
-416,10
+423,8
@@
def main():
separator()
remove_users(keystone_client, default_users)
separator()
separator()
remove_users(keystone_client, default_users)
separator()
- # TODO (Helen) tenant does not exist in V3
- # need to figure our anohter general verification point
- # remove_tenants(keystone_client, default_tenants)
- # separator()
+ remove_tenants(keystone_client, default_tenants)
+ separator()
if __name__ == '__main__':
if __name__ == '__main__':