Merge "Make secgroup rules refresh with refresh_instance_security_rules()"

This commit is contained in:
Jenkins 2015-10-20 15:21:38 +00:00 committed by Gerrit Code Review
commit 542552754d
4 changed files with 9 additions and 18 deletions

View File

@ -4041,10 +4041,9 @@ class SecurityGroupAPI(base.Base, security_group_base.SecurityGroupBase):
self.db.instance_add_security_group(context.elevated(),
instance_uuid,
security_group['id'])
# NOTE(comstud): No instance_uuid argument to this compute manager
# call
self.compute_rpcapi.refresh_security_group_rules(context,
security_group['id'], host=instance.host)
if instance.host:
self.compute_rpcapi.refresh_instance_security_rules(
context, instance.host, instance)
@wrap_check_security_groups_policy
def remove_from_instance(self, context, instance, security_group_name):
@ -4064,10 +4063,9 @@ class SecurityGroupAPI(base.Base, security_group_base.SecurityGroupBase):
self.db.instance_remove_security_group(context.elevated(),
instance_uuid,
security_group['id'])
# NOTE(comstud): No instance_uuid argument to this compute manager
# call
self.compute_rpcapi.refresh_security_group_rules(context,
security_group['id'], host=instance.host)
if instance.host:
self.compute_rpcapi.refresh_instance_security_rules(
context, instance.host, instance)
def get_rule(self, context, id):
self.ensure_default(context)

View File

@ -1347,6 +1347,8 @@ class ComputeManager(manager.Manager):
def get_console_pool_info(self, context, console_type):
return self.driver.get_console_pool_info(console_type)
# NOTE(hanlind): This and the virt method it calls can be removed in
# version 5.0 of the RPC API
@wrap_exception()
def refresh_security_group_rules(self, context, security_group_id):
"""Tell the virtualization driver to refresh security group rules.

View File

@ -310,6 +310,7 @@ class ComputeAPI(object):
can handle the version_cap being set to 4.5
* ... - Remove refresh_security_group_members()
* ... - Remove refresh_security_group_rules()
'''
VERSION_ALIASES = {
@ -964,12 +965,6 @@ class ComputeAPI(object):
cctxt.cast(ctxt, 'unquiesce_instance', instance=instance,
mapping=mapping)
def refresh_security_group_rules(self, ctxt, security_group_id, host):
version = '4.0'
cctxt = self.client.prepare(server=host, version=version)
cctxt.cast(ctxt, 'refresh_security_group_rules',
security_group_id=security_group_id)
def refresh_instance_security_rules(self, ctxt, host, instance):
version = '4.4'
if not self.client.can_send_version(version):

View File

@ -352,10 +352,6 @@ class ComputeRpcAPITestCase(test.NoDBTestCase):
self._test_compute_api('refresh_provider_fw_rules', 'cast',
host='host')
def test_refresh_security_group_rules(self):
self._test_compute_api('refresh_security_group_rules', 'cast',
security_group_id='id', host='host', version='4.0')
def test_refresh_instance_security_rules(self):
expected_args = {'instance': self.fake_instance_obj}
self._test_compute_api('refresh_instance_security_rules', 'cast',