[openstack-dev] [Neutron][ML2]

Nader Lahouti nader.lahouti at gmail.com
Thu Mar 6 20:14:55 UTC 2014


Hi Aaron,

I appreciate your reply.

Here is some more details on what I'm trying to do:
I need to add new attribute to the network resource using extensions (i.e.
network config profile) and use it in the mechanism driver (in the
create_network_precommit/postcommit).
If I use current implementation of Ml2Plugin, when a call is made to
mechanism driver's create_network_precommit/postcommit the new attribute is
not included in the 'mech_context'
Here is code from Ml2Plugin:
class Ml2Plugin(...):
...
       def create_network(self, context, network):
            net_data = network['network']
...
        with session.begin(subtransactions=True):
            self._ensure_default_security_group(context, tenant_id)
            result = super(Ml2Plugin, self).create_network(context, network)
            network_id = result['id']
...
            mech_context = driver_context.NetworkContext(self, context,
result)
            self.mechanism_manager.create_network_precommit(mech_context)

Also need to include new extension in the  _supported_extension_aliases.

So to avoid changes in the existing code, I was going to create my own
plugin (which will be very similar to Ml2Plugin) and use it as core_plugin.

Please advise the right solution implementing that.

Regards,
Nader.


On Wed, Mar 5, 2014 at 11:49 PM, Aaron Rosen <aaronorosen at gmail.com> wrote:

> Hi Nader,
>
> Devstack's default plugin is ML2. Usually you wouldn't 'inherit' one
> plugin in another. I'm guessing  you probably wire a driver that ML2 can
> use though it's hard to tell from the information you've provided what
> you're trying to do.
>
> Best,
>
> Aaron
>
>
> On Wed, Mar 5, 2014 at 10:42 PM, Nader Lahouti <nader.lahouti at gmail.com>wrote:
>
>> Hi All,
>>
>> I have a question regarding ML2 plugin in neutron:
>> My understanding is that, 'Ml2Plugin' is the default core_plugin for
>> neutron ML2. We can use either the default plugin or our own plugin (i.e.
>> my_ml2_core_plugin that can be inherited from Ml2Plugin) and use it as
>> core_plugin.
>>
>> Is my understanding correct?
>>
>>
>> Regards,
>> Nader.
>>
>> _______________________________________________
>> OpenStack-dev mailing list
>> OpenStack-dev at lists.openstack.org
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>
>>
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140306/2ad62258/attachment.html>


More information about the OpenStack-dev mailing list