繁体   English   中英

TeamCity:项目参数继承问题?

[英]TeamCity : project parameters inheritance issue?

我有一个 TeamCity 8.0.3 项目,其中包含多个配置,其中有一个公共参数(定义为项目参数): targetServerIP 这些配置之一是“一键部署”,它通过使用快照依赖项启动其他配置。 我已将参数设置为“提示”,因此每次运行任何配置时都会询问 IP,这就是

问题:单独工作正常,在每次配置运行时都会询问 IP 并成功应用于配置。 但是,当我执行“ 1 clic deployment ”时,它也会询问 IP,但不会将其传输到其他相关配置(值保持为<empty> )。

我的问题:当出现提示时,如何将此参数设置为应用于其他配置?

PS:我显然试图将其设置为环境env. 参数,但它没有帮助。

PS2:使用模板对我来说似乎不是一个好的解决方案。

有2个问题。 一个我可以帮助, 一个我试图解决自己的问题 只是解决了自己。

你的问题是你如何设置链条。 1 单击部署“取决于”其他部署

不能将参数传递给其他构建。
可以通过dep.dependent_build_configuration.paramter_name使用依赖构建中的参数

修复

你必须做两件事。

  1. 设置工件依赖项
  2. 设置触发器

建个

- 参数

全局参数

  • 显示:正常
  • 类型:文本
  • 允许值:不为空

建造 B

- 参数

本地参数

  • 显示:隐藏
  • 类型:文本
  • %dep.Build_A_GlobalParemeter%

- 快照依赖

  • 取决于:“构建 A”

- 触发器

  • TriggerType : 完成构建触发器
  • 构建配置:构建 A

这是如何工作的

工件依赖项通过%dep.Build_A.GlobalParameter%语法使变量可用。 Finish Build Trigger导致Build A触发Build B 您将可以访问参数,因为它们是从以前的构建中保存的。

直到今天(1 个月)我还没有找到问题所在(在调查中丢失了很多天),唯一的解决方法是每次需要时手动更改参数的值。

也许 XML 配置文件有什么特别之处? 我不知道。

在完成@Brandon 的响应后,您可以首先使用 TeamCity RestAPI 实现您想要做的事情,您可以在构建 ID 上调用结果属性,以查看在构建中设置了哪些属性。

curl my.teamcityserver.com/app/rest/builds/<some-parent-build-id>/resulting-properties

在 XML 中搜索您需要的参数名称,您应该能够从父构建中获取值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM