def create_vm_large_flavor(self, block_device_mapping=None): started_time = int(round(time.time() * 1000)) image_id = 'ami-9e6af129' # if block_device_mapping is not None: # image_id = None self.amazon_driver = AmazonDriver(amazon_config_driver) result = self.amazon_driver.create( block_device_mapping, image_id, 'm1.large', 'subnet-94e5201d', 'cal' # keypair ) print(result[0]) if (result[0]): ended_time = int(round(time.time() * 1000)) print 'LARGE_FLAVOR CREATED_TIME (ms): ', ended_time - started_time # self.delete_server(result[0].id) return result[0]
def __init__(self): self.amazon_driver = AmazonDriver(amazon_config_driver) self.amazon_volume_driver = AmazonVolumeDriver(amazon_config_driver) self.amazon_net_driver = AmazonNetDriver(amazon_config_driver)
class AmazonTest(): def __init__(self): self.amazon_driver = AmazonDriver(amazon_config_driver) self.amazon_volume_driver = AmazonVolumeDriver(amazon_config_driver) self.amazon_net_driver = AmazonNetDriver(amazon_config_driver) def create_vm_small_flavor(self, block_device_mapping=None): started_time = int(round(time.time() * 1000)) image_id = 'ami-9e6af129' # if block_device_mapping is not None: # image_id = 'ami-9e6af129' self.amazon_driver = AmazonDriver(amazon_config_driver) result = self.amazon_driver.create( 'm1.small', 'subnet-94e5201d', 'cal', # keypair block_device_mapping, image_id, ) print(result[0]) if (result[0]): ended_time = int(round(time.time() * 1000)) print 'SMALL_FLAVOR CREATED_TIME (ms): ', ended_time - started_time # self.delete_server(result[0].id) return result[0] def create_vm_medium_flavor(self, block_device_mapping=None): started_time = int(round(time.time() * 1000)) image_id = 'ami-9e6af129' # if block_device_mapping is not None: # image_id = None self.amazon_driver = AmazonDriver(amazon_config_driver) result = self.amazon_driver.create( block_device_mapping, image_id, 'm1.medium', 'subnet-94e5201d', 'cal' # keypair ) print(result[0]) if (result[0]): ended_time = int(round(time.time() * 1000)) print 'MEDIUM_FLAVOR CREATED_TIME (ms): ', ended_time - started_time # self.delete_server(result[0].id) return result[0] def create_vm_large_flavor(self, block_device_mapping=None): started_time = int(round(time.time() * 1000)) image_id = 'ami-9e6af129' # if block_device_mapping is not None: # image_id = None self.amazon_driver = AmazonDriver(amazon_config_driver) result = self.amazon_driver.create( block_device_mapping, image_id, 'm1.large', 'subnet-94e5201d', 'cal' # keypair ) print(result[0]) if (result[0]): ended_time = int(round(time.time() * 1000)) print 'LARGE_FLAVOR CREATED_TIME (ms): ', ended_time - started_time # self.delete_server(result[0].id) return result[0] def delete_server(self, id): time.sleep(10) print 'DELETED', id self.amazon_driver.delete(id) time.sleep(10) def create_volume(self): configs = { 'size': 15, 'name': 'Amazon-Cal-Vol-Test', 'snapshot_id': 'snap-e6bfaec3' } return self.amazon_volume_driver.create(configs) def create_snapshot(self): configs = { 'description': 'snapshot for testing CAL with EC2', 'name': 'cal-snapshot' } return self.amazon_volume_driver.create_snapshot(configs) def associate_public_ip(self, allocation_id, instance_id): started_time = int(round(time.time() * 1000)) configs = {'allocation_id': allocation_id, 'instance_id': instance_id} result = self.amazon_driver.associate_public_ip(configs) ended_time = int(round(time.time() * 1000)) print 'Associate Public IP in (ms): ', ended_time - started_time return result def is_valid_pub_ip(self, pub_ip): search_opts = { 'Filters': [ { 'Name': 'network-interface.addresses.association.public-ip', 'Values': [ pub_ip, ] }, ] } instances = self.amazon_driver.list(**search_opts) return False if len(instances) else True
def setUp(self): super(AmazonDriverTest, self).setUp() self.fake_driver = AmazonDriver(fake_config_driver)
class AmazonDriverTest(base.TestCase): """docstring for AmazonDriverTest""" def setUp(self): super(AmazonDriverTest, self).setUp() self.fake_driver = AmazonDriver(fake_config_driver) def test_create_successfully(self): self.mock_object( self.fake_driver.resource, 'create_instances', mock.Mock(return_value=mock.Mock)) self.fake_driver.create( 'fake_image_id', 'fake_flavor_id', 'fake_net_id', 'fake_name' ) self.fake_driver.resource.create_instances.\ assert_called_once_with( ImageId='fake_image_id', MinCount=1, MaxCount=1, InstanceType='fake_flavor_id', SubnetId='fake_net_id', IamInstanceProfile={ 'Arn': '', 'Name': 'fake_name' } ) def test_create_without_instance_name(self): self.mock_object( self.fake_driver.resource, 'create_instances', mock.Mock(return_value=mock.Mock)) self.fake_driver.create( 'fake_image_id', 'fake_flavor_id', 'fake_net_id' ) self.fake_driver.resource.create_instances. \ assert_called_once_with( ImageId='fake_image_id', MinCount=1, MaxCount=1, InstanceType='fake_flavor_id', SubnetId='fake_net_id', IamInstanceProfile={ 'Arn': '', 'Name': mock.ANY } ) def test_create_unable_to_create_instance(self): self.mock_object( self.fake_driver.resource, 'create_instances', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' )) ) self.assertRaises(ClientError, self.fake_driver.create, 'fake_image_id', 'fake_flavor_id', 'fake_net_id', 'fake_name') self.fake_driver.resource.create_instances. \ assert_called_once_with( ImageId='fake_image_id', MinCount=1, MaxCount=1, InstanceType='fake_flavor_id', SubnetId='fake_net_id', IamInstanceProfile={ 'Arn': '', 'Name': mock.ANY } ) def test_show_successfully(self): self.mock_object( self.fake_driver.client, 'describe_instances', mock.Mock(return_value=fake_describe_return)) self.fake_driver.show('fake_id') self.fake_driver.client.describe_instances. \ assert_called_once_with(InstanceIds=['fake_id']) def test_show_unable_to_show(self): self.mock_object( self.fake_driver.client, 'describe_instances', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' )) ) self.assertRaises(ClientError, self.fake_driver.show, 'fake_id') self.fake_driver.client.describe_instances. \ assert_called_once_with(InstanceIds=['fake_id']) def test_list_successfully(self): self.mock_object( self.fake_driver.client, 'describe_instances', mock.Mock(return_value=fake_describe_return)) self.fake_driver.list() self.fake_driver.client.describe_instances. \ assert_called_once_with() def test_list_unable_to_list(self): self.mock_object( self.fake_driver.client, 'describe_instances', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' )) ) self.assertRaises(ClientError, self.fake_driver.list) self.fake_driver.client.describe_instances. \ assert_called_once_with() def test_delete_successfully(self): self.mock_object( self.fake_driver.resource, 'Instance', mock.Mock(return_value=FakeInstance())) self.fake_driver.delete('fake_id') def test_delete_unable_to_list(self): self.mock_object( self.fake_driver.resource, 'Instance', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' )) ) self.assertRaises(ClientError, self.fake_driver.delete, 'fake_id') def test_shutdown_successfully(self): self.mock_object( self.fake_driver.resource, 'Instance', mock.Mock(return_value=FakeInstance())) self.fake_driver.shutdown('fake_id') def test_shutdown_unable_to_list(self): self.mock_object( self.fake_driver.resource, 'Instance', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' )) ) self.assertRaises(ClientError, self.fake_driver.shutdown, 'fake_id') def test_start_successfully(self): self.mock_object( self.fake_driver.resource, 'Instance', mock.Mock(return_value=FakeInstance())) self.fake_driver.start('fake_id') def test_start_unable_to_list(self): self.mock_object( self.fake_driver.resource, 'Instance', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' )) ) self.assertRaises(ClientError, self.fake_driver.start, 'fake_id') def test_reboot_successfully(self): self.mock_object( self.fake_driver.resource, 'Instance', mock.Mock(return_value=FakeInstance())) self.fake_driver.reboot('fake_id') def test_reboot_unable_to_list(self): self.mock_object( self.fake_driver.resource, 'Instance', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' )) ) self.assertRaises(ClientError, self.fake_driver.reboot, 'fake_id') def test_add_nic_successfully(self): self.mock_object( self.fake_driver.client, 'attach_network_interface', mock.Mock(return_value=mock.Mock)) self.fake_driver.add_nic('fake_id', 'fake_net_id') self.fake_driver.client.attach_network_interface. \ assert_called_once_with('fake_id', 'fake_net_id', 1) def test_add_nic_unable_to_add(self): self.mock_object( self.fake_driver.client, 'attach_network_interface', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' ))) self.assertRaises(ClientError, self.fake_driver.add_nic, 'fake_id', 'fake_net_id') self.fake_driver.client.attach_network_interface. \ assert_called_once_with('fake_id', 'fake_net_id', 1) def test_delete_nic_successfully(self): self.mock_object( self.fake_driver.client, 'detach_network_interface', mock.Mock(return_value=mock.Mock)) self.fake_driver.delete_nic('fake_id', 'fake_attachment_id') self.fake_driver.client.detach_network_interface. \ assert_called_once_with('fake_attachment_id') def test_delete_nic_unable_to_delete(self): self.mock_object( self.fake_driver.client, 'detach_network_interface', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' ))) self.assertRaises(ClientError, self.fake_driver.delete_nic, 'fake_id', 'fake_attachment_id') self.fake_driver.client.detach_network_interface. \ assert_called_once_with('fake_attachment_id') def test_list_nic_successfully(self): self.mock_object( self.fake_driver.client, 'describe_instances', mock.Mock(return_value=fake_describe_return)) self.fake_driver.list_nic('fake_id') self.fake_driver.client.describe_instances. \ assert_called_once_with(InstanceIds=['fake_id']) def test_list_nic_unable_to_list(self): self.mock_object( self.fake_driver.client, 'describe_instances', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' ))) self.assertRaises(ClientError, self.fake_driver.list_nic, 'fake_id') self.fake_driver.client.describe_instances. \ assert_called_once_with(InstanceIds=['fake_id']) def test_list_ip_successfully(self): self.mock_object( self.fake_driver.client, 'describe_instances', mock.Mock(return_value=fake_describe_return)) self.fake_driver.list_ip('fake_id') self.fake_driver.client.describe_instances. \ assert_called_once_with(InstanceIds=['fake_id']) def test_list_ip_unable_to_delete(self): self.mock_object( self.fake_driver.client, 'describe_instances', mock.Mock(side_effect=ClientError( fake_error_code, 'operation_name' ))) self.assertRaises(ClientError, self.fake_driver.list_ip, 'fake_id') self.fake_driver.client.describe_instances. \ assert_called_once_with(InstanceIds=['fake_id'])