Python 如何设置的buildbot
我是buildbot的新手,正在努力为以下python代码结构创建配置: 包含一些通用类和函数以及依赖于一个库的两个程序的库。三者都有自己的git存储库。让我们调用库Python 如何设置的buildbot,python,git,dependencies,buildbot,Python,Git,Dependencies,Buildbot,我是buildbot的新手,正在努力为以下python代码结构创建配置: 包含一些通用类和函数以及依赖于一个库的两个程序的库。三者都有自己的git存储库。让我们调用库库和程序prog\u a和prog\u b 我希望buildbot为我做的是定期检查存储库中的更改,如果是,则重建必要的内容。因此,对prog\u lib源代码的更改应该重建所有三个,对prog\u a源代码的更改应该只重建prog\u a,而对prog\u b源代码的更改应该只重建prog\u b 当三者的源代码发生变化时,我可以
库和程序prog\u a
和prog\u b
我希望buildbot
为我做的是定期检查存储库中的更改,如果是,则重建必要的内容。因此,对prog\u lib
源代码的更改应该重建所有三个,对prog\u a
源代码的更改应该只重建prog\u a
,而对prog\u b
源代码的更改应该只重建prog\u b
当三者的源代码发生变化时,我可以构建其中的任何一个,但是如何在库上引入prog\u a
和prog\u b
的去依赖性呢
干杯,
Feoh您可以通过单个源更改触发多个构建器,在下面的示例中,前两个构建器各自触发自己的构建,但第三个构建器触发所有三个构建器:
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],
)
对于程序(a | b)
中的更改,您可以使用一个简单的
对于库
,您有两个选项:
为prog\u a
和prog\u b
的生成器创建一个调度程序,并将上游调度程序设置为库的单分支调度程序
为prog|(a | b)
a调度程序进行配置,并使用_lib
builder中的构建步骤触发它们
你能详细说明一下收益率的用法吗?如果你有一个有趣的动态生成配置的例子,你能分享一些有趣的信息吗?谢谢我在这里使用yield是因为假设您需要将这些项目返回到master.cfg文件中的c['schedulers'],我的master.cfg文件有以下行:c['schedulers']=schedulers=list(config.schedulers.get_schedulers())上面的代码位于导入master.cfg的config/schedulers.py中