On 09/08/2014 08:18 PM, James E. Blair wrote:
> Sean Dague <s...@dague.net> writes:
>> The crux of the issue is that zookeeper python modules are C extensions.
>> So you have to either install from packages (which we don't do in unit
>> tests) or install from pip, which means forcing zookeeper dev packages
>> locally. Realistically this is the same issue we end up with for mysql
>> and pg, but given their wider usage we just forced that pain on developers.
> ...
>> Which feels like we need some decoupling on our requirements vs. tox
>> targets to get there. CC to Monty and Clark as our super awesome tox
>> hackers to help figure out if there is a path forward here that makes sense.
> From a technical standpoint, all we need to do to make this work is to
> add the zookeeper python client bindings to (test-)requirements.txt.
> But as you point out, that makes it more difficult for developers who
> want to run unit tests locally without having the requisite libraries
> and header files installed.
> We could add another requirements file with heavyweight optional
> dependencies, and use that in gate testing, but also have a lightweight
> tox environment that does not include them for ease of use in local
> testing.
> What would be really great is if we could use setuptools extras_require
> for this:
> https://pythonhosted.org/setuptools/setuptools.html#declaring-extras-optional-features-with-their-own-dependencies
> However, I'm not sure what the situation is with support for that in pip
> (and we might need pbr support too).

Right, some optional test path like that would be nice.

Honestly, one thing I was thinking about was effectively a bunch of tox
targets for local running, but that we run them all as a single target

So testenv:zookeeper, testenv:mysql, testenv:pg

And then some way to have py27all be py27 + all these. py27all is what
upstream runs, devs can easily run without the extra requirements (which
will be sufficient 95% of the time), and when they hit a different
failure can run the wider tests.


Sean Dague

OpenStack-dev mailing list

Reply via email to