diff options
| author | Vishvananda Ishaya <vishvananda@yahoo.com> | 2010-09-07 12:37:18 -0700 |
|---|---|---|
| committer | Vishvananda Ishaya <vishvananda@yahoo.com> | 2010-09-07 12:37:18 -0700 |
| commit | 8521e83fe485c0354af6c697dbdadd9eee4d8b1c (patch) | |
| tree | bcff0df8235d35bbd91e47848b9d8e481bd741f1 | |
| parent | 0e400788cedc592e40750f6fc7291970f243a218 (diff) | |
fix floating_ip to follow standard create pattern
| -rw-r--r-- | nova/db/api.py | 6 | ||||
| -rw-r--r-- | nova/db/sqlalchemy/api.py | 8 | ||||
| -rw-r--r-- | nova/tests/network_unittest.py | 7 |
3 files changed, 11 insertions, 10 deletions
diff --git a/nova/db/api.py b/nova/db/api.py index b49707392..0f9d58f42 100644 --- a/nova/db/api.py +++ b/nova/db/api.py @@ -87,9 +87,9 @@ def floating_ip_allocate_address(context, host, project_id): return IMPL.floating_ip_allocate_address(context, host, project_id) -def floating_ip_create(context, address, host): - """Create a floating ip for a given address on the specified host.""" - return IMPL.floating_ip_create(context, address, host) +def floating_ip_create(context, values): + """Create a floating ip from the values dictionary.""" + return IMPL.floating_ip_create(context, values) def floating_ip_disassociate(context, address): diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py index 5172b87b3..bc7a4e1ce 100644 --- a/nova/db/sqlalchemy/api.py +++ b/nova/db/sqlalchemy/api.py @@ -79,12 +79,12 @@ def floating_ip_allocate_address(_context, host, project_id): return floating_ip_ref['address'] -def floating_ip_create(_context, address, host): +def floating_ip_create(_context, values): floating_ip_ref = models.FloatingIp() - floating_ip_ref['address'] = address - floating_ip_ref['host'] = host + for (key, value) in values.iteritems(): + floating_ip_ref[key] = value floating_ip_ref.save() - return floating_ip_ref + return floating_ip_ref['address'] def floating_ip_fixed_ip_associate(_context, floating_address, fixed_address): diff --git a/nova/tests/network_unittest.py b/nova/tests/network_unittest.py index f3124c1ba..8e462b9d3 100644 --- a/nova/tests/network_unittest.py +++ b/nova/tests/network_unittest.py @@ -87,11 +87,12 @@ class NetworkTestCase(test.TrialTestCase): """Makes sure that we can allocaate a public ip""" # TODO(vish): better way of adding floating ips pubnet = IPy.IP(flags.FLAGS.public_range) - ip_str = str(pubnet[0]) + address = str(pubnet[0]) try: - db.floating_ip_get_by_address(None, ip_str) + db.floating_ip_get_by_address(None, address) except exception.NotFound: - db.floating_ip_create(None, ip_str, FLAGS.host) + db.floating_ip_create(None, {'address': address, + 'host': FLAGS.host}) float_addr = self.network.allocate_floating_ip(self.context, self.projects[0].id) fix_addr = self._create_address(0) |
