summaryrefslogtreecommitdiffstats
path: root/nova/db
diff options
context:
space:
mode:
Diffstat (limited to 'nova/db')
-rw-r--r--nova/db/api.py5
-rw-r--r--nova/db/sqlalchemy/api.py10
2 files changed, 15 insertions, 0 deletions
diff --git a/nova/db/api.py b/nova/db/api.py
index 601bdcee0..915589fb3 100644
--- a/nova/db/api.py
+++ b/nova/db/api.py
@@ -357,6 +357,11 @@ def fixed_ip_create(context, values):
return IMPL.fixed_ip_create(context, values)
+def fixed_ip_bulk_create(context, ips):
+ """Create a lot of fixed ips from the values dictionary."""
+ return IMPL.fixed_ip_bulk_create(context, ips)
+
+
def fixed_ip_disassociate(context, address):
"""Disassociate a fixed ip from an instance by address."""
return IMPL.fixed_ip_disassociate(context, address)
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index 983c48145..47efb9019 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -768,6 +768,16 @@ def fixed_ip_create(_context, values):
@require_context
+def fixed_ip_bulk_create(_context, ips):
+ session = get_session()
+ with session.begin():
+ for ip in ips:
+ model = models.FixedIp()
+ model.update(ip)
+ session.add(model)
+
+
+@require_context
def fixed_ip_disassociate(context, address):
session = get_session()
with session.begin():