diff options
| author | Giampaolo Lauria <lauria@us.ibm.com> | 2013-03-15 14:55:12 -0400 |
|---|---|---|
| committer | Giampaolo Lauria <lauria@us.ibm.com> | 2013-03-22 11:12:44 -0400 |
| commit | 074f64cd67b96f31b9e43299b633e9df71450f59 (patch) | |
| tree | 0a1e6a2daccbe8bfe7ffa3fd1bf9f34ae94dfb18 | |
| parent | c21016c26749f4efb0978d5e4fea9560fc4d0603 (diff) | |
Remove unnecessary checks in api.py
Remove existing check to ensure instance was running
when adding or removing security groups to/from an
instance.
Modified unit test accordingly
Fixes bug 1107721
Change-Id: If1148653edd96bd70b983c2fa89cd9973d80e48b
| -rw-r--r-- | nova/compute/api.py | 8 | ||||
| -rw-r--r-- | nova/tests/api/openstack/compute/contrib/test_security_groups.py | 11 |
2 files changed, 5 insertions, 14 deletions
diff --git a/nova/compute/api.py b/nova/compute/api.py index d9105470a..2e7ea4a11 100644 --- a/nova/compute/api.py +++ b/nova/compute/api.py @@ -2986,10 +2986,6 @@ class SecurityGroupAPI(base.Base, security_group_base.SecurityGroupBase): security_group_id=security_group['id'], instance_id=instance_uuid) - #check if the instance is in running state - if instance['power_state'] != power_state.RUNNING: - raise exception.InstanceNotRunning(instance_id=instance_uuid) - self.db.instance_add_security_group(context.elevated(), instance_uuid, security_group['id']) @@ -3016,10 +3012,6 @@ class SecurityGroupAPI(base.Base, security_group_base.SecurityGroupBase): security_group_id=security_group['id'], instance_id=instance_uuid) - #check if the instance is in running state - if instance['power_state'] != power_state.RUNNING: - raise exception.InstanceNotRunning(instance_id=instance_uuid) - self.db.instance_remove_security_group(context.elevated(), instance_uuid, security_group['id']) diff --git a/nova/tests/api/openstack/compute/contrib/test_security_groups.py b/nova/tests/api/openstack/compute/contrib/test_security_groups.py index 02aa96956..6c7a8ae8c 100644 --- a/nova/tests/api/openstack/compute/contrib/test_security_groups.py +++ b/nova/tests/api/openstack/compute/contrib/test_security_groups.py @@ -24,6 +24,7 @@ from nova.api.openstack.compute.contrib import security_groups from nova.api.openstack import wsgi from nova.api.openstack import xmlutil from nova import compute +from nova.compute import power_state import nova.db from nova import exception from nova.openstack.common import jsonutils @@ -93,8 +94,8 @@ def return_server_by_uuid(context, server_uuid): def return_non_running_server(context, server_id): - return {'id': server_id, 'power_state': 0x02, 'uuid': FAKE_UUID, - 'host': "localhost", 'name': 'asdf'} + return {'id': server_id, 'power_state': power_state.SHUTDOWN, + 'uuid': FAKE_UUID, 'host': "localhost", 'name': 'asdf'} def return_security_group_by_name(context, project_id, group_name): @@ -518,8 +519,7 @@ class TestSecurityGroups(test.TestCase): body = dict(addSecurityGroup=dict(name="test")) req = fakes.HTTPRequest.blank('/v2/fake/servers/1/action') - self.assertRaises(webob.exc.HTTPBadRequest, - self.manager._addSecurityGroup, req, '1', body) + self.manager._addSecurityGroup(req, '1', body) def test_associate_already_associated_security_group_to_instance(self): self.stubs.Set(nova.db, 'instance_get', return_server) @@ -613,8 +613,7 @@ class TestSecurityGroups(test.TestCase): body = dict(removeSecurityGroup=dict(name="test")) req = fakes.HTTPRequest.blank('/v2/fake/servers/1/action') - self.assertRaises(webob.exc.HTTPBadRequest, - self.manager._removeSecurityGroup, req, '1', body) + self.manager._removeSecurityGroup(req, '1', body) def test_disassociate_already_associated_security_group_to_instance(self): self.stubs.Set(nova.db, 'instance_get', return_server) |
