如何从Buildbot获取构建编号
有没有一个变量可以在 master.cfg
文件里使用?文档里没有说明得很清楚。谢谢。
1 个回答
6
获取这些信息的方法有很多,但具体要看你想在哪里访问它。
如果你在一个叫做 doStepIf
的程序里(作为 addStep
的一个参数),那么下面的代码应该可以用:
def insideDoStepIf(step):
step.build.getStatus().number
如果你想根据下一个构建编号来给你的构建者排序,下面的代码应该可以用:
def buildPriority(buildmaster, builders):
builders.sort(key=lambda b: b.builder_status.nextBuildNumber)
return builders
c['prioritizeBuilders'] = buildPriority
如果你想在一个 messageFormatter
函数中获取这些信息,用于 buildbot.status.mail.MailNotifier
,可以试试这个:
def formatEmail(mode, name, build, results, master_status):
for builder in master_status.getBuilderNames():
master_status.getBuilder(builder).nextBuildNumber
我没有测试这些代码,也不能保证这里的接口是稳定的,但我相信这些应该可以用,因为我在自己的 master.cfg 里做了一些类似的事情(虽然不是用构建编号)。