问题标签 [buildout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1757 浏览

python - 如何使用 distutils api 或 setuptools api 安装 distutils 包

我正在开发一个需要在远程服务器上安装 distutils 包的构建脚本。

在 PyPi 上,有 2 种方法可以完成此功能, collective.recipe.distutils 0.1 和 zerokspot.recipe.distutils 0.1.1

后面的模块是前者的派生,比第一个更方便一点,但两者都遇到同样的问题,我现在将描述这个问题。

当 bootstrap.py 执行时,它会下载 zc.buildout 包并将其放入 buildout 的 egg 目录中。这使 ./bin/buildout 可以访问 zc.buildout 代码,但 /usr/local/python 目前对 zc.buildout 一无所知。

Buildout 尝试通过在子进程中运行“python setup.py install”来安装包。这会产生 ImportError,因为没有为 /usr/local/python 安装 zc.buildout。

所以,我有几个解决方案。

  1. 在远程服务器上使用 easy_install 安装 zc.buildout。我根本不喜欢这个选项,它为一个非常微不足道的模块提供了一个特殊情况。

  2. 修改 zerokspot.recipe.distutils 以将 try 块放在“import zc.buildout”周围,这样即使没有安装 zc.buildout 也会安装。这是一个不错的解决方案,但有点骇人听闻。

  3. 将 subprocess 替换为将使用 distutils api 或 setuptools api 安装包的代码。在我看来,这将是最好的解决方案。

问题是我将如何做#3?

谢谢你,塔拉斯

PS:我通过创建另一个不依赖于 zc.buildout 的包解决了这个问题。我的包名为taras.recipe.distutils,它可以在 pypi 上找到。

0 投票
1 回答
240 浏览

python - 如何为 Cheeseshop ( pypi ) 上托管的软件包做出改进?

我越来越多地使用 zc.buildout 并且遇到了一些我有解决方案的食谱问题。

这些包通常分为几类:

  1. 没有明显链接到项目站点的包
  2. 包含指向免费托管服务(如 github 或 google 代码)的链接的软件包

设置 #2 比 #1 好,但也好不了多少,因为对于这两种情况,我必须等待开发人员应用这些更改,然后才能使用更新的包构建。

到目前为止,我一直在做的基本上是分叉包,给它一个不同的名称并将其上传到 pypi,但这会造成冗余,我认为只会加剧问题。

一种可能的解决方案是使用个人服务器包索引,我将在其中上传代码的更新版本,直到开发人员更新他/她的包。这是可行的,但它增加了我希望避免的额外工作。

有一个更好的方法吗?

谢谢

0 投票
2 回答
1285 浏览

python - 如何使用 buildout 创建我的项目的本地化版本?

我正在尝试创建我的项目的本地化版本。

我从以下开始:

在最后一个命令之后,我收到以下消息:

警告:HTTP 中不支持通配符。--08:42:17-- http://svn.zope.org/checkout /zc.buildout/trunk/bootstrap/bootstrap.py => `bootstrap.py' 正在解决 svn.zope.org... 74.84。 203.155 连接到 svn.zope.org|74.84.203.155|:80... 已连接。HTTP 请求已发送,等待响应... 200 OK 长度:未指定 [text/x-python]

08:42:17 (122.64 MB/s) - `bootstrap.py' 已保存 [2572]

您可以在那里看到一条警告消息。我不知道这意味着什么,我是否应该对此保持警惕。无论如何,我试图继续。

在 buildout.cfg 我放了以下内容:

然后我执行:

在那个阶段我有问题:

获取“zc.recipe.egg”的分发。得到 zc.recipe.egg 1.2.2。安装sqlite。获取“pysqlite”的分发。在 src/module.c:24 包含的文件中:src/connection.h:33:21:错误:sqlite3.h:没有这样的文件或目录 在 src/module.c:24 包含的文件中:src/connection.h :38: 错误:'sqlite3' 之前的预期说明符限定符列表在 src/module.c:25 包含的文件中:src/statement.h:37:错误:'sqlite3' src/module 之前的预期说明符限定符列表.c:在函数“module_complete”中:src/module.c:99:警告:函数“sqlite3_complete”的隐式声明 src/module.c:在顶层:src/module.c:265:错误:“SQLITE_OK”未声明此处(不在函数中) src/module.c:266:错误:此处未声明“SQLITE_DENY”(不在函数中) src/module.c:267:错误:传递 'PyString_FromString' 的参数 1 从整数生成指针而没有强制转换错误:安装脚本退出并出现错误:命令 'gcc' 失败,退出状态 1 尝试安装 pysqlite 2.5.5 时发生错误。查看此消息上方是否有任何错误这是easy_install的输出。同时:安装 sqlite。获取“pysqlite”的分发。错误:无法安装:pysqlite 2.5.5

谁能告诉我,这些错误消息是什么意思以及如何解决上述问题?

0 投票
4 回答
6585 浏览

python - Buildout 和 Virtualenv

我正在使用 buildout 和 virtualenv 的组合来在 python 中设置一个隔离的开发环境,允许进行可重复的构建。

有一个构建方法可以让您将 virtualenv 集成到构建中:

有了这个,我的 buildout.cfg 看起来像这样:

这会将两个可执行文件部署到 ./bin/ 中:

当我执行 vp 时,我得到了一个交互式的、隔离的 python 对话框,正如预期的那样(无法从系统加载任何包)。我现在期望的是,如果我跑步

使用了隔离的 python 解释器。但它没有,它不像“vp”那样被隔离(这意味着我可以从系统级别导入库)。但是我可以运行:

它将如我所愿在隔离环境中运行脚本。但是必须有一种方法可以在不链接命令的情况下指定这样做,否则 buildout 只能解决我希望的一半问题:)

谢谢你的帮助!帕特里克

0 投票
1 回答
1091 浏览

python - 来自构建的 Pyfacebook

使用 buildout 安装最新版本的 pyfacebook 的最佳方法是什么?该软件包托管在 github 上,不在 pypi 上。这个系统没有安装 git,所以不幸的是,基于 git 的配方不是一个选项。github URL 是http://github.com/sciyoshi/pyfacebook。蒂亚!

0 投票
2 回答
750 浏览

python - 扩展部署策略

所以我 zc.buildout 应用于现有的 django 项目。我想知道现在部署它。如何在生产服务器上实现沙盒效果?

0 投票
1 回答
773 浏览

python - 是否有使用 pip 但不安装 virtualenv 的构建配方?

我想使用 buildout 而不是 virtualenv。这个决定意味着我不希望 virtualenv 被偷偷带入我的工具包中,所以我正在寻找一种方法来告诉 gp.recipe.pip不要安装 virtualenv meme 病毒,或者,一种从 git repos 安装软件包的方法用于 django/djangorecipe。

想法?

0 投票
5 回答
3140 浏览

python - Python 打包状态:Buildout、Distribute、Distutils、EasyInstall 等

上一次我不得不担心安装 Python 包是两年前使用EnthoughtNumPyMayaVi2。那次经历让我一直在做与在非标准位置($HOME/usr/local2.6/例如,在 .

无论如何,我的工作是让我重新安装各种 Python 包。CheeseShop教程除了 Buildout 之外还提到了 DistUtils 和 EasyInstall!我很难找到一个比较这些(和其他)PyPi 安装工具的地方,所以我希望能够进入 StackOverflow 社区: 每个安装工具的优缺点是什么?

0 投票
5 回答
863 浏览

python - 试图在我的 Mac 上安装可靠的 Python?

我安装了 Xcode 的 Mac OSX 10.5.8。我想避免使用 MacPorts,只想获得一个坚实的 Python 安装基础,这样我就可以继续处理 Django 和其他东西。我想在我的 Python 应用程序中使用 Buildout。

我已经从官方网站安装了二进制 Python 2.6.4 并安装了它。按照其他建议,我已将其放入我的~/.bash_profile文件中:

所以,当我做which python它时,它会显示/usr/local/bin/python. 而且,当我这样做时,python -V它会显示Python 2.6.4- 这一切看起来都很棒。

我查看了/usr/local/bin/文件夹内部,除其他外,我似乎有正确的东西指向 Python 2.6:

但是,当我做一个easy_installvirtualenv (我想与 Buildout 一起使用)时,它似乎将它安装在/Library/Python/2.5/site-packages/virtualenv-1.4.3-py2.5.egg

...这是 Python 2.5?此外,当我使用 virtualenv 设置我的 Buildout 文件夹时,其中的.Python符号链接将:

为什么是这样?我不明白这一点。我怎样才能让它全部指向正确的 Python 2.6?

非常感谢您的任何回答,这让我很烦。干杯。

0 投票
2 回答
943 浏览

python - 让 Django 和 Buildout 工作,但是 PIL 和 Postgres 呢?

我在 Mac OSX 10.5.8 上。我关注了 Jacob Kaplan-Moss 关于使用 Buildout 设置 Django 的文章:http: //jacobian.org/writing/django-apps-with-buildout/

最后,我让这个 Buildout 工作了!...但我现在需要 PIL 和 Postgres 来构建一个完全独立的 Django 开发区域。我试图用我在互联网上阅读过的教程修改我的 buildout.cfg,但只是找不到如何做到这一点而不会引发各种错误。我觉得 PIL 和 Postgres 是完成这个小设置的下一步,所以我可以继续它......(顺便说一下,我不是这方面的专家,我来自 PHP 背景)。我当前的 buildout.cfg 看起来像这样:

谁能帮助我可靠地让 PIL 和 Postgres 与我的 Buildout 一起工作?提前非常感谢你......到目前为止我尝试过的所有事情都会引发各种错误。