diff options
Diffstat (limited to 'snaps/openstack/tests')
-rw-r--r-- | snaps/openstack/tests/create_flavor_tests.py | 82 | ||||
-rw-r--r-- | snaps/openstack/tests/create_image_tests.py | 56 | ||||
-rw-r--r-- | snaps/openstack/tests/create_instance_tests.py | 179 | ||||
-rw-r--r-- | snaps/openstack/tests/create_keypairs_tests.py | 35 | ||||
-rw-r--r-- | snaps/openstack/tests/create_network_tests.py | 98 | ||||
-rw-r--r-- | snaps/openstack/tests/create_project_tests.py | 26 | ||||
-rw-r--r-- | snaps/openstack/tests/create_qos_tests.py | 33 | ||||
-rw-r--r-- | snaps/openstack/tests/create_router_tests.py | 76 | ||||
-rw-r--r-- | snaps/openstack/tests/create_stack_tests.py | 137 | ||||
-rw-r--r-- | snaps/openstack/tests/create_user_tests.py | 3 | ||||
-rw-r--r-- | snaps/openstack/tests/create_volume_tests.py | 33 | ||||
-rw-r--r-- | snaps/openstack/tests/create_volume_type_tests.py | 29 | ||||
-rw-r--r-- | snaps/openstack/tests/openstack_tests.py | 45 | ||||
-rw-r--r-- | snaps/openstack/tests/os_source_file_test.py | 12 |
14 files changed, 432 insertions, 412 deletions
diff --git a/snaps/openstack/tests/create_flavor_tests.py b/snaps/openstack/tests/create_flavor_tests.py index 3eb07bd..f84355d 100644 --- a/snaps/openstack/tests/create_flavor_tests.py +++ b/snaps/openstack/tests/create_flavor_tests.py @@ -15,9 +15,9 @@ import unittest import uuid +from snaps.config.flavor import FlavorConfig, FlavorConfigError from snaps.openstack import create_flavor -from snaps.openstack.create_flavor import FlavorSettings, OpenStackFlavor, \ - FlavorSettingsError +from snaps.openstack.create_flavor import OpenStackFlavor, FlavorSettings from snaps.openstack.tests.os_source_file_test import OSComponentTestCase from snaps.openstack.utils import nova_utils @@ -30,169 +30,169 @@ class FlavorSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings() def test_empty_config(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(config=dict()) def test_name_only(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo') def test_config_with_name_only(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(config={'name': 'foo'}) def test_name_ram_only(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1) def test_config_with_name_ram_only(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(config={'name': 'foo', 'ram': 1}) def test_name_ram_disk_only(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk=1) def test_config_with_name_ram_disk_only(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(config={'name': 'foo', 'ram': 1, 'disk': 1}) def test_ram_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram='bar', disk=2, vcpus=3, ephemeral=4, swap=5, rxtx_factor=6.0, is_public=False) def test_config_ram_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 'bar', 'disk': 2, 'vcpus': 3, 'ephemeral': 4, 'swap': 5, 'rxtx_factor': 6.0, 'is_public': False}) def test_ram_float(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1.5, disk=2, vcpus=3, ephemeral=4, swap=5, rxtx_factor=6.0, is_public=False) def test_config_ram_float(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1.5, 'disk': 2, 'vcpus': 3, 'ephemeral': 4, 'swap': 5, 'rxtx_factor': 6.0, 'is_public': False}) def test_disk_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk='bar', vcpus=3, ephemeral=4, swap=5, rxtx_factor=6.0, is_public=False) def test_config_disk_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1, 'disk': 'bar', 'vcpus': 3, 'ephemeral': 4, 'swap': 5, 'rxtx_factor': 6.0, 'is_public': False}) def test_disk_float(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk=2.5, vcpus=3, ephemeral=4, swap=5, rxtx_factor=6.0, is_public=False) def test_config_disk_float(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1, 'disk': 2.5, 'vcpus': 3, 'ephemeral': 4, 'swap': 5, 'rxtx_factor': 6.0, 'is_public': False}) def test_vcpus_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk=2, vcpus='bar', ephemeral=4, swap=5, rxtx_factor=6.0, is_public=False) def test_config_vcpus_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1, 'disk': 2, 'vcpus': 'bar', 'ephemeral': 4, 'swap': 5, 'rxtx_factor': 6.0, 'is_public': False}) def test_ephemeral_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk=2, vcpus=3, ephemeral='bar', swap=5, rxtx_factor=6.0, is_public=False) def test_config_ephemeral_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1, 'disk': 2, 'vcpus': 3, 'ephemeral': 'bar', 'swap': 5, 'rxtx_factor': 6.0, 'is_public': False}) def test_ephemeral_float(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk=2, vcpus=3, ephemeral=4.5, swap=5, rxtx_factor=6.0, is_public=False) def test_config_ephemeral_float(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1, 'disk': 2, 'vcpus': 3, 'ephemeral': 4.5, 'swap': 5, 'rxtx_factor': 6.0, 'is_public': False}) def test_swap_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk=2, vcpus=3, ephemeral=4, swap='bar', rxtx_factor=6.0, is_public=False) def test_config_swap_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1, 'disk': 2, 'vcpus': 3, 'ephemeral': 4, 'swap': 'bar', 'rxtx_factor': 6.0, 'is_public': False}) def test_swap_float(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk=2, vcpus=3, ephemeral=4, swap=5.5, rxtx_factor=6.0, is_public=False) def test_config_swap_float(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1, 'disk': 2, 'vcpus': 3, 'ephemeral': 4, 'swap': 5.5, 'rxtx_factor': 6.0, 'is_public': False}) def test_rxtx_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk=2, vcpus=3, ephemeral=4, swap=5, rxtx_factor='bar', is_public=False) def test_config_rxtx_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1, 'disk': 2, 'vcpus': 3, 'ephemeral': 4, 'swap': 5, 'rxtx_factor': 'bar', 'is_public': False}) def test_is_pub_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings(name='foo', ram=1, disk=2, vcpus=3, ephemeral=4, swap=5, rxtx_factor=6.0, is_public='bar') def test_config_is_pub_string(self): - with self.assertRaises(FlavorSettingsError): + with self.assertRaises(FlavorConfigError): FlavorSettings( config={'name': 'foo', 'ram': 1, 'disk': 2, 'vcpus': 3, 'ephemeral': 4, 'swap': 5, @@ -291,8 +291,8 @@ class CreateFlavorTests(OSComponentTestCase): Tests the creation of an OpenStack flavor. """ # Create Flavor - flavor_settings = FlavorSettings(name=self.flavor_name, ram=1, disk=1, - vcpus=1) + flavor_settings = FlavorConfig( + name=self.flavor_name, ram=1, disk=1, vcpus=1) self.flavor_creator = OpenStackFlavor(self.os_creds, flavor_settings) flavor = self.flavor_creator.create() self.assertTrue(validate_flavor(self.nova, flavor_settings, flavor)) @@ -303,8 +303,8 @@ class CreateFlavorTests(OSComponentTestCase): to ensure it has not been done twice. """ # Create Flavor - flavor_settings = FlavorSettings(name=self.flavor_name, ram=1, disk=1, - vcpus=1) + flavor_settings = FlavorConfig( + name=self.flavor_name, ram=1, disk=1, vcpus=1) self.flavor_creator = OpenStackFlavor(self.os_creds, flavor_settings) flavor = self.flavor_creator.create() self.assertTrue(validate_flavor(self.nova, flavor_settings, flavor)) @@ -319,8 +319,8 @@ class CreateFlavorTests(OSComponentTestCase): Tests the creation and cleanup of an OpenStack flavor. """ # Create Flavor - flavor_settings = FlavorSettings(name=self.flavor_name, ram=1, disk=1, - vcpus=1) + flavor_settings = FlavorConfig( + name=self.flavor_name, ram=1, disk=1, vcpus=1) self.flavor_creator = OpenStackFlavor(self.os_creds, flavor_settings) flavor = self.flavor_creator.create() self.assertTrue(validate_flavor(self.nova, flavor_settings, flavor)) @@ -339,8 +339,8 @@ class CreateFlavorTests(OSComponentTestCase): raise any exceptions. """ # Create Flavor - flavor_settings = FlavorSettings(name=self.flavor_name, ram=1, disk=1, - vcpus=1) + flavor_settings = FlavorConfig( + name=self.flavor_name, ram=1, disk=1, vcpus=1) self.flavor_creator = OpenStackFlavor(self.os_creds, flavor_settings) flavor = self.flavor_creator.create() self.assertTrue(validate_flavor(self.nova, flavor_settings, flavor)) @@ -362,7 +362,7 @@ class CreateFlavorTests(OSComponentTestCase): raise any exceptions. """ # Create Flavor - flavor_settings = FlavorSettings( + flavor_settings = FlavorConfig( name=self.flavor_name, ram=1, disk=1, vcpus=1, ephemeral=2, swap=3, rxtx_factor=2.2, is_public=False, metadata=create_flavor.MEM_PAGE_SIZE_ANY) diff --git a/snaps/openstack/tests/create_image_tests.py b/snaps/openstack/tests/create_image_tests.py index f70a71c..9965f87 100644 --- a/snaps/openstack/tests/create_image_tests.py +++ b/snaps/openstack/tests/create_image_tests.py @@ -27,9 +27,10 @@ import uuid import os from snaps import file_utils +from snaps.config.image import ImageConfigError from snaps.openstack import create_image -from snaps.openstack.create_image import (ImageSettings, ImageCreationError, - ImageSettingsError) +from snaps.openstack.create_image import ImageSettings, ImageCreationError +from snaps.config.image import ImageConfig from snaps.openstack.tests import openstack_tests from snaps.openstack.tests.os_source_file_test import OSIntegrationTestCase from snaps.openstack.utils import glance_utils @@ -42,38 +43,40 @@ logger = logging.getLogger('create_image_tests') class ImageSettingsUnitTests(unittest.TestCase): """ Tests the construction of the ImageSettings class + To be removed once the deprecated class ImageSettings is finally removed + from the source tree """ def test_no_params(self): - with self.assertRaises(ImageSettingsError): + with self.assertRaises(ImageConfigError): ImageSettings() def test_empty_config(self): - with self.assertRaises(ImageSettingsError): + with self.assertRaises(ImageConfigError): ImageSettings(**dict()) def test_name_only(self): - with self.assertRaises(ImageSettingsError): + with self.assertRaises(ImageConfigError): ImageSettings(name='foo') def test_config_with_name_only(self): - with self.assertRaises(ImageSettingsError): + with self.assertRaises(ImageConfigError): ImageSettings(**{'name': 'foo'}) def test_name_user_only(self): - with self.assertRaises(ImageSettingsError): + with self.assertRaises(ImageConfigError): ImageSettings(name='foo', image_user='bar') def test_config_with_name_user_only(self): - with self.assertRaises(ImageSettingsError): + with self.assertRaises(ImageConfigError): ImageSettings(**{'name': 'foo', 'image_user': 'bar'}) def test_name_user_format_only(self): - with self.assertRaises(ImageSettingsError): + with self.assertRaises(ImageConfigError): ImageSettings(name='foo', image_user='bar', img_format='qcow2') def test_config_with_name_user_format_only(self): - with self.assertRaises(ImageSettingsError): + with self.assertRaises(ImageConfigError): ImageSettings( **{'name': 'foo', 'image_user': 'bar', 'format': 'qcow2'}) @@ -448,8 +451,8 @@ class CreateImageSuccessTests(OSIntegrationTestCase): self.assertEqual(image1.properties, retrieved_image.properties) # Should be retrieving the instance data - image_2_settings = ImageSettings(name=self.image_settings.name, - image_user='foo', exists=True) + image_2_settings = ImageConfig(name=self.image_settings.name, + image_user='foo', exists=True) os_image_2 = create_image.OpenStackImage(self.os_creds, image_2_settings) image2 = os_image_2.create() @@ -478,8 +481,8 @@ class CreateImageNegativeTests(OSIntegrationTestCase): Expect an ImageCreationError when the image name does not exist when a file or URL has not been configured """ - os_image_settings = ImageSettings(name='foo', image_user='bar', - exists=True) + os_image_settings = ImageConfig(name='foo', image_user='bar', + exists=True) self.image_creator = create_image.OpenStackImage(self.os_creds, os_image_settings) @@ -497,10 +500,11 @@ class CreateImageNegativeTests(OSIntegrationTestCase): name=self.image_name) self.image_creator = create_image.OpenStackImage( self.os_creds, - create_image.ImageSettings(name=os_image_settings.name, - image_user=os_image_settings.image_user, - img_format=os_image_settings.format, - url="http://foo.bar")) + ImageConfig( + name=os_image_settings.name, + image_user=os_image_settings.image_user, + img_format=os_image_settings.format, + url="http://foo.bar")) try: self.image_creator.create() @@ -519,10 +523,10 @@ class CreateImageNegativeTests(OSIntegrationTestCase): name=self.image_name) self.image_creator = create_image.OpenStackImage( self.os_creds, - create_image.ImageSettings(name=os_image_settings.name, - image_user=os_image_settings.image_user, - img_format='foo', - url=os_image_settings.url)) + ImageConfig( + name=os_image_settings.name, + image_user=os_image_settings.image_user, + img_format='foo', url=os_image_settings.url)) with self.assertRaises(Exception): self.image_creator.create() @@ -535,10 +539,10 @@ class CreateImageNegativeTests(OSIntegrationTestCase): name=self.image_name) self.image_creator = create_image.OpenStackImage( self.os_creds, - create_image.ImageSettings(name=os_image_settings.name, - image_user=os_image_settings.image_user, - img_format=os_image_settings.format, - image_file="/foo/bar.qcow")) + ImageConfig( + name=os_image_settings.name, + image_user=os_image_settings.image_user, + img_format=os_image_settings.format, image_file="/foo/bar.qcow")) with self.assertRaises(IOError): self.image_creator.create() diff --git a/snaps/openstack/tests/create_instance_tests.py b/snaps/openstack/tests/create_instance_tests.py index cd4e4da..f806100 100644 --- a/snaps/openstack/tests/create_instance_tests.py +++ b/snaps/openstack/tests/create_instance_tests.py @@ -24,20 +24,25 @@ from neutronclient.common.exceptions import InvalidIpForSubnetClient from novaclient.exceptions import BadRequest from snaps import file_utils +from snaps.config.flavor import FlavorConfig +from snaps.config.image import ImageConfig +from snaps.config.keypair import KeypairConfig +from snaps.config.network import PortConfig, NetworkConfig, SubnetConfig +from snaps.config.router import RouterConfig +from snaps.config.volume import VolumeConfig from snaps.openstack import create_network, create_router -from snaps.openstack.create_flavor import OpenStackFlavor, FlavorSettings -from snaps.openstack.create_image import OpenStackImage, ImageSettings +from snaps.openstack.create_flavor import OpenStackFlavor +from snaps.openstack.create_image import OpenStackImage from snaps.openstack.create_instance import ( VmInstanceSettings, OpenStackVmInstance, FloatingIpSettings, VmInstanceSettingsError, FloatingIpSettingsError) -from snaps.openstack.create_keypairs import OpenStackKeypair, KeypairSettings -from snaps.openstack.create_network import ( - OpenStackNetwork, PortSettings, NetworkSettings, SubnetSettings) -from snaps.openstack.create_router import OpenStackRouter, RouterSettings +from snaps.openstack.create_keypairs import OpenStackKeypair +from snaps.openstack.create_network import OpenStackNetwork +from snaps.openstack.create_router import OpenStackRouter from snaps.openstack.create_security_group import ( SecurityGroupSettings, OpenStackSecurityGroup, SecurityGroupRuleSettings, Direction, Protocol) -from snaps.openstack.create_volume import OpenStackVolume, VolumeSettings +from snaps.openstack.create_volume import OpenStackVolume from snaps.openstack.tests import openstack_tests, validation_utils from snaps.openstack.tests.os_source_file_test import ( OSIntegrationTestCase, OSComponentTestCase) @@ -80,7 +85,7 @@ class VmInstanceSettingsUnitTests(unittest.TestCase): VmInstanceSettings(config={'name': 'foo', 'flavor': 'bar'}) def test_name_flavor_port_only(self): - port_settings = PortSettings(name='foo-port', network_name='bar-net') + port_settings = PortConfig(name='foo-port', network_name='bar-net') settings = VmInstanceSettings(name='foo', flavor='bar', port_settings=[port_settings]) self.assertEqual('foo', settings.name) @@ -98,7 +103,7 @@ class VmInstanceSettingsUnitTests(unittest.TestCase): self.assertIsNone(settings.volume_names) def test_config_with_name_flavor_port_only(self): - port_settings = PortSettings(name='foo-port', network_name='bar-net') + port_settings = PortConfig(name='foo-port', network_name='bar-net') settings = VmInstanceSettings( **{'name': 'foo', 'flavor': 'bar', 'ports': [port_settings]}) self.assertEqual('foo', settings.name) @@ -116,7 +121,7 @@ class VmInstanceSettingsUnitTests(unittest.TestCase): self.assertIsNone(settings.volume_names) def test_all(self): - port_settings = PortSettings(name='foo-port', network_name='bar-net') + port_settings = PortConfig(name='foo-port', network_name='bar-net') fip_settings = FloatingIpSettings(name='foo-fip', port_name='bar-port', router_name='foo-bar-router') @@ -148,7 +153,7 @@ class VmInstanceSettingsUnitTests(unittest.TestCase): self.assertEqual('vol1', settings.volume_names[0]) def test_config_all(self): - port_settings = PortSettings(name='foo-port', network_name='bar-net') + port_settings = PortConfig(name='foo-port', network_name='bar-net') fip_settings = FloatingIpSettings(name='foo-fip', port_name='bar-port', router_name='foo-bar-router') @@ -298,7 +303,7 @@ class SimpleHealthCheck(OSIntegrationTestCase): self.priv_net_config = openstack_tests.get_priv_net_config( net_name=guid + '-priv-net', subnet_name=guid + '-priv-subnet') - self.port_settings = PortSettings( + self.port_settings = PortConfig( name=self.port_1_name, network_name=self.priv_net_config.network_settings.name) @@ -321,8 +326,8 @@ class SimpleHealthCheck(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=guid + '-flavor-name', ram=256, disk=10, - vcpus=1, metadata=self.flavor_metadata)) + FlavorConfig(name=guid + '-flavor-name', ram=256, disk=10, + vcpus=1, metadata=self.flavor_metadata)) self.flavor_creator.create() except Exception as e: self.tearDown() @@ -428,8 +433,8 @@ class CreateInstanceSimpleTests(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=guid + '-flavor-name', ram=256, disk=10, - vcpus=2, metadata=self.flavor_metadata)) + FlavorConfig(name=guid + '-flavor-name', ram=256, disk=10, + vcpus=2, metadata=self.flavor_metadata)) self.flavor_creator.create() # Create Network @@ -437,7 +442,7 @@ class CreateInstanceSimpleTests(OSIntegrationTestCase): self.os_creds, net_config.network_settings) self.network_creator.create() - self.port_settings = PortSettings( + self.port_settings = PortConfig( name=guid + '-port', network_name=net_config.network_settings.name) @@ -566,12 +571,12 @@ class CreateInstanceSingleNetworkTests(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=guid + '-flavor-name', ram=256, disk=10, - vcpus=2, metadata=self.flavor_metadata)) + FlavorConfig(name=guid + '-flavor-name', ram=256, disk=10, + vcpus=2, metadata=self.flavor_metadata)) self.flavor_creator.create() self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings( + self.os_creds, KeypairConfig( name=self.keypair_name, public_filepath=self.keypair_pub_filepath, private_filepath=self.keypair_priv_filepath)) @@ -663,7 +668,7 @@ class CreateInstanceSingleNetworkTests(OSIntegrationTestCase): """ ip_1 = '10.55.1.100' sub_settings = self.pub_net_config.network_settings.subnet_settings - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.pub_net_config.network_settings.name, ip_addrs=[ @@ -693,7 +698,7 @@ class CreateInstanceSingleNetworkTests(OSIntegrationTestCase): Tests the ability to access a VM via SSH and a floating IP when it has been assigned prior to being active. """ - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.pub_net_config.network_settings.name) @@ -728,7 +733,7 @@ class CreateInstanceSingleNetworkTests(OSIntegrationTestCase): Tests the ability to access a VM via SSH and a floating IP when it has been assigned prior to being active. """ - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.pub_net_config.network_settings.name) @@ -765,7 +770,7 @@ class CreateInstanceSingleNetworkTests(OSIntegrationTestCase): Tests the ability to access a VM via SSH and a floating IP via a creator that is identical to the original creator. """ - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.pub_net_config.network_settings.name) @@ -844,13 +849,13 @@ class CreateInstanceIPv6NetworkTests(OSIntegrationTestCase): self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings( + FlavorConfig( name=self.guid + '-flavor-name', ram=256, disk=10, vcpus=2, metadata=self.flavor_metadata)) self.flavor_creator.create() self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings( + self.os_creds, KeypairConfig( name=self.keypair_name, public_filepath=self.keypair_pub_filepath, private_filepath=self.keypair_priv_filepath)) @@ -940,12 +945,12 @@ class CreateInstanceIPv6NetworkTests(OSIntegrationTestCase): Tests the ability to assign an IPv4 floating IP to an IPv6 overlay network when the external network does not have an IPv6 subnet. """ - subnet_settings = SubnetSettings( + subnet_settings = SubnetConfig( name=self.guid + '-subnet', cidr='1:1:0:0:0:0:0:0/64', ip_version=6) - network_settings = NetworkSettings( + network_settings = NetworkConfig( name=self.guid + '-net', subnet_settings=[subnet_settings]) - router_settings = RouterSettings( + router_settings = RouterConfig( name=self.guid + '-router', external_gateway=self.ext_net_name, internal_subnets=[subnet_settings.name]) @@ -959,7 +964,7 @@ class CreateInstanceIPv6NetworkTests(OSIntegrationTestCase): self.os_creds, router_settings) self.router_creator.create() - port_settings = PortSettings( + port_settings = PortConfig( name=self.port1_name, network_name=network_settings.name) instance_settings = VmInstanceSettings( @@ -984,16 +989,16 @@ class CreateInstanceIPv6NetworkTests(OSIntegrationTestCase): Tests the ability to assign an IPv4 floating IP to an IPv6 overlay network when the external network does not have an IPv6 subnet. """ - subnet4_settings = SubnetSettings( + subnet4_settings = SubnetConfig( name=self.guid + '-subnet4', cidr='10.0.1.0/24', ip_version=4) - subnet6_settings = SubnetSettings( + subnet6_settings = SubnetConfig( name=self.guid + '-subnet6', cidr='1:1:0:0:0:0:0:0/64', ip_version=6) - network_settings = NetworkSettings( + network_settings = NetworkConfig( name=self.guid + '-net', subnet_settings=[subnet4_settings, subnet6_settings]) - router_settings = RouterSettings( + router_settings = RouterConfig( name=self.guid + '-router', external_gateway=self.ext_net_name, internal_subnets=[subnet4_settings.name]) @@ -1007,7 +1012,7 @@ class CreateInstanceIPv6NetworkTests(OSIntegrationTestCase): self.os_creds, router_settings) self.router_creator.create() - port_settings = PortSettings( + port_settings = PortConfig( name=self.port1_name, network_name=network_settings.name) instance_settings = VmInstanceSettings( @@ -1074,8 +1079,8 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=guid + '-flavor-name', ram=256, disk=10, - vcpus=2, metadata=self.flavor_metadata)) + FlavorConfig(name=guid + '-flavor-name', ram=256, disk=10, + vcpus=2, metadata=self.flavor_metadata)) self.flavor_creator.create() except Exception as e: self.tearDown() @@ -1125,7 +1130,7 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase): """ ip = '10.55.0.101' sub_settings = self.net_config.network_settings.subnet_settings - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.net_config.network_settings.name, ip_addrs=[{'subnet_name': sub_settings[0].name, 'ip': ip}]) @@ -1152,7 +1157,7 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase): """ ip = '10.66.0.101' sub_settings = self.net_config.network_settings.subnet_settings - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.net_config.network_settings.name, ip_addrs=[{'subnet_name': sub_settings[0].name, 'ip': ip}]) @@ -1175,7 +1180,7 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase): the MAC address is assigned. """ mac_addr = '0a:1b:2c:3d:4e:5f' - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.net_config.network_settings.name, mac_address=mac_addr) @@ -1199,7 +1204,7 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase): invalid MAC address value is being assigned. This should raise an Exception """ - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.net_config.network_settings.name, mac_address='foo') @@ -1224,7 +1229,7 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase): ip = '10.55.0.101' mac_addr = '0a:1b:2c:3d:4e:5f' sub_settings = self.net_config.network_settings.subnet_settings - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.net_config.network_settings.name, mac_address=mac_addr, @@ -1255,7 +1260,7 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase): ip = '10.55.0.101' mac_addr = '0a:1b:2c:3d:4e:5f' pair = {'ip_address': ip, 'mac_address': mac_addr} - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.net_config.network_settings.name, allowed_address_pairs=[pair]) @@ -1287,7 +1292,7 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase): pair = {'ip_address': ip, 'mac_address': mac_addr} pairs = set() pairs.add((ip, mac_addr)) - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.net_config.network_settings.name, allowed_address_pairs=[pair]) @@ -1313,7 +1318,7 @@ class CreateInstancePortManipulationTests(OSIntegrationTestCase): pair = {'ip_address': ip, 'mac_address': mac_addr} pairs = set() pairs.add((ip, mac_addr)) - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_1_name, network_name=self.net_config.network_settings.name, allowed_address_pairs=[pair]) @@ -1367,8 +1372,8 @@ class CreateInstanceOnComputeHost(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=guid + '-flavor-name', ram=512, disk=1, - vcpus=1, metadata=self.flavor_metadata)) + FlavorConfig(name=guid + '-flavor-name', ram=512, disk=1, + vcpus=1, metadata=self.flavor_metadata)) self.flavor_creator.create() # Create Image @@ -1430,7 +1435,7 @@ class CreateInstanceOnComputeHost(OSIntegrationTestCase): for zone in zone_hosts: inst_name = self.vm_inst_name + '-' + zone ctr += 1 - port_settings = PortSettings( + port_settings = PortConfig( name=self.port_base_name + '-' + str(ctr), network_name=self.priv_net_config.network_settings.name) @@ -1533,14 +1538,14 @@ class CreateInstancePubPrivNetTests(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=self.guid + '-flavor-name', ram=512, - disk=10, vcpus=2, - metadata=self.flavor_metadata)) + FlavorConfig(name=self.guid + '-flavor-name', ram=512, + disk=10, vcpus=2, + metadata=self.flavor_metadata)) self.flavor_creator.create() # Create Keypair self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings( + self.os_creds, KeypairConfig( name=self.keypair_name, public_filepath=self.keypair_pub_filepath, private_filepath=self.keypair_priv_filepath)) @@ -1642,7 +1647,7 @@ class CreateInstancePubPrivNetTests(OSIntegrationTestCase): ports_settings = [] ctr = 1 for network_creator in self.network_creators: - ports_settings.append(PortSettings( + ports_settings.append(PortConfig( name=self.guid + '-port-' + str(ctr), network_name=network_creator.network_settings.name)) ctr += 1 @@ -1729,12 +1734,12 @@ class InstanceSecurityGroupTests(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=self.guid + '-flavor-name', ram=256, - disk=10, vcpus=2, - metadata=self.flavor_metadata)) + FlavorConfig(name=self.guid + '-flavor-name', ram=256, + disk=10, vcpus=2, + metadata=self.flavor_metadata)) self.flavor_creator.create() - self.port_settings = PortSettings( + self.port_settings = PortConfig( name=self.guid + '-port', network_name=net_config.network_settings.name) except Exception as e: @@ -2063,8 +2068,8 @@ class CreateInstanceFromThreePartImage(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=guid + '-flavor-name', ram=256, disk=10, - vcpus=2, metadata=self.flavor_metadata)) + FlavorConfig(name=guid + '-flavor-name', ram=256, disk=10, + vcpus=2, metadata=self.flavor_metadata)) self.flavor_creator.create() # Create Network @@ -2072,7 +2077,7 @@ class CreateInstanceFromThreePartImage(OSIntegrationTestCase): self.os_creds, net_config.network_settings) self.network_creator.create() - self.port_settings = PortSettings( + self.port_settings = PortConfig( name=guid + '-port', network_name=net_config.network_settings.name) except Exception as e: @@ -2167,7 +2172,7 @@ class CreateInstanceMockOfflineTests(OSComponentTestCase): self.priv_net_config = openstack_tests.get_priv_net_config( net_name=self.guid + '-priv-net', subnet_name=self.guid + '-priv-subnet') - self.port_settings = PortSettings( + self.port_settings = PortConfig( name=self.port_1_name, network_name=self.priv_net_config.network_settings.name) @@ -2184,7 +2189,7 @@ class CreateInstanceMockOfflineTests(OSComponentTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.os_creds, - FlavorSettings( + FlavorConfig( name=self.guid + '-flavor-name', ram=256, disk=10, vcpus=1)) self.flavor_creator.create() @@ -2316,9 +2321,9 @@ class CreateInstanceMockOfflineTests(OSComponentTestCase): image_settings = self.image_creator.image_settings test_image_creator = OpenStackImage( self.os_creds, - ImageSettings(name=image_settings.name, - image_user=image_settings.image_user, - exists=True)) + ImageConfig( + name=image_settings.name, image_user=image_settings.image_user, + exists=True)) test_image_creator.create() self.assertEqual(self.image_creator.get_image().id, test_image_creator.get_image().id) @@ -2611,9 +2616,9 @@ class CreateInstanceMockOfflineTests(OSComponentTestCase): image_settings = self.image_creator.image_settings test_image_creator = OpenStackImage( self.os_creds, - ImageSettings(name=image_settings.name, - image_user=image_settings.image_user, - exists=True)) + ImageConfig( + name=image_settings.name, image_user=image_settings.image_user, + exists=True)) test_image_creator.create() self.assertEqual(self.image_creator.get_image().id, test_image_creator.get_image().id) @@ -2665,16 +2670,16 @@ class CreateInstanceTwoNetTests(OSIntegrationTestCase): self.vm_inst2_name = self.guid + '-inst2' self.port_1_name = self.guid + '-vm1-port' self.port_2_name = self.guid + '-vm2-port' - self.net_config_1 = NetworkSettings( + self.net_config_1 = NetworkConfig( name=self.guid + '-net1', subnet_settings=[ - create_network.SubnetSettings( + create_network.SubnetConfig( cidr=cidr1, name=self.guid + '-subnet1', gateway_ip=static_gateway_ip1)]) - self.net_config_2 = NetworkSettings( + self.net_config_2 = NetworkConfig( name=self.guid + '-net2', subnet_settings=[ - create_network.SubnetSettings( + create_network.SubnetConfig( cidr=cidr2, name=self.guid + '-subnet2', gateway_ip=static_gateway_ip2)]) @@ -2698,7 +2703,7 @@ class CreateInstanceTwoNetTests(OSIntegrationTestCase): network_creator.create() port_settings = [ - create_network.PortSettings( + create_network.PortConfig( name=self.guid + '-router-port1', ip_addrs=[{ 'subnet_name': @@ -2707,7 +2712,7 @@ class CreateInstanceTwoNetTests(OSIntegrationTestCase): }], network_name=self.net_config_1.name, project_name=self.os_creds.project_name), - create_network.PortSettings( + create_network.PortConfig( name=self.guid + '-router-port2', ip_addrs=[{ 'subnet_name': @@ -2717,8 +2722,8 @@ class CreateInstanceTwoNetTests(OSIntegrationTestCase): network_name=self.net_config_2.name, project_name=self.os_creds.project_name)] - router_settings = RouterSettings(name=self.guid + '-pub-router', - port_settings=port_settings) + router_settings = RouterConfig( + name=self.guid + '-pub-router', port_settings=port_settings) self.router_creator = create_router.OpenStackRouter( self.os_creds, router_settings) self.router_creator.create() @@ -2726,9 +2731,9 @@ class CreateInstanceTwoNetTests(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=self.guid + '-flavor-name', ram=512, - disk=10, vcpus=2, - metadata=self.flavor_metadata)) + FlavorConfig(name=self.guid + '-flavor-name', ram=512, + disk=10, vcpus=2, + metadata=self.flavor_metadata)) self.flavor_creator.create() sec_grp_name = self.guid + '-sec-grp' @@ -2808,7 +2813,7 @@ class CreateInstanceTwoNetTests(OSIntegrationTestCase): ports_settings = [] ctr = 1 for network_creator in self.network_creators: - ports_settings.append(PortSettings( + ports_settings.append(PortConfig( name=self.guid + '-port-' + str(ctr), network_name=network_creator.network_settings.name)) ctr += 1 @@ -2818,7 +2823,7 @@ class CreateInstanceTwoNetTests(OSIntegrationTestCase): name=self.vm_inst1_name, flavor=self.flavor_creator.flavor_settings.name, userdata=_get_ping_userdata(self.ip2), - port_settings=[PortSettings( + port_settings=[PortConfig( name=self.port_1_name, ip_addrs=[{ 'subnet_name': @@ -2830,7 +2835,7 @@ class CreateInstanceTwoNetTests(OSIntegrationTestCase): name=self.vm_inst2_name, flavor=self.flavor_creator.flavor_settings.name, userdata=_get_ping_userdata(self.ip1), - port_settings=[PortSettings( + port_settings=[PortConfig( name=self.port_2_name, ip_addrs=[{ 'subnet_name': @@ -2882,9 +2887,9 @@ class CreateInstanceVolumeTests(OSIntegrationTestCase): net_name=guid + '-pub-net', subnet_name=guid + '-pub-subnet', router_name=guid + '-pub-router', external_net=self.ext_net_name) - self.volume_settings1 = VolumeSettings( + self.volume_settings1 = VolumeConfig( name=self.__class__.__name__ + '-' + str(guid) + '-1') - self.volume_settings2 = VolumeSettings( + self.volume_settings2 = VolumeConfig( name=self.__class__.__name__ + '-' + str(guid) + '-2') # Initialize for tearDown() @@ -2905,8 +2910,8 @@ class CreateInstanceVolumeTests(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=guid + '-flavor-name', ram=256, disk=1, - vcpus=2, metadata=self.flavor_metadata)) + FlavorConfig(name=guid + '-flavor-name', ram=256, disk=1, + vcpus=2, metadata=self.flavor_metadata)) self.flavor_creator.create() # Create Network @@ -2914,7 +2919,7 @@ class CreateInstanceVolumeTests(OSIntegrationTestCase): self.os_creds, net_config.network_settings) self.network_creator.create() - self.port_settings = PortSettings( + self.port_settings = PortConfig( name=guid + '-port', network_name=net_config.network_settings.name) diff --git a/snaps/openstack/tests/create_keypairs_tests.py b/snaps/openstack/tests/create_keypairs_tests.py index d2de6fe..63e0bcc 100644 --- a/snaps/openstack/tests/create_keypairs_tests.py +++ b/snaps/openstack/tests/create_keypairs_tests.py @@ -18,8 +18,9 @@ import uuid import os from snaps import file_utils +from snaps.config.keypair import KeypairConfig, KeypairConfigError from snaps.openstack.create_keypairs import ( - KeypairSettings, OpenStackKeypair, KeypairSettingsError) + KeypairSettings, OpenStackKeypair) from snaps.openstack.tests.os_source_file_test import OSIntegrationTestCase from snaps.openstack.utils import nova_utils @@ -32,15 +33,15 @@ class KeypairSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(KeypairSettingsError): + with self.assertRaises(KeypairConfigError): KeypairSettings() def test_empty_config(self): - with self.assertRaises(KeypairSettingsError): + with self.assertRaises(KeypairConfigError): KeypairSettings(**dict()) def test_small_key_size(self): - with self.assertRaises(KeypairSettingsError): + with self.assertRaises(KeypairConfigError): KeypairSettings(name='foo', key_size=511) def test_name_only(self): @@ -228,7 +229,7 @@ class CreateKeypairsTests(OSIntegrationTestCase): Tests the creation of a generated keypair without saving to file :return: """ - self.keypair_creator = OpenStackKeypair(self.os_creds, KeypairSettings( + self.keypair_creator = OpenStackKeypair(self.os_creds, KeypairConfig( name=self.keypair_name)) self.keypair_creator.create() @@ -241,7 +242,7 @@ class CreateKeypairsTests(OSIntegrationTestCase): Tests the creation of a generated keypair without saving to file :return: """ - self.keypair_creator = OpenStackKeypair(self.os_creds, KeypairSettings( + self.keypair_creator = OpenStackKeypair(self.os_creds, KeypairConfig( name=self.keypair_name, key_size=10000)) self.keypair_creator.create() @@ -255,7 +256,7 @@ class CreateKeypairsTests(OSIntegrationTestCase): clean() does not raise an Exception. """ # Create Image - self.keypair_creator = OpenStackKeypair(self.os_creds, KeypairSettings( + self.keypair_creator = OpenStackKeypair(self.os_creds, KeypairConfig( name=self.keypair_name)) created_keypair = self.keypair_creator.create() self.assertIsNotNone(created_keypair) @@ -277,8 +278,8 @@ class CreateKeypairsTests(OSIntegrationTestCase): :return: """ self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings(name=self.keypair_name, - public_filepath=self.pub_file_path)) + self.os_creds, KeypairConfig( + name=self.keypair_name, public_filepath=self.pub_file_path)) self.keypair_creator.create() keypair = nova_utils.keypair_exists(self.nova, @@ -302,7 +303,7 @@ class CreateKeypairsTests(OSIntegrationTestCase): :return: """ self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings( + self.os_creds, KeypairConfig( name=self.keypair_name, public_filepath=self.pub_file_path, private_filepath=self.priv_file_path)) self.keypair_creator.create() @@ -335,8 +336,8 @@ class CreateKeypairsTests(OSIntegrationTestCase): file_utils.save_keys_to_files(keys=keys, pub_file_path=self.pub_file_path) self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings(name=self.keypair_name, - public_filepath=self.pub_file_path)) + self.os_creds, KeypairConfig( + name=self.keypair_name, public_filepath=self.pub_file_path)) self.keypair_creator.create() keypair = nova_utils.keypair_exists(self.nova, @@ -400,7 +401,7 @@ class CreateKeypairsCleanupTests(OSIntegrationTestCase): :return: """ self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings( + self.os_creds, KeypairConfig( name=self.keypair_name, public_filepath=self.pub_file_path, private_filepath=self.priv_file_path)) self.keypair_creator.create() @@ -416,7 +417,7 @@ class CreateKeypairsCleanupTests(OSIntegrationTestCase): :return: """ self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings( + self.os_creds, KeypairConfig( name=self.keypair_name, public_filepath=self.pub_file_path, private_filepath=self.priv_file_path, delete_on_clean=True)) self.keypair_creator.create() @@ -432,7 +433,7 @@ class CreateKeypairsCleanupTests(OSIntegrationTestCase): :return: """ self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings( + self.os_creds, KeypairConfig( name=self.keypair_name, public_filepath=self.pub_file_path, private_filepath=self.priv_file_path, delete_on_clean=False)) self.keypair_creator.create() @@ -452,7 +453,7 @@ class CreateKeypairsCleanupTests(OSIntegrationTestCase): keys=keys, pub_file_path=self.pub_file_path, priv_file_path=self.priv_file_path) self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings( + self.os_creds, KeypairConfig( name=self.keypair_name, public_filepath=self.pub_file_path, private_filepath=self.priv_file_path, delete_on_clean=False)) self.keypair_creator.create() @@ -472,7 +473,7 @@ class CreateKeypairsCleanupTests(OSIntegrationTestCase): keys=keys, pub_file_path=self.pub_file_path, priv_file_path=self.priv_file_path) self.keypair_creator = OpenStackKeypair( - self.os_creds, KeypairSettings( + self.os_creds, KeypairConfig( name=self.keypair_name, public_filepath=self.pub_file_path, private_filepath=self.priv_file_path, delete_on_clean=True)) self.keypair_creator.create() diff --git a/snaps/openstack/tests/create_network_tests.py b/snaps/openstack/tests/create_network_tests.py index 3d0a102..ac0aad1 100644 --- a/snaps/openstack/tests/create_network_tests.py +++ b/snaps/openstack/tests/create_network_tests.py @@ -15,15 +15,18 @@ import unittest import uuid +from snaps.config.network import ( + NetworkConfig, SubnetConfig, SubnetConfigError, NetworkConfigError, + PortConfigError, IPv6Mode) from snaps.openstack import create_router from snaps.openstack.create_network import ( - OpenStackNetwork, NetworkSettings, SubnetSettings, PortSettings, - NetworkSettingsError, SubnetSettingsError, PortSettingsError, IPv6Mode) + OpenStackNetwork, NetworkSettings, SubnetSettings, PortSettings) from snaps.openstack.tests import openstack_tests from snaps.openstack.tests.os_source_file_test import ( OSIntegrationTestCase, OSComponentTestCase) from snaps.openstack.utils import neutron_utils from snaps.openstack.utils.tests import neutron_utils_tests +from snaps.openstack.create_network import IPv6Mode as IPv6Mode_old __author__ = 'spisarski' @@ -34,11 +37,11 @@ class NetworkSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(NetworkSettingsError): + with self.assertRaises(NetworkConfigError): NetworkSettings() def test_empty_config(self): - with self.assertRaises(NetworkSettingsError): + with self.assertRaises(NetworkConfigError): NetworkSettings(**dict()) def test_name_only(self): @@ -109,19 +112,19 @@ class SubnetSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(SubnetSettingsError): + with self.assertRaises(SubnetConfigError): SubnetSettings() def test_empty_config(self): - with self.assertRaises(SubnetSettingsError): + with self.assertRaises(SubnetConfigError): SubnetSettings(**dict()) def test_name_only(self): - with self.assertRaises(SubnetSettingsError): + with self.assertRaises(SubnetConfigError): SubnetSettings(name='foo') def test_config_with_name_only(self): - with self.assertRaises(SubnetSettingsError): + with self.assertRaises(SubnetConfigError): SubnetSettings(**{'name': 'foo'}) def test_name_cidr_only(self): @@ -161,16 +164,13 @@ class SubnetSettingsUnitTests(unittest.TestCase): def test_all_string_enums(self): host_routes = {'destination': '0.0.0.0/0', 'nexthop': '123.456.78.9'} - settings = SubnetSettings(name='foo', cidr='10.0.0.0/24', ip_version=6, - project_name='bar-project', - start='10.0.0.2', end='10.0.0.101', - gateway_ip='10.0.0.1', enable_dhcp=False, - dns_nameservers=['8.8.8.8'], - host_routes=[host_routes], - destination='dest', - nexthop='hop', - ipv6_ra_mode='dhcpv6-stateful', - ipv6_address_mode='slaac') + settings = SubnetSettings( + name='foo', cidr='10.0.0.0/24', ip_version=6, + project_name='bar-project', start='10.0.0.2', end='10.0.0.101', + gateway_ip='10.0.0.1', enable_dhcp=False, + dns_nameservers=['8.8.8.8'], host_routes=[host_routes], + destination='dest', nexthop='hop', ipv6_ra_mode='dhcpv6-stateful', + ipv6_address_mode='slaac') self.assertEqual('foo', settings.name) self.assertEqual('10.0.0.0/24', settings.cidr) self.assertEqual(6, settings.ip_version) @@ -185,21 +185,21 @@ class SubnetSettingsUnitTests(unittest.TestCase): self.assertEqual(host_routes, settings.host_routes[0]) self.assertEqual('dest', settings.destination) self.assertEqual('hop', settings.nexthop) - self.assertEqual(IPv6Mode.stateful, settings.ipv6_ra_mode) - self.assertEqual(IPv6Mode.slaac, settings.ipv6_address_mode) + self.assertEqual(IPv6Mode_old.stateful.value, + settings.ipv6_ra_mode.value) + self.assertEqual(IPv6Mode_old.slaac.value, + settings.ipv6_address_mode.value) def test_all_type_enums(self): host_routes = {'destination': '0.0.0.0/0', 'nexthop': '123.456.78.9'} - settings = SubnetSettings(name='foo', cidr='10.0.0.0/24', ip_version=6, - project_name='bar-project', - start='10.0.0.2', end='10.0.0.101', - gateway_ip='10.0.0.1', enable_dhcp=False, - dns_nameservers=['8.8.8.8'], - host_routes=[host_routes], - destination='dest', - nexthop='hop', - ipv6_ra_mode=IPv6Mode.stateful, - ipv6_address_mode=IPv6Mode.slaac) + settings = SubnetSettings( + name='foo', cidr='10.0.0.0/24', ip_version=6, + project_name='bar-project', start='10.0.0.2', end='10.0.0.101', + gateway_ip='10.0.0.1', enable_dhcp=False, + dns_nameservers=['8.8.8.8'], host_routes=[host_routes], + destination='dest', nexthop='hop', + ipv6_ra_mode=IPv6Mode_old.stateful, + ipv6_address_mode=IPv6Mode.slaac) self.assertEqual('foo', settings.name) self.assertEqual('10.0.0.0/24', settings.cidr) self.assertEqual(6, settings.ip_version) @@ -214,8 +214,9 @@ class SubnetSettingsUnitTests(unittest.TestCase): self.assertEqual(host_routes, settings.host_routes[0]) self.assertEqual('dest', settings.destination) self.assertEqual('hop', settings.nexthop) - self.assertEqual(IPv6Mode.stateful, settings.ipv6_ra_mode) - self.assertEqual(IPv6Mode.slaac, settings.ipv6_address_mode) + self.assertEqual(IPv6Mode.stateful.value, settings.ipv6_ra_mode.value) + self.assertEqual(IPv6Mode.slaac.value, + settings.ipv6_address_mode.value) def test_config_all(self): host_routes = {'destination': '0.0.0.0/0', 'nexthop': '123.456.78.9'} @@ -242,8 +243,9 @@ class SubnetSettingsUnitTests(unittest.TestCase): self.assertEqual(host_routes, settings.host_routes[0]) self.assertEqual('dest', settings.destination) self.assertEqual('hop', settings.nexthop) - self.assertEqual(IPv6Mode.stateless, settings.ipv6_ra_mode) - self.assertEqual(IPv6Mode.slaac, settings.ipv6_address_mode) + self.assertEqual(IPv6Mode.stateless.value, settings.ipv6_ra_mode.value) + self.assertEqual(IPv6Mode.slaac.value, + settings.ipv6_address_mode.value) class PortSettingsUnitTests(unittest.TestCase): @@ -252,19 +254,19 @@ class PortSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(PortSettingsError): + with self.assertRaises(PortConfigError): PortSettings() def test_empty_config(self): - with self.assertRaises(PortSettingsError): + with self.assertRaises(PortConfigError): PortSettings(**dict()) def test_name_only(self): - with self.assertRaises(PortSettingsError): + with self.assertRaises(PortConfigError): PortSettings(name='foo') def test_config_name_only(self): - with self.assertRaises(PortSettingsError): + with self.assertRaises(PortConfigError): PortSettings(**{'name': 'foo'}) def test_name_netname_only(self): @@ -566,10 +568,10 @@ class CreateNetworkIPv6Tests(OSIntegrationTestCase): Tests the creation of an OpenStack network without a router. """ # Create Network - subnet_settings = SubnetSettings( + subnet_settings = SubnetConfig( name=self.guid + '-subnet', cidr='1:1:0:0:0:0:0:0/64', ip_version=6) - network_settings = NetworkSettings( + network_settings = NetworkConfig( name=self.guid + '-net', subnet_settings=[subnet_settings]) self.net_creator = OpenStackNetwork(self.os_creds, network_settings) @@ -594,13 +596,13 @@ class CreateNetworkIPv6Tests(OSIntegrationTestCase): Tests the creation of an OpenStack network without a router. """ # Create Network - subnet4_settings = SubnetSettings( + subnet4_settings = SubnetConfig( name=self.guid + '-subnet4', cidr='10.0.1.0/24', ip_version=4) - subnet6_settings = SubnetSettings( + subnet6_settings = SubnetConfig( name=self.guid + '-subnet6', cidr='1:1:0:0:0:0:0:0/64', ip_version=6) - network_settings = NetworkSettings( + network_settings = NetworkConfig( name=self.guid + '-net', subnet_settings=[subnet4_settings, subnet6_settings]) @@ -666,7 +668,7 @@ class CreateNetworkTypeTests(OSComponentTestCase): """ # Create Network network_type = 'vlan' - net_settings = NetworkSettings( + net_settings = NetworkConfig( name=self.net_config.network_settings.name, subnet_settings=self.net_config.network_settings.subnet_settings, network_type=network_type) @@ -693,7 +695,7 @@ class CreateNetworkTypeTests(OSComponentTestCase): physical_network = 'datacentre' segmentation_id = 2366 - net_settings = NetworkSettings( + net_settings = NetworkConfig( name=self.net_config.network_settings.name, subnet_settings=self.net_config.network_settings.subnet_settings, network_type=network_type, @@ -716,7 +718,7 @@ class CreateNetworkTypeTests(OSComponentTestCase): """ # Create Network network_type = 'vxlan' - net_settings = NetworkSettings( + net_settings = NetworkConfig( name=self.net_config.network_settings.name, subnet_settings=self.net_config.network_settings.subnet_settings, network_type=network_type) @@ -741,7 +743,7 @@ class CreateNetworkTypeTests(OSComponentTestCase): # This value must be variable to work on all OpenStack pods physical_network = 'datacentre' - net_settings = NetworkSettings( + net_settings = NetworkConfig( name=self.net_config.network_settings.name, subnet_settings=self.net_config.network_settings.subnet_settings, network_type=network_type, physical_network=physical_network) @@ -761,7 +763,7 @@ class CreateNetworkTypeTests(OSComponentTestCase): """ # Create Network network_type = 'foo' - net_settings = NetworkSettings( + net_settings = NetworkConfig( name=self.net_config.network_settings.name, subnet_settings=self.net_config.network_settings.subnet_settings, network_type=network_type) diff --git a/snaps/openstack/tests/create_project_tests.py b/snaps/openstack/tests/create_project_tests.py index aa9dcfb..d7d4dcf 100644 --- a/snaps/openstack/tests/create_project_tests.py +++ b/snaps/openstack/tests/create_project_tests.py @@ -17,13 +17,14 @@ import uuid from keystoneclient.exceptions import BadRequest +from snaps.config.user import UserConfig +from snaps.config.project import ProjectConfigError, ProjectConfig from snaps.domain.project import ComputeQuotas, NetworkQuotas from snaps.openstack.create_project import ( - OpenStackProject, ProjectSettings, ProjectSettingsError) + OpenStackProject, ProjectSettings) from snaps.openstack.create_security_group import OpenStackSecurityGroup from snaps.openstack.create_security_group import SecurityGroupSettings from snaps.openstack.create_user import OpenStackUser -from snaps.openstack.create_user import UserSettings from snaps.openstack.tests.os_source_file_test import OSComponentTestCase from snaps.openstack.utils import keystone_utils, nova_utils, neutron_utils @@ -36,11 +37,11 @@ class ProjectSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(ProjectSettingsError): + with self.assertRaises(ProjectConfigError): ProjectSettings() def test_empty_config(self): - with self.assertRaises(ProjectSettingsError): + with self.assertRaises(ProjectConfigError): ProjectSettings(**dict()) def test_name_only(self): @@ -94,7 +95,7 @@ class CreateProjectSuccessTests(OSComponentTestCase): """ guid = str(uuid.uuid4())[:-19] guid = self.__class__.__name__ + '-' + guid - self.project_settings = ProjectSettings( + self.project_settings = ProjectConfig( name=guid + '-name', domain=self.os_creds.project_domain_name) @@ -236,7 +237,7 @@ class CreateProjectUserTests(OSComponentTestCase): """ guid = str(uuid.uuid4())[:-19] self.guid = self.__class__.__name__ + '-' + guid - self.project_settings = ProjectSettings( + self.project_settings = ProjectConfig( name=self.guid + '-name', domain=self.os_creds.project_domain_name) @@ -272,9 +273,10 @@ class CreateProjectUserTests(OSComponentTestCase): self.assertIsNotNone(created_project) user_creator = OpenStackUser( - self.os_creds, UserSettings( + self.os_creds, UserConfig( name=self.guid + '-user', - password=self.guid, roles={'admin': self.project_settings.name}, + password=self.guid, + roles={'admin': self.project_settings.name}, domain_name=self.os_creds.user_domain_name)) self.project_creator.assoc_user(user_creator.create()) self.user_creators.append(user_creator) @@ -282,8 +284,8 @@ class CreateProjectUserTests(OSComponentTestCase): sec_grp_os_creds = user_creator.get_os_creds( self.project_creator.get_project().name) sec_grp_creator = OpenStackSecurityGroup( - sec_grp_os_creds, SecurityGroupSettings(name=self.guid + '-name', - description='hello group')) + sec_grp_os_creds, SecurityGroupSettings( + name=self.guid + '-name', description='hello group')) sec_grp = sec_grp_creator.create() self.assertIsNotNone(sec_grp) self.sec_grp_creators.append(sec_grp_creator) @@ -302,7 +304,7 @@ class CreateProjectUserTests(OSComponentTestCase): self.assertIsNotNone(created_project) user_creator_1 = OpenStackUser( - self.os_creds, UserSettings( + self.os_creds, UserConfig( name=self.guid + '-user1', password=self.guid, roles={'admin': self.project_settings.name}, domain_name=self.os_creds.user_domain_name)) @@ -310,7 +312,7 @@ class CreateProjectUserTests(OSComponentTestCase): self.user_creators.append(user_creator_1) user_creator_2 = OpenStackUser( - self.os_creds, UserSettings( + self.os_creds, UserConfig( name=self.guid + '-user2', password=self.guid, roles={'admin': self.project_settings.name}, domain_name=self.os_creds.user_domain_name)) diff --git a/snaps/openstack/tests/create_qos_tests.py b/snaps/openstack/tests/create_qos_tests.py index 6c0a056..68737f8 100644 --- a/snaps/openstack/tests/create_qos_tests.py +++ b/snaps/openstack/tests/create_qos_tests.py @@ -12,6 +12,8 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +from snaps.config.qos import Consumer, QoSConfigError, QoSConfig +from snaps.openstack.create_qos import Consumer as Consumer_old try: from urllib.request import URLError @@ -23,8 +25,7 @@ import unittest import uuid from snaps.openstack import create_qos -from snaps.openstack.create_qos import (QoSSettings, QoSSettingsError, - Consumer) +from snaps.openstack.create_qos import QoSSettings from snaps.openstack.tests.os_source_file_test import OSIntegrationTestCase from snaps.openstack.utils import cinder_utils @@ -39,64 +40,64 @@ class QoSSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(QoSSettingsError): + with self.assertRaises(QoSConfigError): QoSSettings() def test_empty_config(self): - with self.assertRaises(QoSSettingsError): + with self.assertRaises(QoSConfigError): QoSSettings(**dict()) def test_name_only(self): - with self.assertRaises(QoSSettingsError): + with self.assertRaises(QoSConfigError): QoSSettings(name='foo') def test_config_with_name_only(self): - with self.assertRaises(QoSSettingsError): + with self.assertRaises(QoSConfigError): QoSSettings(**{'name': 'foo'}) def test_invalid_consumer(self): - with self.assertRaises(QoSSettingsError): + with self.assertRaises(QoSConfigError): QoSSettings(name='foo', consumer='bar') def test_config_with_invalid_consumer(self): - with self.assertRaises(QoSSettingsError): + with self.assertRaises(QoSConfigError): QoSSettings(**{'name': 'foo', 'consumer': 'bar'}) def test_name_consumer(self): - settings = QoSSettings(name='foo', consumer=Consumer.front_end) + settings = QoSSettings(name='foo', consumer=Consumer_old.front_end) self.assertEqual('foo', settings.name) - self.assertEqual(Consumer.front_end, settings.consumer) + self.assertEqual(Consumer_old.front_end.value, settings.consumer.value) self.assertEqual(dict(), settings.specs) def test_name_consumer_front_end_strings(self): settings = QoSSettings(name='foo', consumer='front-end') self.assertEqual('foo', settings.name) - self.assertEqual(Consumer.front_end, settings.consumer) + self.assertEqual(Consumer_old.front_end.value, settings.consumer.value) self.assertEqual(dict(), settings.specs) def test_name_consumer_back_end_strings(self): settings = QoSSettings(name='foo', consumer='back-end') self.assertEqual('foo', settings.name) - self.assertEqual(Consumer.back_end, settings.consumer) + self.assertEqual(Consumer_old.back_end.value, settings.consumer.value) self.assertEqual(dict(), settings.specs) def test_name_consumer_both_strings(self): settings = QoSSettings(name='foo', consumer='both') self.assertEqual('foo', settings.name) - self.assertEqual(Consumer.both, settings.consumer) + self.assertEqual(Consumer_old.both.value, settings.consumer.value) self.assertEqual(dict(), settings.specs) def test_all(self): specs = {'spec1': 'val1', 'spec2': 'val2'} - settings = QoSSettings(name='foo', consumer=Consumer.both, + settings = QoSSettings(name='foo', consumer=Consumer_old.both, specs=specs) self.assertEqual('foo', settings.name) - self.assertEqual(Consumer.both, settings.consumer) + self.assertEqual(Consumer_old.both.value, settings.consumer.value) self.assertEqual(specs, settings.specs) def test_config_all(self): @@ -121,7 +122,7 @@ class CreateQoSTests(OSIntegrationTestCase): super(self.__class__, self).__start__() guid = uuid.uuid4() - self.qos_settings = QoSSettings( + self.qos_settings = QoSConfig( name=self.__class__.__name__ + '-' + str(guid), consumer=Consumer.both) diff --git a/snaps/openstack/tests/create_router_tests.py b/snaps/openstack/tests/create_router_tests.py index d0f0a9f..5c34037 100644 --- a/snaps/openstack/tests/create_router_tests.py +++ b/snaps/openstack/tests/create_router_tests.py @@ -15,13 +15,12 @@ import unittest import uuid +from snaps.config.network import PortConfig, NetworkConfig +from snaps.config.router import RouterConfigError, RouterConfig from snaps.openstack import create_network from snaps.openstack import create_router -from snaps.openstack.create_network import ( - NetworkSettings, PortSettings) from snaps.openstack.create_network import OpenStackNetwork -from snaps.openstack.create_router import ( - RouterSettings, RouterSettingsError) +from snaps.openstack.create_router import RouterSettings from snaps.openstack.tests.os_source_file_test import OSIntegrationTestCase from snaps.openstack.utils import neutron_utils, settings_utils @@ -39,11 +38,11 @@ class RouterSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(RouterSettingsError): + with self.assertRaises(RouterConfigError): RouterSettings() def test_empty_config(self): - with self.assertRaises(RouterSettingsError): + with self.assertRaises(RouterConfigError): RouterSettings(**dict()) def test_name_only(self): @@ -75,7 +74,7 @@ class RouterSettingsUnitTests(unittest.TestCase): self.assertEqual(0, len(settings.port_settings)) def test_all(self): - port_settings = PortSettings(name='foo', network_name='bar') + port_settings = PortConfig(name='foo', network_name='bar') settings = RouterSettings( name='foo', project_name='bar', external_gateway='foo_gateway', admin_state_up=True, enable_snat=False, @@ -108,9 +107,9 @@ class RouterSettingsUnitTests(unittest.TestCase): self.assertTrue(isinstance(settings.internal_subnets, list)) self.assertEqual(1, len(settings.internal_subnets)) self.assertEqual(['10.0.0.1/24'], settings.internal_subnets) - self.assertEqual([PortSettings(**{'name': 'foo-port', - 'network_name': 'bar-net'})], - settings.port_settings) + self.assertEqual( + [PortConfig(**{'name': 'foo-port', 'network_name': 'bar-net'})], + settings.port_settings) class CreateRouterSuccessTests(OSIntegrationTestCase): @@ -150,8 +149,8 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): """ Test creation of a most basic router with minimal options. """ - router_settings = RouterSettings(name=self.guid + '-pub-router', - external_gateway=self.ext_net_name) + router_settings = RouterConfig( + name=self.guid + '-pub-router', external_gateway=self.ext_net_name) self.router_creator = create_router.OpenStackRouter(self.os_creds, router_settings) @@ -170,7 +169,7 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): Test creation of a most basic router with the admin user pointing to the new project. """ - router_settings = RouterSettings( + router_settings = RouterConfig( name=self.guid + '-pub-router', external_gateway=self.ext_net_name, project_name=self.os_creds.project_name) @@ -191,7 +190,7 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): Test creation of a most basic router with the new user pointing to the admin project. """ - router_settings = RouterSettings( + router_settings = RouterConfig( name=self.guid + '-pub-router', external_gateway=self.ext_net_name, project_name=self.admin_os_creds.project_name) @@ -212,7 +211,7 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): Test that clean() will not raise an exception if the router is deleted by another process. """ - self.router_settings = RouterSettings( + self.router_settings = RouterConfig( name=self.guid + '-pub-router', external_gateway=self.ext_net_name) self.router_creator = create_router.OpenStackRouter( @@ -236,8 +235,8 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): """ Test creation of a basic router with admin state down. """ - router_settings = RouterSettings(name=self.guid + '-pub-router', - admin_state_up=False) + router_settings = RouterConfig( + name=self.guid + '-pub-router', admin_state_up=False) self.router_creator = create_router.OpenStackRouter(self.os_creds, router_settings) @@ -255,7 +254,7 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): """ Test creation of a basic router with admin state Up. """ - router_settings = RouterSettings( + router_settings = RouterConfig( name=self.guid + '-pub-router', admin_state_up=True) self.router_creator = create_router.OpenStackRouter( @@ -275,16 +274,16 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): Test creation of a router connected with two private networks and no external gateway """ - network_settings1 = NetworkSettings( + network_settings1 = NetworkConfig( name=self.guid + '-pub-net1', subnet_settings=[ - create_network.SubnetSettings( + create_network.SubnetConfig( cidr=cidr1, name=self.guid + '-pub-subnet1', gateway_ip=static_gateway_ip1)]) - network_settings2 = NetworkSettings( + network_settings2 = NetworkConfig( name=self.guid + '-pub-net2', subnet_settings=[ - create_network.SubnetSettings( + create_network.SubnetConfig( cidr=cidr2, name=self.guid + '-pub-subnet2', gateway_ip=static_gateway_ip2)]) @@ -297,7 +296,7 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): self.network_creator2.create() port_settings = [ - create_network.PortSettings( + create_network.PortConfig( name=self.guid + '-port1', ip_addrs=[{ 'subnet_name': @@ -306,7 +305,7 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): }], network_name=network_settings1.name, project_name=self.os_creds.project_name), - create_network.PortSettings( + create_network.PortConfig( name=self.guid + '-port2', ip_addrs=[{ 'subnet_name': network_settings2.subnet_settings[0].name, @@ -315,8 +314,8 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): network_name=network_settings2.name, project_name=self.os_creds.project_name)] - router_settings = RouterSettings(name=self.guid + '-pub-router', - port_settings=port_settings) + router_settings = RouterConfig( + name=self.guid + '-pub-router', port_settings=port_settings) self.router_creator = create_router.OpenStackRouter(self.os_creds, router_settings) self.router_creator.create() @@ -340,10 +339,10 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): Test creation of a router connected to an external network and a private network. """ - network_settings = NetworkSettings( + network_settings = NetworkConfig( name=self.guid + '-pub-net1', subnet_settings=[ - create_network.SubnetSettings( + create_network.SubnetConfig( cidr=cidr1, name=self.guid + '-pub-subnet1', gateway_ip=static_gateway_ip1)]) self.network_creator1 = OpenStackNetwork(self.os_creds, @@ -351,7 +350,7 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): self.network_creator1.create() port_settings = [ - create_network.PortSettings( + create_network.PortConfig( name=self.guid + '-port1', ip_addrs=[{ 'subnet_name': network_settings.subnet_settings[0].name, @@ -359,7 +358,7 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): network_name=network_settings.name, project_name=self.os_creds.project_name)] - router_settings = RouterSettings( + router_settings = RouterConfig( name=self.guid + '-pub-router', external_gateway=self.ext_net_name, port_settings=port_settings) self.router_creator = create_router.OpenStackRouter( @@ -375,11 +374,11 @@ class CreateRouterSuccessTests(OSIntegrationTestCase): def check_router_recreation(self, router, orig_settings): """ - Validates the derived RouterSettings with the original + Validates the derived RouterConfig with the original :param router: the Router domain object to test - :param orig_settings: the original RouterSettings object that was + :param orig_settings: the original RouterConfig object that was responsible for creating the router - :return: the derived RouterSettings object + :return: the derived RouterConfig object """ derived_settings = settings_utils.create_router_settings( self.neutron, router) @@ -437,8 +436,8 @@ class CreateRouterNegativeTests(OSIntegrationTestCase): """ Test creating a router without a name. """ - with self.assertRaises(RouterSettingsError): - router_settings = RouterSettings( + with self.assertRaises(RouterConfigError): + router_settings = RouterConfig( name=None, external_gateway=self.ext_net_name) self.router_creator = create_router.OpenStackRouter( self.os_creds, router_settings) @@ -448,9 +447,10 @@ class CreateRouterNegativeTests(OSIntegrationTestCase): """ Test creating a router without a valid network gateway name. """ - with self.assertRaises(RouterSettingsError): - router_settings = RouterSettings(name=self.guid + '-pub-router', - external_gateway="Invalid_name") + with self.assertRaises(RouterConfigError): + router_settings = RouterConfig( + name=self.guid + '-pub-router', + external_gateway="Invalid_name") self.router_creator = create_router.OpenStackRouter( self.os_creds, router_settings) self.router_creator.create() diff --git a/snaps/openstack/tests/create_stack_tests.py b/snaps/openstack/tests/create_stack_tests.py index 9a26918..1df22fa 100644 --- a/snaps/openstack/tests/create_stack_tests.py +++ b/snaps/openstack/tests/create_stack_tests.py @@ -17,9 +17,14 @@ import time import pkg_resources from heatclient.exc import HTTPBadRequest + +import snaps from snaps import file_utils -from snaps.openstack.create_flavor import OpenStackFlavor, FlavorSettings -from snaps.openstack.create_image import OpenStackImage, ImageSettings +from snaps.config.flavor import FlavorConfig +from snaps.config.image import ImageConfig +from snaps.config.stack import StackConfigError, StackConfig +from snaps.openstack.create_flavor import OpenStackFlavor +from snaps.openstack.create_image import OpenStackImage try: from urllib.request import URLError @@ -30,9 +35,8 @@ import logging import unittest import uuid -from snaps.openstack import create_stack from snaps.openstack.create_stack import ( - StackSettings, StackSettingsError, StackCreationError, StackError) + StackSettings, StackCreationError, StackError, OpenStackHeatStack) from snaps.openstack.tests import openstack_tests, create_instance_tests from snaps.openstack.tests.os_source_file_test import OSIntegrationTestCase from snaps.openstack.utils import heat_utils, neutron_utils, nova_utils @@ -48,19 +52,19 @@ class StackSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(StackSettingsError): + with self.assertRaises(StackConfigError): StackSettings() def test_empty_config(self): - with self.assertRaises(StackSettingsError): + with self.assertRaises(StackConfigError): StackSettings(**dict()) def test_name_only(self): - with self.assertRaises(StackSettingsError): + with self.assertRaises(StackConfigError): StackSettings(name='foo') def test_config_with_name_only(self): - with self.assertRaises(StackSettingsError): + with self.assertRaises(StackConfigError): StackSettings(**{'name': 'foo'}) def test_config_minimum_template(self): @@ -69,7 +73,7 @@ class StackSettingsUnitTests(unittest.TestCase): self.assertEqual('foo', settings.template) self.assertIsNone(settings.template_path) self.assertIsNone(settings.env_values) - self.assertEqual(create_stack.STACK_COMPLETE_TIMEOUT, + self.assertEqual(snaps.config.stack.STACK_COMPLETE_TIMEOUT, settings.stack_create_timeout) def test_config_minimum_template_path(self): @@ -78,7 +82,7 @@ class StackSettingsUnitTests(unittest.TestCase): self.assertIsNone(settings.template) self.assertEqual('foo', settings.template_path) self.assertIsNone(settings.env_values) - self.assertEqual(create_stack.STACK_COMPLETE_TIMEOUT, + self.assertEqual(snaps.config.stack.STACK_COMPLETE_TIMEOUT, settings.stack_create_timeout) def test_minimum_template(self): @@ -87,7 +91,7 @@ class StackSettingsUnitTests(unittest.TestCase): self.assertEqual('foo', settings.template) self.assertIsNone(settings.template_path) self.assertIsNone(settings.env_values) - self.assertEqual(create_stack.STACK_COMPLETE_TIMEOUT, + self.assertEqual(snaps.config.stack.STACK_COMPLETE_TIMEOUT, settings.stack_create_timeout) def test_minimum_template_path(self): @@ -96,7 +100,7 @@ class StackSettingsUnitTests(unittest.TestCase): self.assertEqual('foo', settings.template_path) self.assertIsNone(settings.template) self.assertIsNone(settings.env_values) - self.assertEqual(create_stack.STACK_COMPLETE_TIMEOUT, + self.assertEqual(snaps.config.stack.STACK_COMPLETE_TIMEOUT, settings.stack_create_timeout) def test_all(self): @@ -148,8 +152,8 @@ class CreateStackSuccessTests(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=self.guid + '-flavor-name', ram=256, disk=10, - vcpus=1)) + FlavorConfig( + name=self.guid + '-flavor-name', ram=256, disk=10, vcpus=1)) self.flavor_creator.create() self.network_name = self.guid + '-net' @@ -197,12 +201,12 @@ class CreateStackSuccessTests(OSIntegrationTestCase): # Create Stack # Set the default stack settings, then set any custom parameters sent # from the app - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) created_stack = self.stack_creator.create() self.assertIsNotNone(created_stack) @@ -220,13 +224,13 @@ class CreateStackSuccessTests(OSIntegrationTestCase): # Create Stack # Set the default stack settings, then set any custom parameters sent # from the app - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values, stack_create_timeout=0) - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) with self.assertRaises(StackCreationError): self.stack_creator.create() @@ -239,12 +243,12 @@ class CreateStackSuccessTests(OSIntegrationTestCase): # from the app template_dict = heat_utils.parse_heat_template_str( file_utils.read_file(self.heat_tmplt_path)) - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template=template_dict, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) created_stack = self.stack_creator.create() self.assertIsNotNone(created_stack) @@ -263,12 +267,12 @@ class CreateStackSuccessTests(OSIntegrationTestCase): # Create Stack template_dict = heat_utils.parse_heat_template_str( file_utils.read_file(self.heat_tmplt_path)) - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template=template_dict, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) created_stack = self.stack_creator.create() self.assertIsNotNone(created_stack) @@ -278,7 +282,7 @@ class CreateStackSuccessTests(OSIntegrationTestCase): self.assertEqual(created_stack.name, retrieved_stack.name) self.assertEqual(created_stack.id, retrieved_stack.id) self.assertEqual(0, len(self.stack_creator.get_outputs())) - self.assertEqual(create_stack.STATUS_CREATE_COMPLETE, + self.assertEqual(snaps.config.stack.STATUS_CREATE_COMPLETE, self.stack_creator.get_status()) # Delete Stack manually @@ -289,7 +293,7 @@ class CreateStackSuccessTests(OSIntegrationTestCase): while time.time() < end_time: status = heat_utils.get_stack_status(self.heat_cli, retrieved_stack.id) - if status == create_stack.STATUS_DELETE_COMPLETE: + if status == snaps.config.stack.STATUS_DELETE_COMPLETE: deleted = True break @@ -307,12 +311,12 @@ class CreateStackSuccessTests(OSIntegrationTestCase): # Create Stack template_dict = heat_utils.parse_heat_template_str( file_utils.read_file(self.heat_tmplt_path)) - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template=template_dict, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) created_stack1 = self.stack_creator.create() retrieved_stack = heat_utils.get_stack_by_id(self.heat_cli, @@ -323,8 +327,7 @@ class CreateStackSuccessTests(OSIntegrationTestCase): self.assertEqual(0, len(self.stack_creator.get_outputs())) # Should be retrieving the instance data - stack_creator2 = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + stack_creator2 = OpenStackHeatStack(self.heat_creds, stack_settings) stack2 = stack_creator2.create() self.assertEqual(created_stack1.id, stack2.id) @@ -333,12 +336,12 @@ class CreateStackSuccessTests(OSIntegrationTestCase): Tests the creation of an OpenStack stack from Heat template file and the retrieval of the network creator. """ - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) created_stack = self.stack_creator.create() self.assertIsNotNone(created_stack) @@ -369,12 +372,12 @@ class CreateStackSuccessTests(OSIntegrationTestCase): Tests the creation of an OpenStack stack from Heat template file and the retrieval of the network creator. """ - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) created_stack = self.stack_creator.create() self.assertIsNotNone(created_stack) @@ -478,11 +481,11 @@ class CreateStackFloatingIpTests(OSIntegrationTestCase): the retrieval of two VM instance creators and attempt to connect via SSH to the first one with a floating IP. """ - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack( + self.stack_creator = OpenStackHeatStack( self.heat_creds, stack_settings, [self.image_creator.image_settings]) created_stack = self.stack_creator.create() @@ -537,11 +540,11 @@ class CreateStackRouterTests(OSIntegrationTestCase): self.heat_tmplt_path = pkg_resources.resource_filename( 'snaps.openstack.tests.heat', 'router_heat_template.yaml') - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack( + self.stack_creator = OpenStackHeatStack( self.heat_creds, stack_settings) self.created_stack = self.stack_creator.create() self.assertIsNotNone(self.created_stack) @@ -604,11 +607,11 @@ class CreateStackVolumeTests(OSIntegrationTestCase): self.heat_tmplt_path = pkg_resources.resource_filename( 'snaps.openstack.tests.heat', 'volume_heat_template.yaml') - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack( + self.stack_creator = OpenStackHeatStack( self.heat_creds, stack_settings) self.created_stack = self.stack_creator.create() self.assertIsNotNone(self.created_stack) @@ -691,10 +694,10 @@ class CreateStackFlavorTests(OSIntegrationTestCase): self.heat_tmplt_path = pkg_resources.resource_filename( 'snaps.openstack.tests.heat', 'flavor_heat_template.yaml') - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.guid + '-stack', template_path=self.heat_tmplt_path) - self.stack_creator = create_stack.OpenStackHeatStack( + self.stack_creator = OpenStackHeatStack( self.heat_creds, stack_settings) self.created_stack = self.stack_creator.create() self.assertIsNotNone(self.created_stack) @@ -757,11 +760,11 @@ class CreateStackKeypairTests(OSIntegrationTestCase): self.heat_tmplt_path = pkg_resources.resource_filename( 'snaps.openstack.tests.heat', 'keypair_heat_template.yaml') - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack( + self.stack_creator = OpenStackHeatStack( self.heat_creds, stack_settings) self.created_stack = self.stack_creator.create() self.assertIsNotNone(self.created_stack) @@ -842,11 +845,11 @@ class CreateStackSecurityGroupTests(OSIntegrationTestCase): self.heat_tmplt_path = pkg_resources.resource_filename( 'snaps.openstack.tests.heat', 'security_group_heat_template.yaml') - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack( + self.stack_creator = OpenStackHeatStack( self.heat_creds, stack_settings) self.created_stack = self.stack_creator.create() self.assertIsNotNone(self.created_stack) @@ -933,10 +936,10 @@ class CreateStackNegativeTests(OSIntegrationTestCase): """ Expect an StackCreationError when the stack file does not exist """ - stack_settings = StackSettings(name=self.stack_name, - template_path=self.heat_tmplt_path) - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + stack_settings = StackConfig(name=self.stack_name, + template_path=self.heat_tmplt_path) + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) with self.assertRaises(HTTPBadRequest): self.stack_creator.create() @@ -944,10 +947,10 @@ class CreateStackNegativeTests(OSIntegrationTestCase): """ Expect an StackCreationError when the stack file does not exist """ - stack_settings = StackSettings(name=self.stack_name, - template_path='foo') - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + stack_settings = StackConfig( + name=self.stack_name, template_path='foo') + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) with self.assertRaises(IOError): self.stack_creator.create() @@ -974,7 +977,7 @@ class CreateStackFailureTests(OSIntegrationTestCase): self.tmp_file = file_utils.save_string_to_file( ' ', str(uuid.uuid4()) + '-bad-image') self.image_creator = OpenStackImage( - self.heat_creds, ImageSettings( + self.heat_creds, ImageConfig( name=self.guid + 'image', image_file=self.tmp_file.name, image_user='foo', img_format='qcow2')) self.image_creator.create() @@ -982,8 +985,9 @@ class CreateStackFailureTests(OSIntegrationTestCase): # Create Flavor self.flavor_creator = OpenStackFlavor( self.admin_os_creds, - FlavorSettings(name=self.guid + '-flavor-name', ram=256, disk=10, - vcpus=1000000)) + FlavorConfig( + name=self.guid + '-flavor-name', ram=256, disk=10, + vcpus=1000000)) self.flavor_creator.create() self.network_name = self.guid + '-net' @@ -1038,12 +1042,12 @@ class CreateStackFailureTests(OSIntegrationTestCase): # Create Stack # Set the default stack settings, then set any custom parameters sent # from the app - stack_settings = StackSettings( + stack_settings = StackConfig( name=self.__class__.__name__ + '-' + str(self.guid) + '-stack', template_path=self.heat_tmplt_path, env_values=self.env_values) - self.stack_creator = create_stack.OpenStackHeatStack(self.heat_creds, - stack_settings) + self.stack_creator = OpenStackHeatStack( + self.heat_creds, stack_settings) with self.assertRaises(StackError): try: @@ -1054,7 +1058,8 @@ class CreateStackFailureTests(OSIntegrationTestCase): found = False for resource in resources: - if resource.status == create_stack.STATUS_CREATE_COMPLETE: + if (resource.status == + snaps.config.stack.STATUS_CREATE_COMPLETE): found = True self.assertTrue(found) raise diff --git a/snaps/openstack/tests/create_user_tests.py b/snaps/openstack/tests/create_user_tests.py index ffae596..d3eb4a6 100644 --- a/snaps/openstack/tests/create_user_tests.py +++ b/snaps/openstack/tests/create_user_tests.py @@ -15,6 +15,7 @@ import unittest import uuid +from snaps.config.user import UserConfig from snaps.openstack.create_user import OpenStackUser, UserSettings from snaps.openstack.tests.os_source_file_test import OSComponentTestCase from snaps.openstack.utils import keystone_utils @@ -102,7 +103,7 @@ class CreateUserSuccessTests(OSComponentTestCase): """ guid = str(uuid.uuid4())[:-19] guid = self.__class__.__name__ + '-' + guid - self.user_settings = UserSettings( + self.user_settings = UserConfig( name=guid + '-name', password=guid + '-password', roles={'admin': self.os_creds.project_name}, diff --git a/snaps/openstack/tests/create_volume_tests.py b/snaps/openstack/tests/create_volume_tests.py index 9c3f90f..ca13860 100644 --- a/snaps/openstack/tests/create_volume_tests.py +++ b/snaps/openstack/tests/create_volume_tests.py @@ -14,9 +14,10 @@ # limitations under the License. from cinderclient.exceptions import NotFound, BadRequest +from snaps.config.volume import VolumeConfig, VolumeConfigError +from snaps.config.volume_type import VolumeTypeConfig from snaps.openstack.create_image import OpenStackImage -from snaps.openstack.create_volume_type import ( - VolumeTypeSettings, OpenStackVolumeType) +from snaps.openstack.create_volume_type import OpenStackVolumeType from snaps.openstack.tests import openstack_tests try: @@ -29,7 +30,7 @@ import unittest import uuid from snaps.openstack.create_volume import ( - VolumeSettings, VolumeSettingsError, OpenStackVolume) + VolumeSettings, OpenStackVolume) from snaps.openstack.tests.os_source_file_test import OSIntegrationTestCase from snaps.openstack.utils import cinder_utils @@ -44,11 +45,11 @@ class VolumeSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(VolumeSettingsError): + with self.assertRaises(VolumeConfigError): VolumeSettings() def test_empty_config(self): - with self.assertRaises(VolumeSettingsError): + with self.assertRaises(VolumeConfigError): VolumeSettings(**dict()) def test_name_only(self): @@ -125,7 +126,7 @@ class CreateSimpleVolumeSuccessTests(OSIntegrationTestCase): super(self.__class__, self).__start__() guid = uuid.uuid4() - self.volume_settings = VolumeSettings( + self.volume_settings = VolumeConfig( name=self.__class__.__name__ + '-' + str(guid)) self.cinder = cinder_utils.cinder_client(self.os_creds) @@ -234,7 +235,7 @@ class CreateSimpleVolumeFailureTests(OSIntegrationTestCase): Tests the creation of an OpenStack volume with a negative size to ensure it raises a BadRequest exception. """ - volume_settings = VolumeSettings( + volume_settings = VolumeConfig( name=self.__class__.__name__ + '-' + str(self.guid), size=-1) # Create Volume @@ -248,7 +249,7 @@ class CreateSimpleVolumeFailureTests(OSIntegrationTestCase): Tests the creation of an OpenStack volume with a type that does not exist to ensure it raises a NotFound exception. """ - volume_settings = VolumeSettings( + volume_settings = VolumeConfig( name=self.__class__.__name__ + '-' + str(self.guid), type_name='foo') @@ -263,7 +264,7 @@ class CreateSimpleVolumeFailureTests(OSIntegrationTestCase): Tests the creation of an OpenStack volume with an image that does not exist to ensure it raises a BadRequest exception. """ - volume_settings = VolumeSettings( + volume_settings = VolumeConfig( name=self.__class__.__name__ + '-' + str(self.guid), image_name='foo') @@ -278,7 +279,7 @@ class CreateSimpleVolumeFailureTests(OSIntegrationTestCase): Tests the creation of an OpenStack volume with an availability zone that does not exist to ensure it raises a BadRequest exception. """ - volume_settings = VolumeSettings( + volume_settings = VolumeConfig( name=self.__class__.__name__ + '-' + str(self.guid), availability_zone='foo') @@ -303,7 +304,7 @@ class CreateVolumeWithTypeTests(OSIntegrationTestCase): self.volume_type_name = guid + '-vol-type' self.volume_type_creator = OpenStackVolumeType( - self.os_creds, VolumeTypeSettings(name=self.volume_type_name)) + self.os_creds, VolumeTypeConfig(name=self.volume_type_name)) self.volume_type_creator.create() self.volume_creator = None @@ -321,7 +322,7 @@ class CreateVolumeWithTypeTests(OSIntegrationTestCase): """ self.volume_creator = OpenStackVolume( self.os_creds, - VolumeSettings(name=self.volume_name, type_name='foo')) + VolumeConfig(name=self.volume_name, type_name='foo')) with self.assertRaises(NotFound): self.volume_creator.create() @@ -332,8 +333,8 @@ class CreateVolumeWithTypeTests(OSIntegrationTestCase): """ self.volume_creator = OpenStackVolume( self.os_creds, - VolumeSettings(name=self.volume_name, - type_name=self.volume_type_name)) + VolumeConfig( + name=self.volume_name, type_name=self.volume_type_name)) created_volume = self.volume_creator.create(block=True) self.assertIsNotNone(created_volume) @@ -383,7 +384,7 @@ class CreateVolumeWithImageTests(OSIntegrationTestCase): """ self.volume_creator = OpenStackVolume( self.os_creds, - VolumeSettings(name=self.volume_name, image_name='foo')) + VolumeConfig(name=self.volume_name, image_name='foo')) with self.assertRaises(BadRequest): self.volume_creator.create(block=True) @@ -395,7 +396,7 @@ class CreateVolumeWithImageTests(OSIntegrationTestCase): """ self.volume_creator = OpenStackVolume( self.os_creds, - VolumeSettings(name=self.volume_name, image_name=self.image_name)) + VolumeConfig(name=self.volume_name, image_name=self.image_name)) created_volume = self.volume_creator.create(block=True) self.assertIsNotNone(created_volume) diff --git a/snaps/openstack/tests/create_volume_type_tests.py b/snaps/openstack/tests/create_volume_type_tests.py index 93e9351..70c40cc 100644 --- a/snaps/openstack/tests/create_volume_type_tests.py +++ b/snaps/openstack/tests/create_volume_type_tests.py @@ -12,7 +12,11 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -from snaps.openstack.create_qos import QoSSettings, Consumer, OpenStackQoS +from snaps.config.volume_type import ( + VolumeTypeConfig, VolumeTypeEncryptionConfig, VolumeTypeConfigError, + ControlLocation) +from snaps.config.qos import QoSConfig, Consumer +from snaps.openstack.create_qos import OpenStackQoS try: from urllib.request import URLError @@ -25,8 +29,7 @@ import uuid from snaps.openstack import create_volume_type from snaps.openstack.create_volume_type import ( - VolumeTypeSettings, VolumeTypeSettingsError, VolumeTypeEncryptionSettings, - ControlLocation) + VolumeTypeSettings, VolumeTypeEncryptionSettings) from snaps.openstack.tests.os_source_file_test import OSIntegrationTestCase from snaps.openstack.utils import cinder_utils @@ -41,11 +44,11 @@ class VolumeTypeSettingsUnitTests(unittest.TestCase): """ def test_no_params(self): - with self.assertRaises(VolumeTypeSettingsError): + with self.assertRaises(VolumeTypeConfigError): VolumeTypeSettings() def test_empty_config(self): - with self.assertRaises(VolumeTypeSettingsError): + with self.assertRaises(VolumeTypeConfigError): VolumeTypeSettings(**dict()) def test_name_only(self): @@ -109,7 +112,7 @@ class VolumeTypeSettingsUnitTests(unittest.TestCase): class CreateSimpleVolumeTypeSuccessTests(OSIntegrationTestCase): """ - Test for the OpenStackVolumeType class defined in create_volume_type.py + Test for the OpenStackVolumeType class defined in py without any QoS Specs or Encryption """ @@ -121,7 +124,7 @@ class CreateSimpleVolumeTypeSuccessTests(OSIntegrationTestCase): super(self.__class__, self).__start__() guid = uuid.uuid4() - self.volume_type_settings = VolumeTypeSettings( + self.volume_type_settings = VolumeTypeConfig( name=self.__class__.__name__ + '-' + str(guid)) self.cinder = cinder_utils.cinder_client(self.os_creds) @@ -220,7 +223,7 @@ class CreateVolumeTypeComplexTests(OSIntegrationTestCase): self.volume_type_name = guid + '-vol_type' self.volume_type_creator = None - qos_settings = QoSSettings( + qos_settings = QoSConfig( name=guid + '-qos-spec', consumer=Consumer.both) self.qos_creator = OpenStackQoS(self.os_creds, qos_settings) self.qos_creator.create() @@ -240,7 +243,7 @@ class CreateVolumeTypeComplexTests(OSIntegrationTestCase): """ self.volume_type_creator = create_volume_type.OpenStackVolumeType( self.os_creds, - VolumeTypeSettings( + VolumeTypeConfig( name=self.volume_type_name, qos_spec_name=self.qos_creator.qos_settings.name)) @@ -264,12 +267,12 @@ class CreateVolumeTypeComplexTests(OSIntegrationTestCase): """ Creates a Volume Type object with encryption """ - encryption_settings = VolumeTypeEncryptionSettings( + encryption_settings = VolumeTypeEncryptionConfig( name='foo', provider_class='bar', control_location=ControlLocation.back_end) self.volume_type_creator = create_volume_type.OpenStackVolumeType( self.os_creds, - VolumeTypeSettings( + VolumeTypeConfig( name=self.volume_type_name, encryption=encryption_settings)) @@ -293,12 +296,12 @@ class CreateVolumeTypeComplexTests(OSIntegrationTestCase): """ Creates a Volume Type object with encryption and an associated QoS Spec """ - encryption_settings = VolumeTypeEncryptionSettings( + encryption_settings = VolumeTypeEncryptionConfig( name='foo', provider_class='bar', control_location=ControlLocation.back_end) self.volume_type_creator = create_volume_type.OpenStackVolumeType( self.os_creds, - VolumeTypeSettings( + VolumeTypeConfig( name=self.volume_type_name, encryption=encryption_settings, qos_spec_name=self.qos_creator.qos_settings.name)) diff --git a/snaps/openstack/tests/openstack_tests.py b/snaps/openstack/tests/openstack_tests.py index 16fb0b5..78e8601 100644 --- a/snaps/openstack/tests/openstack_tests.py +++ b/snaps/openstack/tests/openstack_tests.py @@ -17,9 +17,9 @@ import re import pkg_resources from snaps import file_utils -from snaps.openstack.create_image import ImageSettings -from snaps.openstack.create_network import NetworkSettings, SubnetSettings -from snaps.openstack.create_router import RouterSettings +from snaps.config.image import ImageConfig +from snaps.config.network import NetworkConfig, SubnetConfig +from snaps.config.router import RouterConfig from snaps.openstack.os_credentials import OSCreds, ProxySettings __author__ = 'spisarski' @@ -81,7 +81,7 @@ def get_credentials(os_env_file=None, proxy_settings_str=None, elif config.get('OS_INSECURE'): https_cacert = False - interface = 'admin' + interface = 'public' if config.get('OS_INTERFACE'): interface = config.get('OS_INTERFACE') @@ -171,7 +171,7 @@ def create_image_settings(image_name, image_user, image_format, metadata, logger.debug('Image metadata - ' + str(metadata)) if metadata and 'config' in metadata: - return ImageSettings(**metadata['config']) + return ImageConfig(**metadata['config']) disk_file = None if metadata: @@ -185,10 +185,9 @@ def create_image_settings(image_name, image_user, image_format, metadata, if metadata and \ ('kernel_file' in metadata or 'kernel_url' in metadata) and \ kernel_settings is None: - kernel_image_settings = ImageSettings( + kernel_image_settings = ImageConfig( name=image_name + '-kernel', image_user=image_user, - img_format=image_format, - image_file=metadata.get('kernel_file'), + img_format=image_format, image_file=metadata.get('kernel_file'), url=metadata.get('kernel_url'), public=public) else: kernel_image_settings = kernel_settings @@ -196,7 +195,7 @@ def create_image_settings(image_name, image_user, image_format, metadata, if metadata and \ ('ramdisk_file' in metadata or 'ramdisk_url' in metadata) and \ ramdisk_settings is None: - ramdisk_image_settings = ImageSettings( + ramdisk_image_settings = ImageConfig( name=image_name + '-ramdisk', image_user=image_user, img_format=image_format, image_file=metadata.get('ramdisk_file'), @@ -208,13 +207,13 @@ def create_image_settings(image_name, image_user, image_format, metadata, if metadata and 'extra_properties' in metadata: extra_properties = metadata['extra_properties'] - return ImageSettings(name=image_name, image_user=image_user, - img_format=image_format, image_file=disk_file, - url=disk_url, extra_properties=extra_properties, - kernel_image_settings=kernel_image_settings, - ramdisk_image_settings=ramdisk_image_settings, - public=public, - nic_config_pb_loc=nic_config_pb_loc) + return ImageConfig(name=image_name, image_user=image_user, + img_format=image_format, image_file=disk_file, + url=disk_url, extra_properties=extra_properties, + kernel_image_settings=kernel_image_settings, + ramdisk_image_settings=ramdisk_image_settings, + public=public, + nic_config_pb_loc=nic_config_pb_loc) def cirros_image_settings(name=None, url=None, image_metadata=None, @@ -248,8 +247,8 @@ def cirros_image_settings(name=None, url=None, image_metadata=None, def file_image_test_settings(name, file_path, image_user=CIRROS_USER): - return ImageSettings(name=name, image_user=image_user, - img_format=DEFAULT_IMAGE_FORMAT, image_file=file_path) + return ImageConfig(name=name, image_user=image_user, + img_format=DEFAULT_IMAGE_FORMAT, image_file=file_path) def centos_image_settings(name, url=None, image_metadata=None, @@ -339,17 +338,17 @@ class OSNetworkConfig: router_name=None, external_gateway=None): if subnet_name and subnet_cidr: - self.network_settings = NetworkSettings( + self.network_settings = NetworkConfig( name=net_name, subnet_settings=[ - SubnetSettings(cidr=subnet_cidr, name=subnet_name)]) + SubnetConfig(cidr=subnet_cidr, name=subnet_name)]) else: - self.network_settings = NetworkSettings(name=net_name) + self.network_settings = NetworkConfig(name=net_name) if router_name: if subnet_name: - self.router_settings = RouterSettings( + self.router_settings = RouterConfig( name=router_name, external_gateway=external_gateway, internal_subnets=[subnet_name]) else: - self.router_settings = RouterSettings( + self.router_settings = RouterConfig( name=router_name, external_gateway=external_gateway) diff --git a/snaps/openstack/tests/os_source_file_test.py b/snaps/openstack/tests/os_source_file_test.py index 1617f91..ef4fcfa 100644 --- a/snaps/openstack/tests/os_source_file_test.py +++ b/snaps/openstack/tests/os_source_file_test.py @@ -14,14 +14,12 @@ # limitations under the License. import logging import pkg_resources -import requests -from requests.packages.urllib3.exceptions import InsecureRequestWarning import uuid import unittest from snaps import file_utils -from snaps.openstack.create_project import ProjectSettings -from snaps.openstack.create_user import UserSettings +from snaps.config.project import ProjectConfig +from snaps.config.user import UserConfig from snaps.openstack.tests import openstack_tests from snaps.openstack.utils import deploy_utils, keystone_utils @@ -29,8 +27,6 @@ from snaps.openstack.utils import deploy_utils, keystone_utils dev_os_env_file = pkg_resources.resource_filename( 'snaps.openstack.tests.conf', 'os_env.yaml') -requests.packages.urllib3.disable_warnings(InsecureRequestWarning) - class OSComponentTestCase(unittest.TestCase): @@ -149,12 +145,12 @@ class OSIntegrationTestCase(OSComponentTestCase): guid = self.__class__.__name__ + '-' + str(uuid.uuid4())[:-19] project_name = guid + '-proj' self.project_creator = deploy_utils.create_project( - self.admin_os_creds, ProjectSettings( + self.admin_os_creds, ProjectConfig( name=project_name, domain=self.admin_os_creds.project_domain_name)) self.user_creator = deploy_utils.create_user( - self.admin_os_creds, UserSettings( + self.admin_os_creds, UserConfig( name=guid + '-user', password=guid, project_name=project_name, roles={ 'admin': self.project_creator.project_settings.name}, |