Merge "Renamed test application and added new command line arguments."
[snaps.git] / snaps / openstack / tests / create_instance_tests.py
index 0cb0986..765def7 100644 (file)
@@ -258,22 +258,22 @@ class SimpleHealthCheck(OSIntegrationTestCase):
         self.os_image_settings = openstack_tests.cirros_url_image(name=guid + '-image')
 
         if self.image_metadata:
-            if self.image_metadata['disk_url']:
+            if 'disk_url' in self.image_metadata and self.image_metadata['disk_url']:
                 self.os_image_settings.url = self.image_metadata['disk_url']
-            if self.image_metadata['extra_properties']:
+            if 'extra_properties' in self.image_metadata and self.image_metadata['extra_properties']:
                 self.os_image_settings.extra_properties = self.image_metadata['extra_properties']
 
         try:
             # If this is a 3-part image create the kernel and ramdisk images first
             if self.image_metadata:
-                if self.image_metadata['kernel_url']:
+                if 'kernel_url' in self.image_metadata and self.image_metadata['kernel_url']:
                     kernel_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_kernel', url=self.image_metadata['kernel_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, kernel_image_settings))
                     kernel_image = self.image_creators[-1].create()
                     self.os_image_settings.extra_properties['kernel_id'] = kernel_image.id
 
-                if self.image_metadata['ramdisk_url']:
+                if 'ramdisk_url' in self.image_metadata and self.image_metadata['ramdisk_url']:
                     ramdisk_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_ramdisk', url=self.image_metadata['ramdisk_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, ramdisk_image_settings))
@@ -290,7 +290,7 @@ class SimpleHealthCheck(OSIntegrationTestCase):
             # Create Flavor
             self.flavor_creator = OpenStackFlavor(
                 self.admin_os_creds,
-                FlavorSettings(name=guid + '-flavor-name', ram=1024, disk=10, vcpus=1, metadata=self.flavor_metadata))
+                FlavorSettings(name=guid + '-flavor-name', ram=128, disk=10, vcpus=1, metadata=self.flavor_metadata))
             self.flavor_creator.create()
         except Exception as e:
             self.tearDown()
@@ -312,11 +312,17 @@ class SimpleHealthCheck(OSIntegrationTestCase):
         if os.path.isfile(self.keypair_priv_filepath):
             os.remove(self.keypair_priv_filepath)
 
+        if self.network_creator:
+            try:
+                self.network_creator.clean()
+            except Exception as e:
+                logger.error('Unexpected exception cleaning network with message - ' + e.message)
+
         if self.flavor_creator:
             try:
                 self.flavor_creator.clean()
             except Exception as e:
-                logger.error('Unexpected exception cleaning network with message - ' + e.message)
+                logger.error('Unexpected exception cleaning flavor with message - ' + e.message)
 
         if self.image_creators:
             try:
@@ -396,28 +402,28 @@ class CreateInstanceSimpleTests(OSIntegrationTestCase):
         self.image_creators = list()
         self.flavor_creator = None
 
-        self.net_creator = None
+        self.network_creator = None
         self.inst_creator = None
 
         try:
             # Create Image
             # Set any custom parameters sent from the app
             if self.image_metadata:
-                if self.image_metadata['disk_url']:
+                if 'disk_url' in self.image_metadata and self.image_metadata['disk_url']:
                     self.os_image_settings.url = self.image_metadata['disk_url']
-                if self.image_metadata['extra_properties']:
+                if 'extra_properties' in self.image_metadata and  self.image_metadata['extra_properties']:
                     self.os_image_settings.extra_properties = self.image_metadata['extra_properties']
 
             # If this is a 3-part image create the kernel and ramdisk images first
             if self.image_metadata:
-                if self.image_metadata['kernel_url']:
+                if 'kernel_url' in self.image_metadata and self.image_metadata['kernel_url']:
                     kernel_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_kernel', url=self.image_metadata['kernel_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, kernel_image_settings))
                     kernel_image = self.image_creators[-1].create()
                     self.os_image_settings.extra_properties['kernel_id'] = kernel_image.id
 
-                if self.image_metadata['ramdisk_url']:
+                if 'ramdisk_url' in self.image_metadata and self.image_metadata['ramdisk_url']:
                     ramdisk_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_ramdisk', url=self.image_metadata['ramdisk_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, ramdisk_image_settings))
