On Thu, Aug 25, 2011 at 04:28:32PM -0700, Ben Pfaff wrote: > On Fri, Aug 26, 2011 at 08:25:30AM +0900, Simon Horman wrote: > > On Wed, Aug 24, 2011 at 10:06:29AM -0700, Ben Pfaff wrote: > > > The Python libraries that Open vSwitch installs have been "private" > > > libraries, in the sense that they are only really meant to be used by > > > other parts of Open vSwitch. Maybe that's a mistake; I guess that > > > there is no good reason that they cannot be used by other software. > > > But that's why, until now anyhow, they have been installed in > > > /usr/share/openvswitch/python instead of a system Python directory. > > > > > > It looks like this patch moves them to > > > /usr/share/pyshared/python-openvswitch. At least, that is where I see > > > them when I build and install python-openvswitch. The "pyshared" in > > > the name makes it sound like this is a "public" directory, which isn't > > > what we've wanted to do so far. > > > > > > However, maybe the name is misleading. This directory doesn't seem to > > > be public, because this patch breaks "/etc/init.d/openvswitch-ipsec > > > start": > > > > > > blp@hardrock:~/db$ sudo /etc/init.d/openvswitch-ipsec start > > > Starting ovs-monitor-ipsec:Traceback (most recent call last): > > > File "/usr/share/openvswitch/scripts/ovs-monitor-ipsec", line 35, > > > in <module> > > > from ovs.db import error > > > ImportError: No module named ovs.db > > > failed! > > > blp@hardrock:~/db$ > > > > I see that error too. > > > > I accidently uploaded a version of 1.2.1-1 that included the dh_python2 > > transition and thus it is currently broken. I will revert the dh_python2 > > change and upload 1.2.1-2. > > > > > That init script invokes python as: > > > > > > PYTHONPATH=/usr/share/openvswitch/python \ > > > /usr/share/openvswitch/scripts/ovs-monitor-ipsec \ > > > --pidfile-name=$PIDFILE --detach --monitor \ > > > unix:/var/run/openvswitch/db.sock > > > > > > The easy fix would be to update the PYTHONPATH variable setting, but I > > > know little enough about Python packaging that I wonder whether this > > > is the correct fix. > > > > It seems that /usr/share/openvswitch/python doesn't exist in 1.2.0-1. > > But ovs-monitor-ipsec starts regardless. > > It sounds like what happens is this: > > * I thought that the OVS Python libraries were private and in > /usr/share/openvswitch/python. > > * They were actually public and somewhere else (hence the > PYTHONPATH really didn't do anything). > > * Your patch made them actually private in some different > location, so now it doesn't work.
I think that you are correct, though I am unsure why the OVS python libraries were public. > I guess the correct fix, to fold into your patch, could be either: > > * Make them actually public. > > * Fix up the PYTHONPATH line above to whatever location they > are now installed privately into. > > I think that either one is OK from my point of view. I have found that a solution is to install the python libraries into /usr/share/pyshared/ovs/ rather than /usr/share/pyshared/python-openvswitch/ovs/ _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev