<div dir="ltr">Yes, that sounds good to be able to load extensions from a mechanism driver.<div><br><div>But another problem I think we have with ML2 plugin is the list extensions supported by default [1].</div><div>The extensions should only load by MD and the ML2 plugin should only implement the Neutron core API.</div>
<div><br></div><div>Any though ?</div><div>Édouard.</div><div><br></div><div>[1] <a href="https://github.com/openstack/neutron/blob/master/neutron/plugins/ml2/plugin.py#L87">https://github.com/openstack/neutron/blob/master/neutron/plugins/ml2/plugin.py#L87</a></div>
<div><br></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Mar 7, 2014 at 8:32 AM, Akihiro Motoki <span dir="ltr"><<a href="mailto:amotoki@gmail.com" target="_blank">amotoki@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I think it is better to continue the discussion here. It is a good log :-)<br>
<br>
Eugine and I talked the related topic to allow drivers to load<br>
extensions)  in Icehouse Summit<br>
but I could not have enough time to work on it during Icehouse.<br>
I am still interested in implementing it and will register a blueprint on it.<br>
<br>
etherpad in icehouse summit has baseline thought on how to achieve it.<br>
<a href="https://etherpad.openstack.org/p/icehouse-neutron-vendor-extension" target="_blank">https://etherpad.openstack.org/p/icehouse-neutron-vendor-extension</a><br>
I hope it is a good start point of the discussion.<br>
<br>
Thanks,<br>
Akihiro<br>
<div class="HOEnZb"><div class="h5"><br>
On Fri, Mar 7, 2014 at 4:07 PM, Nader Lahouti <<a href="mailto:nader.lahouti@gmail.com">nader.lahouti@gmail.com</a>> wrote:<br>
> Hi Kyle,<br>
><br>
> Just wanted to clarify: Should I continue using this mailing list to post my<br>
> question/concerns about ML2? Please advise.<br>
><br>
> Thanks,<br>
> Nader.<br>
><br>
><br>
><br>
> On Thu, Mar 6, 2014 at 1:50 PM, Kyle Mestery <<a href="mailto:mestery@noironetworks.com">mestery@noironetworks.com</a>><br>
> wrote:<br>
>><br>
>> Thanks Edgar, I think this is the appropriate place to continue this<br>
>> discussion.<br>
>><br>
>><br>
>> On Thu, Mar 6, 2014 at 2:52 PM, Edgar Magana <<a href="mailto:emagana@plumgrid.com">emagana@plumgrid.com</a>> wrote:<br>
>>><br>
>>> Nader,<br>
>>><br>
>>> I would encourage you to first discuss the possible extension with the<br>
>>> ML2 team. Rober and Kyle are leading this effort and they have a IRC meeting<br>
>>> every week:<br>
>>> <a href="https://wiki.openstack.org/wiki/Meetings#ML2_Network_sub-team_meeting" target="_blank">https://wiki.openstack.org/wiki/Meetings#ML2_Network_sub-team_meeting</a><br>
>>><br>
>>> Bring your concerns on this meeting and get the right feedback.<br>
>>><br>
>>> Thanks,<br>
>>><br>
>>> Edgar<br>
>>><br>
>>> From: Nader Lahouti <<a href="mailto:nader.lahouti@gmail.com">nader.lahouti@gmail.com</a>><br>
>>> Reply-To: OpenStack List <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
>>> Date: Thursday, March 6, 2014 12:14 PM<br>
>>> To: OpenStack List <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
>>> Subject: Re: [openstack-dev] [Neutron][ML2]<br>
>>><br>
>>> Hi Aaron,<br>
>>><br>
>>> I appreciate your reply.<br>
>>><br>
>>> Here is some more details on what I'm trying to do:<br>
>>> I need to add new attribute to the network resource using extensions<br>
>>> (i.e. network config profile) and use it in the mechanism driver (in the<br>
>>> create_network_precommit/postcommit).<br>
>>> If I use current implementation of Ml2Plugin, when a call is made to<br>
>>> mechanism driver's create_network_precommit/postcommit the new attribute is<br>
>>> not included in the 'mech_context'<br>
>>> Here is code from Ml2Plugin:<br>
>>> class Ml2Plugin(...):<br>
>>> ...<br>
>>>        def create_network(self, context, network):<br>
>>>             net_data = network['network']<br>
>>> ...<br>
>>>         with session.begin(subtransactions=True):<br>
>>>             self._ensure_default_security_group(context, tenant_id)<br>
>>>             result = super(Ml2Plugin, self).create_network(context,<br>
>>> network)<br>
>>>             network_id = result['id']<br>
>>> ...<br>
>>>             mech_context = driver_context.NetworkContext(self, context,<br>
>>> result)<br>
>>>             self.mechanism_manager.create_network_precommit(mech_context)<br>
>>><br>
>>> Also need to include new extension in the  _supported_extension_aliases.<br>
>>><br>
>>> So to avoid changes in the existing code, I was going to create my own<br>
>>> plugin (which will be very similar to Ml2Plugin) and use it as core_plugin.<br>
>>><br>
>>> Please advise the right solution implementing that.<br>
>>><br>
>>> Regards,<br>
>>> Nader.<br>
>>><br>
>>><br>
>>> On Wed, Mar 5, 2014 at 11:49 PM, Aaron Rosen <<a href="mailto:aaronorosen@gmail.com">aaronorosen@gmail.com</a>><br>
>>> wrote:<br>
>>>><br>
>>>> Hi Nader,<br>
>>>><br>
>>>> Devstack's default plugin is ML2. Usually you wouldn't 'inherit' one<br>
>>>> plugin in another. I'm guessing  you probably wire a driver that ML2 can use<br>
>>>> though it's hard to tell from the information you've provided what you're<br>
>>>> trying to do.<br>
>>>><br>
>>>> Best,<br>
>>>><br>
>>>> Aaron<br>
>>>><br>
>>>><br>
>>>> On Wed, Mar 5, 2014 at 10:42 PM, Nader Lahouti <<a href="mailto:nader.lahouti@gmail.com">nader.lahouti@gmail.com</a>><br>
>>>> wrote:<br>
>>>>><br>
>>>>> Hi All,<br>
>>>>><br>
>>>>> I have a question regarding ML2 plugin in neutron:<br>
>>>>> My understanding is that, 'Ml2Plugin' is the default core_plugin for<br>
>>>>> neutron ML2. We can use either the default plugin or our own plugin (i.e.<br>
>>>>> my_ml2_core_plugin that can be inherited from Ml2Plugin) and use it as<br>
>>>>> core_plugin.<br>
>>>>><br>
>>>>> Is my understanding correct?<br>
>>>>><br>
>>>>><br>
>>>>> Regards,<br>
>>>>> Nader.<br>
>>>>><br>
>>>>> _______________________________________________<br>
>>>>> OpenStack-dev mailing list<br>
>>>>> <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
>>>>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
>>>>><br>
>>>><br>
>>>><br>
>>>> _______________________________________________<br>
>>>> OpenStack-dev mailing list<br>
>>>> <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
>>>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
>>>><br>
>>><br>
>>> _______________________________________________ OpenStack-dev mailing<br>
>>> list <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
>>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
>>><br>
>>> _______________________________________________<br>
>>> OpenStack-dev mailing list<br>
>>> <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
>>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
>>><br>
>><br>
>><br>
>> _______________________________________________<br>
>> OpenStack-dev mailing list<br>
>> <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
>><br>
><br>
><br>
> _______________________________________________<br>
> OpenStack-dev mailing list<br>
> <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
><br>
<br>
_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</div></div></blockquote></div><br></div>