Make nova-network use conductor for security groups refresh
This makes nova-network use the existing conductor interface for triggering security groups member refreshes. Related to blueprint nova-network-objects Change-Id: Ieca163d67cd005534acb225df83457d755295af9 Related-bug: 1290568
This commit is contained in:
parent
4d24d23fa0
commit
b1838c258d
|
@ -52,6 +52,7 @@ import netaddr
|
|||
from oslo.config import cfg
|
||||
from oslo import messaging
|
||||
|
||||
from nova import conductor
|
||||
from nova import context
|
||||
from nova import exception
|
||||
from nova import ipv6
|
||||
|
@ -61,7 +62,6 @@ from nova.network import driver
|
|||
from nova.network import floating_ips
|
||||
from nova.network import model as network_model
|
||||
from nova.network import rpcapi as network_rpcapi
|
||||
from nova.network.security_group import openstack_driver
|
||||
from nova.objects import base as obj_base
|
||||
from nova.objects import dns_domain as dns_domain_obj
|
||||
from nova.objects import fixed_ip as fixed_ip_obj
|
||||
|
@ -295,8 +295,7 @@ class NetworkManager(manager.Manager):
|
|||
CONF.floating_ip_dns_manager)
|
||||
self.network_api = network_api.API()
|
||||
self.network_rpcapi = network_rpcapi.NetworkAPI()
|
||||
self.security_group_api = (
|
||||
openstack_driver.get_openstack_security_group_driver())
|
||||
self.conductor_api = conductor.API()
|
||||
|
||||
self.servicegroup_api = servicegroup.API()
|
||||
|
||||
|
@ -401,8 +400,8 @@ class NetworkManager(manager.Manager):
|
|||
groups = instance.security_groups
|
||||
group_ids = [group.id for group in groups]
|
||||
|
||||
self.security_group_api.trigger_members_refresh(admin_context,
|
||||
group_ids)
|
||||
self.conductor_api.security_groups_trigger_members_refresh(
|
||||
admin_context, group_ids)
|
||||
|
||||
def get_floating_ips_by_fixed_address(self, context, fixed_address):
|
||||
# NOTE(jkoelker) This is just a stub function. Managers supporting
|
||||
|
|
|
@ -169,6 +169,7 @@ class FlatNetworkTestCase(test.TestCase):
|
|||
super(FlatNetworkTestCase, self).setUp()
|
||||
self.tempdir = self.useFixture(fixtures.TempDir()).path
|
||||
self.flags(log_dir=self.tempdir)
|
||||
self.flags(use_local=True, group='conductor')
|
||||
self.network = network_manager.FlatManager(host=HOST)
|
||||
self.network.instance_dns_domain = ''
|
||||
self.network.db = db
|
||||
|
@ -641,6 +642,7 @@ class VlanNetworkTestCase(test.TestCase):
|
|||
def setUp(self):
|
||||
super(VlanNetworkTestCase, self).setUp()
|
||||
self.useFixture(test.SampleNetworks())
|
||||
self.flags(use_local=True, group='conductor')
|
||||
self.network = network_manager.VlanManager(host=HOST)
|
||||
self.network.db = db
|
||||
self.context = context.RequestContext('testuser', 'testproject',
|
||||
|
@ -1539,6 +1541,7 @@ class CommonNetworkTestCase(test.TestCase):
|
|||
super(CommonNetworkTestCase, self).setUp()
|
||||
self.context = context.RequestContext('fake', 'fake')
|
||||
self.flags(ipv6_backend='rfc2462')
|
||||
self.flags(use_local=True, group='conductor')
|
||||
ipv6.reset_backend()
|
||||
|
||||
def test_validate_instance_zone_for_dns_domain(self):
|
||||
|
@ -2143,6 +2146,7 @@ class RPCAllocateTestCase(test.TestCase):
|
|||
"""Tests nova.network.manager.RPCAllocateFixedIP."""
|
||||
def setUp(self):
|
||||
super(RPCAllocateTestCase, self).setUp()
|
||||
self.flags(use_local=True, group='conductor')
|
||||
self.rpc_fixed = TestRPCFixedManager()
|
||||
self.context = context.RequestContext('fake', 'fake')
|
||||
|
||||
|
@ -2261,6 +2265,7 @@ class FloatingIPTestCase(test.TestCase):
|
|||
super(FloatingIPTestCase, self).setUp()
|
||||
self.tempdir = self.useFixture(fixtures.TempDir()).path
|
||||
self.flags(log_dir=self.tempdir)
|
||||
self.flags(use_local=True, group='conductor')
|
||||
self.network = TestFloatingIPManager()
|
||||
self.network.db = db
|
||||
self.project_id = 'testproject'
|
||||
|
@ -2751,6 +2756,7 @@ class InstanceDNSTestCase(test.TestCase):
|
|||
super(InstanceDNSTestCase, self).setUp()
|
||||
self.tempdir = self.useFixture(fixtures.TempDir()).path
|
||||
self.flags(log_dir=self.tempdir)
|
||||
self.flags(use_local=True, group='conductor')
|
||||
self.network = TestFloatingIPManager()
|
||||
self.network.db = db
|
||||
self.project_id = 'testproject'
|
||||
|
|
|
@ -33,6 +33,7 @@ from nova.compute import power_state
|
|||
from nova.compute import task_states
|
||||
from nova.compute import utils as compute_utils
|
||||
from nova.compute import vm_states
|
||||
from nova.conductor import api as conductor_api
|
||||
from nova import context
|
||||
from nova import crypto
|
||||
from nova import db
|
||||
|
@ -988,6 +989,7 @@ class XenAPIVMTestCase(stubs.XenAPITestBase):
|
|||
xenapi_fake.reset_table('network')
|
||||
# Instance id = 2 will use vlan network (see db/fakes.py)
|
||||
ctxt = self.context.elevated()
|
||||
self.network.conductor_api = conductor_api.LocalAPI()
|
||||
instance = self._create_instance(2, False)
|
||||
networks = self.network.db.network_get_all(ctxt)
|
||||
with mock.patch('nova.objects.network.Network._from_db_object'):
|
||||
|
|
Loading…
Reference in New Issue