Delete TestCase.create_snapshot()
[functest.git] / functest / utils / openstack_snapshot.py
old mode 100755 (executable)
new mode 100644 (file)
index e64030f..3dc6f80
 # http://www.apache.org/licenses/LICENSE-2.0
 #
 
+import logging
 import yaml
 
-import functest.utils.functest_logger as ft_logger
 import functest.utils.openstack_utils as os_utils
 from functest.utils.constants import CONST
 
-logger = ft_logger.Logger("openstack_snapshot").getLogger()
+logger = logging.getLogger(__name__)
 
 
 OS_SNAPSHOT_FILE = CONST.openstack_snapshot_file
@@ -47,13 +47,13 @@ def get_instances(nova_client):
     return {'instances': dic_instances}
 
 
-def get_images(nova_client):
+def get_images(glance_client):
     logger.debug("Getting images...")
     dic_images = {}
-    images = os_utils.get_images(nova_client)
-    if not (images is None or len(images) == 0):
-        for image in images:
-            dic_images.update({getattr(image, 'id'): getattr(image, 'name')})
+    images = os_utils.get_images(glance_client)
+    if images is None:
+        return -1
+    dic_images.update({image.id: image.name for image in images})
     return {'images': dic_images}
 
 
@@ -97,13 +97,14 @@ def get_security_groups(neutron_client):
     return {'secgroups': dic_secgroups}
 
 
-def get_floatinips(nova_client):
+def get_floatingips(neutron_client):
     logger.debug("Getting Floating IPs...")
     dic_floatingips = {}
-    floatingips = os_utils.get_floating_ips(nova_client)
+    floatingips = os_utils.get_floating_ips(neutron_client)
     if not (floatingips is None or len(floatingips) == 0):
         for floatingip in floatingips:
-            dic_floatingips.update({floatingip.id: floatingip.ip})
+            dic_floatingips.update({floatingip['id']:
+                                    floatingip['floating_ip_address']})
     return {'floatingips': dic_floatingips}
 
 
@@ -129,26 +130,28 @@ def get_tenants(keystone_client):
 
 
 def main():
+    logging.basicConfig()
     logger.info("Generating OpenStack snapshot...")
 
     nova_client = os_utils.get_nova_client()
     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()
 
     if not os_utils.check_credentials():
         logger.error("Please source the openrc credentials and run the" +
                      "script again.")
-        exit(-1)
+        return -1
 
     snapshot = {}
     snapshot.update(get_instances(nova_client))
-    snapshot.update(get_images(nova_client))
+    snapshot.update(get_images(glance_client))
     snapshot.update(get_volumes(cinder_client))
     snapshot.update(get_networks(neutron_client))
     snapshot.update(get_routers(neutron_client))
     snapshot.update(get_security_groups(neutron_client))
-    snapshot.update(get_floatinips(nova_client))
+    snapshot.update(get_floatingips(neutron_client))
     snapshot.update(get_users(keystone_client))
     snapshot.update(get_tenants(keystone_client))
 
@@ -159,7 +162,4 @@ def main():
                      % yaml_file.read())
         logger.debug("NOTE: These objects will NOT be deleted after " +
                      "running the test.")
-
-
-if __name__ == '__main__':
-    main()
+    return 0