summaryrefslogtreecommitdiffstats
path: root/nova/api
diff options
context:
space:
mode:
authorAaron Rosen <arosen@nicira.com>2013-03-25 10:17:17 -0700
committerAaron Rosen <arosen@nicira.com>2013-03-25 14:41:02 -0700
commit3492a7bfc54cb9d581d8a119a08448c01039e80c (patch)
treec6d1bd6263556905f6c40693f617db4dbf48f3a0 /nova/api
parentae2aa3c2c2211d9c5670a05b02782706b4c19f01 (diff)
downloadnova-3492a7bfc54cb9d581d8a119a08448c01039e80c.tar.gz
nova-3492a7bfc54cb9d581d8a119a08448c01039e80c.tar.xz
nova-3492a7bfc54cb9d581d8a119a08448c01039e80c.zip
Fix /servers/<instance-id>os-security-groups using quantum
When using quantum security groups: GET /servers/<instance-id>/os-security-groups aways returns an empty list. This patch adds a call to get_instance_security_groups in the api implemenation of security groups. This method passes both the instance_id and instance_uuid so the api layer does not need to be aware of which underlying implementation is being used. The instance_id is needed when using nova and when using quantum the instance_uuid is needed so both need to be passed. Fixes bug 1159793 Change-Id: I372adcf93c55d4e6469ef08429ec260d3387f9fe
Diffstat (limited to 'nova/api')
-rw-r--r--nova/api/openstack/compute/contrib/security_groups.py5
1 files changed, 2 insertions, 3 deletions
diff --git a/nova/api/openstack/compute/contrib/security_groups.py b/nova/api/openstack/compute/contrib/security_groups.py
index ce6f2687f..615bf9764 100644
--- a/nova/api/openstack/compute/contrib/security_groups.py
+++ b/nova/api/openstack/compute/contrib/security_groups.py
@@ -27,7 +27,6 @@ from nova.api.openstack import wsgi
from nova.api.openstack import xmlutil
from nova import compute
from nova.compute import api as compute_api
-from nova import db
from nova import exception
from nova.network.security_group import openstack_driver
from nova.network.security_group import quantum_driver
@@ -390,8 +389,8 @@ class ServerSecurityGroupController(SecurityGroupControllerBase):
except exception.InstanceNotFound as exp:
raise exc.HTTPNotFound(explanation=unicode(exp))
- groups = db.security_group_get_by_instance(context, instance['id'])
-
+ groups = self.security_group_api.get_instance_security_groups(
+ req, instance['id'], instance['uuid'], True)
result = [self._format_security_group(context, group)
for group in groups]