【问题标题】:How to set a TeamCity build trigger to use an environment parameter如何设置 TeamCity 构建触发器以使用环境参数
【发布时间】:2021-01-28 08:12:38
【问题描述】:

我有一个 TeamCity 环境参数 (env.Environment),可以设置为您可以针对其运行构建的特定环境,即 UAT、DEV

在 TeamCity Build 触发器设置期间,没有选项可以选择您希望触发的构建运行所针对的参数。当我手动运行构建时,我可以选择选择要运行的参数,但在设置触发器时没有,有什么想法可以在哪里/如何设置?

【问题讨论】:

    标签: build parameters triggers teamcity


    【解决方案1】:

    有多种解决方法可以实现它,但您不能直接在 TeamCity 触发器中实现它。

    1. 您创建的环境只是将规范中的显示值更改为“提示”。但我相信它会暂停构建。因此,每当在预定时间触发构建时,您需要在提示中选择值。

    2. 我能想到的最有效的方法是在 TC rest API 的帮助下触发构建。在请求负载中,您也可以发送所需的参数值。因此,无论条件如何,只需在以任何编程语言编写的自定义脚本中处理这些事情。

    【讨论】:

      【解决方案2】:

      另一种(不是很漂亮)的方式 - 当由触发器启动构建时,teamcity 参数 teamcity.build.triggeredBy.username 等于 "Schedule Trigger"

      所以你可以在命令行构建的第一步检查它的值,然后重新定义所需的参数

      if [ %teamcity.build.triggeredBy.username% == "Schedule Trigger" ]; then
        echo "##teamcity[setParameter name='env.PARAM' value='VALUE']"
      fi
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-05-15
        • 2011-08-10
        • 2014-10-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-07
        • 2013-10-09
        相关资源
        最近更新 更多