跳转到主要内容

zc.buildout创建虚拟Python安装的配方

项目描述

tl.buildout_virtual_python

这是一个用于在buildout内部设置虚拟Python安装的zc.buildout配方。它与Python 2.5至2.7以及zc.buildout 1.4及以上版本兼容。

实现使用了由Ian Bicking最初开发的virtualenv包。

此配方似乎很可靠,但其功能集基本上由作者的直接需求决定。不要犹豫,将问题、错误报告、建议或补丁发送至 <thomas@thomas-lotze.de>。

用例

使用虚拟Python为您提供了一个可写Python环境,无需从源代码编译Python即可供buildout的其它部分使用。它在其他buildout以及其父Python安装之间是隔离的,但可能仍然共享父Python的已安装库。根据您的具体情况,这些功能可能被认为是有所帮助的或有害的。该配方提供了机制,但选择策略留给了您。

另一个方面是提供具有访问通过buildout安装的库的真正Python可执行文件。通常,zc.buildout通过在bin/中创建Python脚本作为包装器来使已安装的Python库可访问,这些包装器设置适当的sys.path然后调用某些已安装egg的console_script入口点。有时这种方法不可行,例如

  • 当某个程序调用sys.executable并期望它与调用代码可以导入的库相同

  • 当要安装的代码打算由嵌入式Python解释器运行时,例如在设置mod_python应用程序时

在这些情况下,将所需库安装到虚拟Python环境中,并将其用作另一个buildout部分的Python安装。

选项

由此配方创建的buildout部分导出executable选项,因此它可以作为定义buildout中Python安装的部分,即buildout部分中的python选项可以引用它。

配置选项
executable-name:

虚拟Python安装的解释器可执行文件的基本名称。

interpreter:

buildout的bin目录中使用的Python解释器的基本名称。如果不设置此选项,则不会创建这样的解释器。

real-python:

作为父Python使用的Python安装的解释器可执行文件的文件系统路径。

site-packages:

布尔开关,是否使父Python的site-packages库目录对虚拟Python可用。

eggs:

虚拟Python可用的egg的规范。

extra-paths:

要提供给虚拟Python的额外库路径。

导出选项
location:

包含虚拟Python安装的buildout部分的定位。这与虚拟Python的sys.prefix相同。

executable:

虚拟Python安装的解释器可执行文件的文件系统路径。

关于tl.buildout_virtual_python

作者:

Thomas Lotze <thomas@thomas-lotze.de>

PyPI页面:

http://pypi.python.org/pypi/tl.buildout_virtual_python/

问题跟踪器:

https://bitbucket.org/tlotze/tl.buildout_virtual_python/issues/

源代码:

https://bitbucket.org/tlotze/tl.buildout_virtual_python/

当前变更日志:

https://bitbucket.org/tlotze/tl.buildout_virtual_python/raw/tip/CHANGES.txt

支持项目:
Flattr this

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。

源分发

tl.buildout_virtual_python-0.2.tar.gz (14.1 kB 查看哈希)

上传时间

由以下组织支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面