def setUp(self): """ Instantiates the CreateImage object that is responsible for downloading and creating an OS image file within OpenStack """ # Create Image self.os_image_settings = openstack_tests.get_image_test_settings() self.image_creator = create_image.OpenStackImage( self.os_creds, self.os_image_settings.image_user, self.os_image_settings.format, self.os_image_settings.url, self.os_image_settings.name, self.os_image_settings.download_file_path) self.image_creator.create() # Create Network self.network_creator = create_network.OpenStackNetwork( self.os_creds, pub_net_config.network_settings, pub_net_config.subnet_settings, pub_net_config.router_settings) self.network_creator.create() self.keypair_creator = create_keypairs.OpenStackKeypair( self.os_creds, create_keypairs.KeypairSettings( name=keypair_name, public_filepath=keypair_pub_filepath, private_filepath=keypair_priv_filepath)) self.keypair_creator.create() self.inst_creator = None
def setUp(self): """ Instantiates the CreateImage object that is responsible for downloading and creating an OS image file within OpenStack """ self.os_image = create_image.OpenStackImage( self.os_creds, os_image_settings.image_user, os_image_settings.format, os_image_settings.url, os_image_settings.name, os_image_settings.download_file_path)
def testBadImageUrl(self): """ Expect an exception when the image download url is bad """ self.createImage = create_image.OpenStackImage( self.os_creds, os_image_settings.image_user, os_image_settings.format, 'http://bad.url.com/bad.iso', os_image_settings.name, os_image_settings.download_file_path) with self.assertRaises(Exception): self.createImage.create()
def testNoneImageName(self): """ Expect an exception when the image name is None """ self.createImage = create_image.OpenStackImage( self.os_creds, os_image_settings.image_user, os_image_settings.format, os_image_settings.url, None, os_image_settings.download_file_path) with self.assertRaises(Exception): self.createImage.create()
def testInvalidDirectory(self): """ Expect an exception when the download destination path cannot be created """ self.createImage = create_image.OpenStackImage( self.os_creds, os_image_settings.image_user, os_image_settings.format, os_image_settings.url, os_image_settings.name, '/foo') with self.assertRaises(Exception): self.createImage.create()
def setUp(self): """ Instantiates the CreateImage object that is responsible for downloading and creating an OS image file within OpenStack """ # Create Image self.os_image_settings = openstack_tests.get_instance_image_settings() self.image_creator = create_image.OpenStackImage(self.os_creds, self.os_image_settings.image_user, self.os_image_settings.format, self.os_image_settings.url, self.os_image_settings.name, self.os_image_settings.download_file_path) self.image_creator.create() # Create Network self.network_creators = list() # First network is public self.network_creators.append(create_network.OpenStackNetwork(self.os_creds, pub_net_config.network_settings, pub_net_config.subnet_settings, pub_net_config.router_settings)) # Second network is private self.network_creators.append(create_network.OpenStackNetwork(self.os_creds, priv_net_config.network_settings, priv_net_config.subnet_settings, priv_net_config.router_settings)) for network_creator in self.network_creators: network_creator.create() self.keypair_creator = create_keypairs.OpenStackKeypair(self.os_creds, create_keypairs.KeypairSettings(name=keypair_name, public_filepath=keypair_pub_filepath, private_filepath=keypair_priv_filepath)) self.keypair_creator.create() floating_ip_conf = dict() ports = [] for network_creator in self.network_creators: idx = self.network_creators.index(network_creator) # port_name = 'test-port-' + `idx` port_name = 'test-port-' + repr(idx) if idx == 0: floating_ip_conf = {'port_name': port_name, 'ext_net': pub_net_config.router_settings.external_gateway} port_settings = create_network.PortSettings(name=port_name) ports.append(neutron_utils.create_port(network_creator.neutron, port_settings, network_creator.network)) # Create instance self.inst_creator = create_instance.OpenStackVmInstance(self.os_creds, vm_inst_name, flavor, self.image_creator, ports, self.os_image_settings.image_user, keypair_creator=self.keypair_creator, floating_ip_conf=floating_ip_conf) self.inst_creator.create() self.test_file_local_path = '/tmp/hello.txt'
def testNoneUser(self): """ Expect an exception when the tenant name is None """ with self.assertRaises(Exception): self.createImage = create_image.OpenStackImage( os_credentials.OSCreds(None, self.os_creds.password, self.os_creds.os_auth_url, self.os_creds.tenant_name), os_image_settings.image_user, os_image_settings.format, os_image_settings.url, os_image_settings.name, os_image_settings.download_file_path)
def testCreateSameImage(self): """ Tests the creation of an OpenStack image when the image already exists. """ # Create Image image1 = self.os_image.create() # Should be retrieving the instance data os_image_2 = create_image.OpenStackImage( self.os_creds, os_image_settings.image_user, os_image_settings.format, os_image_settings.url, os_image_settings.name, os_image_settings.download_file_path) image2 = os_image_2.create() self.assertEquals(image1['id'], image2['id'])