0

在 Teamcity 9.0.1 中,我有几个构建,它们以相似的步骤结束,但参数不同。

实际上,这些是服务步骤,构建不需要得出结论,即构建是好的,但它们是服务所必需的,因此,目前,它们只是在运行并消耗时间。

我想要达到的目标是移动这些步骤以完全分离构建,并在成功的构建结束触发器上调用它。但是,我想不通 - 如何将更改参数传递给这些新创建的构建?

快照依赖并没有给我想要的控制级别,因为它要求我从特定的构建 ID 定义依赖参数,而不是从构建中读取它们,这才结束。

通过下载 .teamcity/properties/build.finish.gz!** 使用工件依赖项失败并出现错误:

未知存档类型

而且,实际上,将迫使我创建额外的 xml 解析器

4

1 回答 1

1

没有内置任何东西可以在完成构建触发器上使用自定义参数触发构建。

您必须使用 TeamCity REST API / HTTP 端点来触发带有自定义参数的服务构建 - 您可以使用以下语法将它们作为键/值对传递(当然最好使用 HTTPS):

http://testuser:testpassword@teamcity.jetbrains.com:8111/httpAuth/action.html?add2Queue=MyBuildConf&name=<full property name1>&value=<value1>&name=<full property name2>&value=<value2>

有关详细信息,请参阅文档

在实现方面,您应该能够在几行 powershell 中执行您想要的操作,作为触发构建配置的最后一步——它们必须传递您想要的构建参数。如果您在多个构建配置中使用它,我会将此步骤移至通用模板或使用元运行器。

于 2015-02-21T17:18:23.970 回答