[openstack-dev] [Neutron] minimal device driver for VPN

Paul Michali (pcm) pcm at cisco.com
Thu Jul 17 12:18:28 UTC 2014


See line @PCM


PCM (Paul Michali)

MAIL …..…. pcm at cisco.com
IRC ……..… pcm_ (irc.freenode.com)
TW ………... @pmichali
GPG Key … 4525ECC253E31A83
Fingerprint .. 307A 96BB 1A4C D2C7 931D 8D2D 4525 ECC2 53E3 1A83



On Jul 17, 2014, at 6:32 AM, Julio Carlos Barrera Juez <juliocarlos.barrera at i2cat.net> wrote:

> I have __init__.py in the directory. Sorry my code is not public, but I can show you some contents, anyway is an experiment with no functional code.

@PCM Could you provide a patch with the files so we could patch it into a local repo and try things? I’m assuming since it is an experiment with no functional code that maybe there’s nothing proprietary? :)



> 
> My /etc/neutron/vpn_agent.ini:	
> 
> 
> [DEFAULT]
> 
> [vpnagent]
> # implementation location: /opt/stack/neutron/neutron/services/vpn/junos_vpnaas/device_drivers/fake_device_driver.py
> vpn_device_driver=neutron.services.vpn.junos_vpnaas.device_drivers.fake_device_driver.FakeDeviceDriver

@PCM Hmmm… Just a wild guess... I’m wondering if this is the issue. You class would need to inherit from the base device driver class. Does your fake_device_driver.py have the correct import paths? I say that, because your hierarchy is different.  For example, the layout currently is…

neutron/services/vpn/  - plugin
neutron/services/vpn/device_drivers/ - reference and Cisco device drivers
neutron/services/vpn/service_drivers/ - reference and Cisco service drivers

Your hierarchy has another level…

neutron/services/vpn/junos_vpnaas/device_drivers/

I’m wondering if there is some import wrong. For example, the reference device driver has:

from neutron.services.vpn import device_drivers
…
@six.add_metaclass(abc.ABCMeta)
class IPsecDriver(device_drivers.DeviceDriver):
    """VPN Device Driver for IPSec.

Where the import is used to access the base class DeviceDriver. If you’re doing the same, that file may be failing to load.

Regards,

PCM

> 
> 
> 
> FakeDeviceDriver is an empty class with a constructor located in file /opt/stack/neutron/neutron/services/vpn/junos_vpnaas/device_drivers/fake_device_driver.py.
> 
> 
> 
> I don't have access to my devstask instance, but the error was produced in q-vpn service:
> DeviceDriverImportError: Can not load driver :neutron.services.vpn.junos_vpnaas.device_drivers.fake_device_driver.FakeDeviceDriver
> 
> 
> I can provide full stack this afternoon.
> 
> 
> 
> Thank you.
> 
> 
> 
>   
> Julio C. Barrera Juez  
> Office phone: (+34) 93 357 99 27 (ext. 527)
> Office mobile phone: (+34) 625 66 77 26
> Distributed Applications and Networks Area (DANA)
> i2CAT Foundation, Barcelona
> 
> 
> On 16 July 2014 20:59, Paul Michali (pcm) <pcm at cisco.com> wrote:
> Do you have a repo with the code that is visible to the public?
> 
> What does the /etc/neutron/vpn_agent.ini look like?
> 
> Can you put the log output of the actual error messages seen?
> 
> Regards,
> 
> PCM (Paul Michali)
> 
> MAIL …..…. pcm at cisco.com
> IRC ……..… pcm_ (irc.freenode.com)
> TW ………... @pmichali
> GPG Key … 4525ECC253E31A83
> Fingerprint .. 307A 96BB 1A4C D2C7 931D 8D2D 4525 ECC2 53E3 1A83
> 
> 
> 
> On Jul 16, 2014, at 2:43 PM, Julio Carlos Barrera Juez <juliocarlos.barrera at i2cat.net> wrote:
> 
>> I am fighting with this for months. I want to develop a VPN Neutron plugin, but it is almost impossible to realize how to achieve it. this is a thread I opened months ago and Paul Mchali helped me a lot: http://lists.openstack.org/pipermail/openstack-dev/2014-February/028389.html
>> 
>> I want to know the minimum requirements to develop a device driver and a service driver for a VPN Neutron plugin. I tried adding an empty device driver and I got this error:
>> 
>> DeviceDriverImportError: Can not load driver :neutron.services.vpn.junos_vpnaas.device_drivers.fake_device_driver.FakeDeviceDriver
>> 
>> Both Python file and class exists, but the implementation is empty. What is the problem? What I need to include in this file/class to avoid this error?
>> 
>> Thank you.
>> 
>>   
>> Julio C. Barrera Juez  
>> Office phone: (+34) 93 357 99 27 (ext. 527)
>> Office mobile phone: (+34) 625 66 77 26
>> Distributed Applications and Networks Area (DANA)
>> i2CAT Foundation, Barcelona
>> _______________________________________________
>> 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
> 
> 
> _______________________________________________
> 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/20140717/90246019/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140717/90246019/attachment.pgp>


More information about the OpenStack-dev mailing list