0

我有一个调用两个配方的构建配置。这两个配方必须按定义的顺序执行。

最后执行的配方由 mr.developer 扩展从 git 存储库中获取。然而,当 mr.developer 拉入配方时,它会将其视为一个鸡蛋并首先执行它。这会打乱正确的顺序,并且构建失败。

我试图设置egg=false这样配方不会首先执行,但是这会阻止配方完全执行,因为它不是鸡蛋。

想知道我的 buildout.cfg 是什么样子的:

[buildout]
develop = .
extensions = mr.developer
auto-checkout = custom-recipe
parts =
    part-one
    part-two

[sources]
custom-recipe = git http://location.of.repo

[part-one]
recipe = recipe.from.pypi
src = ${buildout:directory}

[part-two]
recipe = custom-recipe
src = ${part-one:src}

buildout:parts应尊重零件出现的顺序。如果一个部分引用另一个部分,则可以更改顺序以使依赖关系正确。我试图通过引用part-onefrom来“欺骗”part-two构建,这不起作用,因为 mr.developer 已经引用了part-two.

任何帮助将不胜感激。

4

1 回答 1

1

经过一番测试,我发现了问题所在。配方包含三个部分:构造函数、安装函数和更新函数。在所有安装发生之前调用构造函数,这引起了混乱。

我在构造函数中有一些依赖于其他部分的东西。因为在所有安装发生之前调用了构造函数,所以代码失败了。将其移至安装功能后,一切顺利。

于 2013-03-21T08:52:07.593 回答