如何确保buildout不使用已安装的软件包?

Mar*_*tin 7 python django buildout virtualenv

我正在尝试完全切换到buildout - 但我们的开发环境已经安装了很多东西 /usr/lib/pythonxx/

我怎样才能确保buildout不使用系统上已安装的库 - 最终没有virtualenv?

例如 - 如何避免这种行为?:

> cat buildout.cfg
[buildout]
parts = django

[django]
recipe = zc.recipe.egg
eggs = django
interpreter = django

>bin/django 

>>> import django
>>> django
<module 'django' from '/usr/lib/python2.6/site-packages/django/__init__.pyc'>
>>> 
Run Code Online (Sandbox Code Playgroud)

无论如何强制buildout不使用/usr/lib/python2.6中安装的鸡蛋?

Ski*_*Ski 9

如果你想使用site-pakages或不使用这两个指令之一,你可以告诉buildout:include-site-packagesallowed-eggs-from-site-packages

从buildout 文档:

然后,您可以使用include-site-packages = false和exec-sitecustomize = false buildout选项来消除对Python的站点包的访问,而不是分别执行其sitecustomize文件(如果存在).

或者,您可以使用allowed-eggs-from-site-packages buildout选项作为可能来自站点包的鸡蛋的全局感知白名单.此值默认为"*",接受所有鸡蛋.