Buildbot是否在CI作业中提供环境变量以允许其标识,例如Travis does with TRAVIS
?
答案 0 :(得分:1)
最后我检查了Buildbot没有设置一个环境变量,该变量旨在表明正在通过buildbot运行构建代码。在我自己的设置中,我确实需要一些我的构建代码使用的变量,因此我已经设置了一个像这样的字典:
from buildbot.plugins import util
env = {
'BUILDBOT': '1',
'BUILD_TAG': util.Interpolate("%(prop:buildername)s-%(prop:buildnumber)s"),
'BUILDER': util.Property('buildername')
}
此词典可用于配置构建器:
util.BuilderConfig(
name="foo",
workernames=["a", "b"],
env=env, ...)
使用env
参数可以使此构建器发出的所有shell命令都将使用我在字典中声明的环境变量。
我使用BUILDBOT
来检测代码是否完全在buildbot中运行。其他变量将传递给诸如Sauce Labs和BrowserStack之类的服务,以便在那里识别其内部版本,或者将它们用于诊断目的。