@@ -430,7 +436,7 @@ class CreateInstanceSimpleTests(OSIntegrationTestCase):
             # Create Flavor
             self.flavor_creator = OpenStackFlavor(
                 self.admin_os_creds,
-                FlavorSettings(name=guid + '-flavor-name', ram=2048, disk=10, vcpus=2, metadata=self.flavor_metadata))
+                FlavorSettings(name=guid + '-flavor-name', ram=128, disk=10, vcpus=2, metadata=self.flavor_metadata))
             self.flavor_creator.create()
 
             # Create Network
@@ -460,9 +466,9 @@ class CreateInstanceSimpleTests(OSIntegrationTestCase):
             except Exception as e:
                 logger.error('Unexpected exception cleaning flavor with message - ' + e.message)
 
-        if self.net_creator:
+        if self.network_creator:
             try:
-                self.net_creator.clean()
+                self.network_creator.clean()
             except Exception as e:
                 logger.error('Unexpected exception cleaning network with message - ' + e.message)
 
@@ -537,21 +543,21 @@ class CreateInstanceSingleNetworkTests(OSIntegrationTestCase):
             # Create Image
             # Set any custom parameters sent from the app
             if self.image_metadata:
-                if self.image_metadata['disk_url']:
+                if 'disk_url' in self.image_metadata and self.image_metadata['disk_url']:
                     self.os_image_settings.url = self.image_metadata['disk_url']
-                if self.image_metadata['extra_properties']:
+                if 'extra_properties' in self.image_metadata and self.image_metadata['extra_properties']:
                     self.os_image_settings.extra_properties = self.image_metadata['extra_properties']
 
             # If this is a 3-part image create the kernel and ramdisk images first
             if self.image_metadata:
-                if self.image_metadata['kernel_url']:
+                if 'kernel_url' in self.image_metadata and self.image_metadata['kernel_url']:
                     kernel_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_kernel', url=self.image_metadata['kernel_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, kernel_image_settings))
                     kernel_image = self.image_creators[-1].create()
                     self.os_image_settings.extra_properties['kernel_id'] = kernel_image.id
 
-                if self.image_metadata['ramdisk_url']:
+                if 'ramdisk_url' in self.image_metadata and self.image_metadata['ramdisk_url']:
                     ramdisk_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_ramdisk', url=self.image_metadata['ramdisk_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, ramdisk_image_settings))
@@ -572,7 +578,7 @@ class CreateInstanceSingleNetworkTests(OSIntegrationTestCase):
             # Create Flavor
             self.flavor_creator = OpenStackFlavor(
                 self.admin_os_creds,
-                FlavorSettings(name=guid + '-flavor-name', ram=2048, disk=10, vcpus=2, metadata=self.flavor_metadata))
+                FlavorSettings(name=guid + '-flavor-name', ram=128, disk=10, vcpus=2, metadata=self.flavor_metadata))
             self.flavor_creator.create()
 
             self.keypair_creator = OpenStackKeypair(
@@ -830,21 +836,21 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase):
             # Create Image
             # Set any custom parameters sent from the app
             if self.image_metadata:
-                if self.image_metadata['disk_url']:
+                if 'disk_url' in self.image_metadata and self.image_metadata['disk_url']:
                     self.os_image_settings.url = self.image_metadata['disk_url']
-                if self.image_metadata['extra_properties']:
+                if 'extra_properties' in self.image_metadata and self.image_metadata['extra_properties']:
                     self.os_image_settings.extra_properties = self.image_metadata['extra_properties']
 
             # If this is a 3-part image create the kernel and ramdisk images first
             if self.image_metadata:
-                if self.image_metadata['kernel_url']:
+                if 'kernel_url' in self.image_metadata and self.image_metadata['kernel_url']:
                     kernel_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_kernel', url=self.image_metadata['kernel_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, kernel_image_settings))
                     kernel_image = self.image_creators[-1].create()
                     self.os_image_settings.extra_properties['kernel_id'] = kernel_image.id
 
-                if self.image_metadata['ramdisk_url']:
+                if 'ramdisk_url' in self.image_metadata and self.image_metadata['ramdisk_url']:
                     ramdisk_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_ramdisk', url=self.image_metadata['ramdisk_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, ramdisk_image_settings))
