diff --git a/bin/nova-manage b/bin/nova-manage index 7b376962..c1426e26 100755 --- a/bin/nova-manage +++ b/bin/nova-manage @@ -851,7 +851,7 @@ class InstanceTypeCommands(object): help='rxtx_factor') @args('--is_public', dest="is_public", metavar='', help='Make flavor accessible to the public') - def create(self, name, memory, vcpus, root_gb, ephemeral_gb, flavorid, + def create(self, name, memory, vcpus, root_gb, ephemeral_gb, flavorid=None, swap=0, rxtx_factor=1, is_public=True): """Creates instance types / flavors""" try: diff --git a/nova/tests/test_instance_types.py b/nova/tests/test_instance_types.py index ed33a74b..d9d2669a 100644 --- a/nova/tests/test_instance_types.py +++ b/nova/tests/test_instance_types.py @@ -88,6 +88,18 @@ class InstanceTypeTestCase(test.TestCase): new_list = instance_types.get_all_types() self.assertEqual(original_list, new_list) + def test_instance_type_create_without_flavorid(self): + name = 'Small Flavor' + inst_type = instance_types.create(name, 256, 1, 120, 100) + self.assertNotEqual(inst_type['flavorid'], None) + self.assertEqual(inst_type['name'], name) + self.assertEqual(inst_type['memory_mb'], 256) + self.assertEqual(inst_type['vcpus'], 1) + self.assertEqual(inst_type['root_gb'], 120) + self.assertEqual(inst_type['ephemeral_gb'], 100) + self.assertEqual(inst_type['swap'], 0) + self.assertEqual(inst_type['rxtx_factor'], 1) + def test_instance_type_create_with_special_characters(self): """Ensure instance types raises InvalidInput for invalid characters""" name = "foo.bar!@#$%^-test_name"