summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSoren Hansen <soren.hansen@rackspace.com>2010-09-27 12:07:55 +0200
committerSoren Hansen <soren.hansen@rackspace.com>2010-09-27 12:07:55 +0200
commitb4dbc4efa576af61ddc26d1c277237ad4bcdfcfa (patch)
treeaa36fc8986d954c2108f4a2593a06e4a68ffd92e
parentab2bed9ed60c5333a0f9ba3e679df9893781b72f (diff)
Add db api methods for retrieving the networks for which a host is the designated network host.
-rw-r--r--nova/db/api.py12
-rw-r--r--nova/db/sqlalchemy/api.py12
2 files changed, 24 insertions, 0 deletions
diff --git a/nova/db/api.py b/nova/db/api.py
index c1cb1953a..4657408db 100644
--- a/nova/db/api.py
+++ b/nova/db/api.py
@@ -554,3 +554,15 @@ def volume_update(context, volume_id, values):
"""
return IMPL.volume_update(context, volume_id, values)
+
+
+###################
+
+
+def host_get_networks(context, host):
+ """Return all networks for which the given host is the designated
+ network host
+ """
+ return IMPL.host_get_networks(context, host)
+
+
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index 2b0dd6ea6..6e6b0e3fc 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -848,3 +848,15 @@ def volume_update(_context, volume_id, values):
for (key, value) in values.iteritems():
volume_ref[key] = value
volume_ref.save(session=session)
+
+
+###################
+
+
+def host_get_networks(context, host):
+ session = get_session()
+ with session.begin():
+ return session.query(models.Network
+ ).filter_by(deleted=False
+ ).filter_by(host=host
+ ).all()