【发布时间】:2018-10-29 08:35:04
【问题描述】:
Buildbot 是否在 CI 作业中提供环境变量以允许其识别,例如Travis does with TRAVIS?
【问题讨论】:
标签: continuous-integration buildbot
Buildbot 是否在 CI 作业中提供环境变量以允许其识别,例如Travis does with TRAVIS?
【问题讨论】:
标签: continuous-integration buildbot
最后我检查了 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 等服务,以识别那里的构建,或者用于诊断目的。
【讨论】: