我有一个为我的基于 wsgi 的框架创建 buildout.cfg 的预卷引导脚本。Buildout 最初使用此运行以创建必要的粘贴目录结构。然后,我将我的代码从 VCS 存储库中提取到 src 目录,以及一个特定于我要部署到的任何环境的 buildout.cfg 以及其他一些 .py 静态数据文件。然后我再次运行 buildout。
从我的 pov 来看,两次运行 buildout 是非常浪费的。有没有办法从 buildout 中的 subversion 导出到我的项目源目录以及任意文件?
我会使用mr.developer
本地结帐:
[buildout]
extensions = mr.developer
auto-checkout = yourpackage
[sources]
yourpackage = svn http://url.to/repository
现在mr.developer
将检查yourpackage
作为 buildout 运行的一部分, into src/
,运行 it'ssetup.py
以使其成为开发鸡蛋,并告诉 buildout 它是可用的。现在 buildout 将使用该本地副本来满足任何yourpackage
要求。
如果您的 svn 包不是 python egg,只需添加egg=false
到它的sources
条目,并且mr.developer
不会寻找setup.py
运行。
或者,您可以只使用iw.recipe.cmd
来简单地运行svn
命令:
[yourpackage]
recipe = iw.recipe.cmd
cmds =
svn export http://url.to/repository