1

我对 buildbot 很陌生,并且正在努力为以下 python 代码结构创建配置:

包含一些通用类和函数的库以及依赖于一个库的两个程序。这三个都有自己的 git 存储库。让我们调用库the_lib和程序prog_a以及prog_b.

我想buildbot为我做的是定期检查存储库是否有更改,如果是,则重建必要的内容。因此,对the_lib应该重新构建所有三个源的更改,对prog_a应该只重建的源的更改和对应该只重建prog_a的源的更改。prog_bprog_b

我现在可以在其源发生更改时构建这三个中的任何一个,但是如何引入 de 依赖prog_aprog_bon the_lib

干杯,菲欧

4

2 回答 2

0

You can trigger multiple builders with a single source change, in the following example the first two each trigger their own builds, but the third one triggers all three:

  yield basic.AnyBranchScheduler(
            name = prog_a, treeStableTimer=delay,
            change_filter = my_a_filter,
            builderNames = [prog_a],
            )

  yield basic.AnyBranchScheduler(
            name = prog_b, treeStableTimer=delay,
            change_filter = my_b_filter,
            builderNames = [prog_b],
            )

  yield basic.AnyBranchScheduler(
            name = the_lib, treeStableTimer=delay,
            change_filter = my_lib_filter,
            builderNames = [prog_a, prog_b, the_lib],
            )
于 2013-11-07T00:28:00.067 回答
0

对于中的更改,prog_(a|b)您可以使用一个简单的单个分支调度程序,该调度程序将调用其构建器。

因为the_lib你有两个选择:

  1. 为和的构建器创建一个依赖调度器,并将上游调度器设置为 的单分支调度器。prog_aprog_bthe_lib
  2. prog_(a|b)触发调度程序配置,并使用构建器中的触发器构建步骤触发它们the_lib
于 2013-11-18T13:23:11.653 回答