从多个构建获取参数到一个快照依赖构建 [teamcity]
Get parameters from multiple build to one snapshot dependent build [teamcity]
在 Teamcity 9.0.1 中,我有几个构建,它们以相似的步骤结束,但参数不同。
事实上,这些是服务步骤,构建不需要这些步骤来得出结论,构建没问题,但它们是服务所必需的,因此,目前,它们只是 运行 并且耗时。
我想要达到的目标是将这些步骤移到完全独立的构建中,并在成功构建结束触发器时调用它。但是,我无法弄清楚 - 如何将更改参数传递给这些新创建的构建?
快照依赖项没有给我想要的控制级别,因为它要求我从特定构建 ID 定义依赖项参数,而不是从刚刚结束的构建中读取它们。
通过下载使用工件依赖项 .teamcity/properties/build.finish.gz!** 失败并出现错误:
Unknown archive type
而且,实际上,这将迫使我创建额外的 xml 解析器
在完成构建触发器上没有内置任何内容来触发带有自定义参数的构建。
您将必须使用 TeamCity REST API / HTTP 端点来触发带有自定义参数的服务构建 - 您可以使用以下语法将它们作为 key/value 对传递(最好使用 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>
有关详细信息,请参阅 the docs。
在实施方面,作为触发构建配置的最后一步,您应该能够在几行 powershell 中执行您想要的操作 - 它们必须传递您想要的构建参数。如果您在多个构建配置中使用它,我会将此步骤移至通用 template 或使用 meta-runner。
在 Teamcity 9.0.1 中,我有几个构建,它们以相似的步骤结束,但参数不同。
事实上,这些是服务步骤,构建不需要这些步骤来得出结论,构建没问题,但它们是服务所必需的,因此,目前,它们只是 运行 并且耗时。
我想要达到的目标是将这些步骤移到完全独立的构建中,并在成功构建结束触发器时调用它。但是,我无法弄清楚 - 如何将更改参数传递给这些新创建的构建?
快照依赖项没有给我想要的控制级别,因为它要求我从特定构建 ID 定义依赖项参数,而不是从刚刚结束的构建中读取它们。
通过下载使用工件依赖项 .teamcity/properties/build.finish.gz!** 失败并出现错误:
Unknown archive type
而且,实际上,这将迫使我创建额外的 xml 解析器
在完成构建触发器上没有内置任何内容来触发带有自定义参数的构建。
您将必须使用 TeamCity REST API / HTTP 端点来触发带有自定义参数的服务构建 - 您可以使用以下语法将它们作为 key/value 对传递(最好使用 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>
有关详细信息,请参阅 the docs。
在实施方面,作为触发构建配置的最后一步,您应该能够在几行 powershell 中执行您想要的操作 - 它们必须传递您想要的构建参数。如果您在多个构建配置中使用它,我会将此步骤移至通用 template 或使用 meta-runner。