@@ -861,7 +867,7 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase):
             # Create Flavor
             self.flavor_creator = OpenStackFlavor(
                 self.admin_os_creds,
-                FlavorSettings(name=guid + '-flavor-name', ram=2048, disk=10, vcpus=2, metadata=self.flavor_metadata))
+                FlavorSettings(name=guid + '-flavor-name', ram=128, disk=10, vcpus=2, metadata=self.flavor_metadata))
             self.flavor_creator.create()
         except Exception as e:
             self.tearDown()
@@ -1098,21 +1104,21 @@ class CreateInstanceOnComputeHost(OSIntegrationTestCase):
             # Create Image
             # Set any custom parameters sent from the app
             if self.image_metadata:
-                if self.image_metadata['disk_url']:
+                if 'disk_url' in self.image_metadata and self.image_metadata['disk_url']:
                     self.os_image_settings.url = self.image_metadata['disk_url']
-                if self.image_metadata['extra_properties']:
+                if 'extra_properties' in self.image_metadata and self.image_metadata['extra_properties']:
                     self.os_image_settings.extra_properties = self.image_metadata['extra_properties']
 
             # If this is a 3-part image create the kernel and ramdisk images first
             if self.image_metadata:
-                if self.image_metadata['kernel_url']:
+                if 'kernel_url' in self.image_metadata and self.image_metadata['kernel_url']:
                     kernel_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_kernel', url=self.image_metadata['kernel_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, kernel_image_settings))
                     kernel_image = self.image_creators[-1].create()
                     self.os_image_settings.extra_properties['kernel_id'] = kernel_image.id
 
-                if self.image_metadata['ramdisk_url']:
+                if 'ramdisk_url' in self.image_metadata and self.image_metadata['ramdisk_url']:
                     ramdisk_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_ramdisk', url=self.image_metadata['ramdisk_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, ramdisk_image_settings))
@@ -1236,21 +1242,21 @@ class CreateInstancePubPrivNetTests(OSIntegrationTestCase):
             # Create Image
             # Set any custom parameters sent from the app
             if self.image_metadata:
-                if self.image_metadata['disk_url']:
+                if 'disk_url' in self.image_metadata and self.image_metadata['disk_url']:
                     self.os_image_settings.url = self.image_metadata['disk_url']
-                if self.image_metadata['extra_properties']:
+                if 'extra_properties' in self.image_metadata and self.image_metadata['extra_properties']:
                     self.os_image_settings.extra_properties = self.image_metadata['extra_properties']
 
             # If this is a 3-part image create the kernel and ramdisk images first
             if self.image_metadata:
-                if self.image_metadata['kernel_url']:
+                if 'kernel_url' in self.image_metadata and self.image_metadata['kernel_url']:
                     kernel_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_kernel', url=self.image_metadata['kernel_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, kernel_image_settings))
                     kernel_image = self.image_creators[-1].create()
                     self.os_image_settings.extra_properties['kernel_id'] = kernel_image.id
 
-                if self.image_metadata['ramdisk_url']:
+                if 'ramdisk_url' in self.image_metadata and self.image_metadata['ramdisk_url']:
                     ramdisk_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_ramdisk', url=self.image_metadata['ramdisk_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, ramdisk_image_settings))
@@ -1277,7 +1283,7 @@ class CreateInstancePubPrivNetTests(OSIntegrationTestCase):
             # Create Flavor
             self.flavor_creator = OpenStackFlavor(
                 self.admin_os_creds,
-                FlavorSettings(name=self.guid + '-flavor-name', ram=2048, disk=10, vcpus=2,
+                FlavorSettings(name=self.guid + '-flavor-name', ram=512, disk=10, vcpus=2,
                                metadata=self.flavor_metadata))
             self.flavor_creator.create()
 
@@ -1425,21 +1431,21 @@ class InstanceSecurityGroupTests(OSIntegrationTestCase):
             # Create Image
             # Set any custom parameters sent from the app
             if self.image_metadata:
-                if self.image_metadata['disk_url']:
+                if 'disk_url' in self.image_metadata and self.image_metadata['disk_url']:
                     self.os_image_settings.url = self.image_metadata['disk_url']
-                if self.image_metadata['extra_properties']:
+                if 'extra_properties' in self.image_metadata and self.image_metadata['extra_properties']:
                     self.os_image_settings.extra_properties = self.image_metadata['extra_properties']
 
             # If this is a 3-part image create the kernel and ramdisk images first
             if self.image_metadata:
-                if self.image_metadata['kernel_url']:
+                if 'kernel_url' in self.image_metadata and self.image_metadata['kernel_url']:
                     kernel_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_kernel', url=self.image_metadata['kernel_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, kernel_image_settings))
                     kernel_image = self.image_creators[-1].create()
                     self.os_image_settings.extra_properties['kernel_id'] = kernel_image.id
 
