我正在从Jenkins转到使用 Concourse CI 来运行我的Sauce labs e2e测试。酱实验室将具有相同构建号字符串的测试组合在一起:
name: 'Chrome XS',
browserName: 'chrome',
tunnelIdentifier: process.env.TUNNEL_IDENTIFIER,
build: process.env.JENKINS_BUILD_NUMBER,
platform: 'Windows 10',
shardTestFiles: true,
maxInstances: 20,
如何使用如上所示的环境变量将构建号传递给我的脚本。 Concourse GUI使用 name #number 。有没有办法检索这个。我尝试在docker容器中打印所有环境变量,但默认情况下没有设置。
答案 0 :(得分:3)
有意不向任务提供类似构建号/ ID的元数据。见https://concourse-ci.org/implementing-resources.html#resource-metadata
这听起来似乎是Sauce Labs资源的一个用例吗?
答案 1 :(得分:1)
在Concourse中,构建元数据仅适用于资源,而不适用于任务。
将构建元数据与资源一起使用的示例是将其作为构建结果通知电子邮件的一部分包含在内。以下博客条目包含有关它的更多信息: http://lmpsilva.typepad.com/cilounge/2016/10/how-to-insert-build-metadata-into-user-notifications-in-concourse.html
如果您真的想使用内部版本号进行版本控制,您可以尝试创建自己的Concourse资源,它将返回版本号,但是,我会使用您的代码提交编号。另一种选择是在Concourse中使用Semver资源:https://github.com/concourse/semver-resource