【发布时间】:2011-02-01 05:53:42
【问题描述】:
我正在使用 mr.developer 从 mercurial 存储库中签出我的包,但我一定是做错了,因为我遇到了嵌套依赖项的问题。
例如,如果我有以下foo
[buildout]
develop = .
extensions = mr.developer
sources = sources
auto-checkout =
pack1
parts = foo
[sources]
pack1 = hg http://blah.com/hg/pack1
foo 依赖于 pack1,在 setup.py 中列为 install_requires = ['pack1'],
当我运行bin/buildout 时,一切都很顺利,mr.developer 下载了 pack1,并且由于 pack1 已下载,foo 被创建而没有问题,因此存在。
现在,我有另一个包 bar,它将 foo 列为依赖项。
[buildout]
develop = .
extensions = mr.developer
sources = sources
auto-checkout =
foo
parts = bar
[sources]
foo = hg http://blah.com/hg/foo
我还通过 install_requires = ['foo'], 在 setup.py 中将 foo 列为依赖项
现在发生的事情是我不明白的部分。
当我运行bin/buildout 时,mr.developer 会去获取 foo,但没有接缝来执行位于 foo/ 内部的 buildout.cfg。
因此, foo/setup.py 需要 pack1,但它并不存在。
如foo/buildout.cfg 中所示,如何确保mr.developer 确实在http://blah.com/hg/pack 上获取pack1?
我希望能够像这样嵌套多个包,而不必深入每个包并手动运行 buildout。
干杯, 马丁
【问题讨论】:
标签: buildout