[openstack-dev] how to provide tests environments for python things that require C extensions
Doug Hellmann
doug at doughellmann.com
Tue Sep 9 14:41:14 UTC 2014
On Sep 8, 2014, at 8:18 PM, James E. Blair <corvus at inaugust.com> wrote:
> Sean Dague <sean at 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.
I don’t think I’ve ever tried to run any of our unit tests on a box where I hadn’t also previously run devstack to install all of those sorts of dependencies. Is that unusual?
Doug
>
> 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).
>
> -Jim
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
More information about the OpenStack-dev
mailing list