-                if self.image_metadata['ramdisk_url']:
+                if 'ramdisk_url' in self.image_metadata and self.image_metadata['ramdisk_url']:
                     ramdisk_image_settings = openstack_tests.cirros_url_image(
                         name=self.os_image_settings.name+'_ramdisk', url=self.image_metadata['ramdisk_url'])
                     self.image_creators.append(OpenStackImage(self.os_creds, ramdisk_image_settings))
@@ -1456,7 +1462,7 @@ class InstanceSecurityGroupTests(OSIntegrationTestCase):
             # Create Flavor
             self.flavor_creator = OpenStackFlavor(
                 self.admin_os_creds,
-                FlavorSettings(name=self.guid + '-flavor-name', ram=2048, disk=10, vcpus=2,
+                FlavorSettings(name=self.guid + '-flavor-name', ram=128, disk=10, vcpus=2,
                                metadata=self.flavor_metadata))
             self.flavor_creator.create()
 
@@ -1715,16 +1721,18 @@ class CreateInstanceFromThreePartImage(OSIntegrationTestCase):
             # Create Images
             # Set properties
             properties = {}
-            if self.image_metadata and self.image_metadata['extra_properties']:
-                properties = self.image_metadata['extra_properties']
+            if self.image_metadata:
+                if 'extra_properties' in self.image_metadata and self.image_metadata['extra_properties']:
+                    properties = self.image_metadata['extra_properties']
 
             # Create the kernel image
             kernel_image_settings = openstack_tests.cirros_url_image(
                 name=self.image_name+'_kernel',
                 url='http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-kernel')
 
-            if self.image_metadata and self.image_metadata['kernel_url']:
-                kernel_image_settings.url = self.image_metadata['kernel_url']
+            if self.image_metadata:
+                if 'kernel_url' in self.image_metadata and self.image_metadata['kernel_url']:
+                    kernel_image_settings.url = self.image_metadata['kernel_url']
 
             self.image_creators.append(OpenStackImage(self.os_creds, kernel_image_settings))
             kernel_image = self.image_creators[-1].create()
@@ -1733,8 +1741,10 @@ class CreateInstanceFromThreePartImage(OSIntegrationTestCase):
             ramdisk_image_settings = openstack_tests.cirros_url_image(
                 name=self.image_name+'_ramdisk',
                 url='http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-initramfs')
-            if self.image_metadata and self.image_metadata['ramdisk_url']:
-                ramdisk_image_settings.url = self.image_metadata['ramdisk_url']
+
+            if self.image_metadata:
+                if 'ramdisk_url' in self.image_metadata and self.image_metadata['ramdisk_url']:
+                    ramdisk_image_settings.url = self.image_metadata['ramdisk_url']
 
             self.image_creators.append(OpenStackImage(self.os_creds, ramdisk_image_settings))
             ramdisk_image = self.image_creators[-1].create()
@@ -1744,8 +1754,9 @@ class CreateInstanceFromThreePartImage(OSIntegrationTestCase):
             os_image_settings = openstack_tests.cirros_url_image(
                 name=self.image_name,
                 url='http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img')
-            if self.image_metadata and self.image_metadata['disk_url']:
-                os_image_settings.url = self.image_metadata['disk_url']
+            if self.image_metadata:
+                if 'disk_url' in self.image_metadata and self.image_metadata['disk_url']:
+                    os_image_settings.url = self.image_metadata['disk_url']
 
             properties['kernel_id'] = kernel_image.id
             properties['ramdisk_id'] = ramdisk_image.id
@@ -1757,7 +1768,7 @@ class CreateInstanceFromThreePartImage(OSIntegrationTestCase):
             # Create Flavor
             self.flavor_creator = OpenStackFlavor(
                 self.admin_os_creds,
-                FlavorSettings(name=guid + '-flavor-name', ram=2048, disk=10, vcpus=2, metadata=self.flavor_metadata))
+                FlavorSettings(name=guid + '-flavor-name', ram=128, disk=10, vcpus=2, metadata=self.flavor_metadata))
             self.flavor_creator.create()
 
             # Create Network