Skip to content

Commit

Permalink
neutron_plugin_opencontrail change for multi provider support for lba…
Browse files Browse the repository at this point in the history
…asv2

neutron_plugin_opencontrail change for multi provider
support for lbaasv2 is added.

Change-Id: I6716ab94d3c185ed386895cff95c5590fa6c5a05
Closes-bug: 1627521
  • Loading branch information
ymariappan committed Sep 30, 2016
1 parent 8b91006 commit d9213a4
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 30 deletions.
Expand Up @@ -189,16 +189,20 @@ def create(self, context, loadbalancer):
Create a loadbalancer.
"""
l = loadbalancer['loadbalancer']
if (l['provider'] == attributes.ATTR_NOT_SPECIFIED):
l['provider'] = "opencontrail"
sas_obj = self.check_provider_exists(l['provider'])
tenant_id = self._get_tenant_id_for_create(context, l)
project = self._project_read(project_id=tenant_id)

obj_uuid = uuidutils.generate_uuid()
name = self._get_resource_name('loadbalancer', project,
l['name'], obj_uuid)
id_perms = IdPermsType(enable=True, description=l['description'])
lb = Loadbalancer(name, project, id_perms=id_perms,
display_name=l['name'])
lb.uuid = obj_uuid
lb = Loadbalancer(name, project, uuid=obj_uuid,
loadbalancer_provider=l['provider'],
id_perms=id_perms, display_name=l['name'])
lb.set_service_appliance_set(sas_obj)

vmi, vip_address = self._create_virtual_interface(project,
obj_uuid, l['vip_subnet_id'], l.get('vip_address'))
Expand All @@ -209,8 +213,8 @@ def create(self, context, loadbalancer):
props = self.make_properties(l)
props.set_vip_address(vip_address)
lb.set_loadbalancer_properties(props)
self._api.loadbalancer_create(lb)

self._api.loadbalancer_create(lb)
return self.make_dict(lb)

def delete(self, context, id):
Expand Down
Expand Up @@ -6,8 +6,6 @@

from neutron_lbaas.extensions import loadbalancerv2
from neutron.api.v2 import attributes as attr
from neutron.plugins.common import constants
from neutron.services import provider_configuration as pconf

try:
from neutron.openstack.common import uuidutils
Expand Down Expand Up @@ -98,8 +96,6 @@ def make_dict(self, pool, fields=None):
sp['cookie_name'] = props.persistence_cookie_name
res['session_persistence'] = sp

res['provider'] = pool.get_loadbalancer_pool_provider()

# members
res['members'] = []
members = pool.get_loadbalancer_members()
Expand Down Expand Up @@ -155,14 +151,6 @@ def create(self, context, pool):
Create a loadbalancer_pool object.
"""
p = pool['pool']
try:
sas_fq_name = ["default-global-system-config"]
sas_fq_name.append(p['provider'])
sas_obj = self._api.service_appliance_set_read(fq_name=sas_fq_name)
except NoIdError:
raise pconf.ServiceProviderNotFound(
provider=p['provider'], service_type=constants.LOADBALANCER)

tenant_id = self._get_tenant_id_for_create(context, p)
project = self._project_read(project_id=tenant_id)

Expand All @@ -184,14 +172,9 @@ def create(self, context, pool):
props = self.make_properties(p)
id_perms = IdPermsType(enable=True,
description=p['description'])
pool = LoadbalancerPool(name, project,
pool = LoadbalancerPool(name, project, uuid=pool_uuid,
loadbalancer_pool_properties=props,
loadbalancer_pool_provider=p['provider'],
id_perms=id_perms, display_name=p['name'])
pool.uuid = pool_uuid

pool.set_service_appliance_set(sas_obj)


if ll:
pool_exists = ll.get_loadbalancer_pool_back_refs()
Expand Down
Expand Up @@ -16,11 +16,3 @@ def __init__(self):

def get_plugin_description(self):
return "OpenContrail LoadBalancerV2 Service Plugin"

def _pool_update_provider(self, context, pool):
if 'provider' not in pool or not pool['provider'] or pool['provider'].__class__ is object:
pool['provider'] = "opencontrail"

def create_pool(self, context, pool):
self._pool_update_provider(context, pool['pool'])
return super(LoadBalancerPluginV2, self).create_pool(context, pool)

0 comments on commit d9213a4

Please sign in to comment.