parameters - TeamCity 条件参数值

标签 parameters build teamcity

如何将运行时值分配给构建参数?我将构建参数设置为一个下拉列表,比如说 %config.buildMode%,我需要有类似 IF 条件的内容,以便我可以根据构建模式选择为另一个参数分配不同的值。

例如

if %config.buildMode% == 'Debug'
   %config.hostName% = 'localhost'
else if %config.buildMode% == 'Release'
   %config.hostName% = 'http://servername'
else
   %config.hostName% = 'http://stackoverflow.com'

最佳答案

晚会有点晚,但有可能。 为您希望成为条件的值添加一个额外的参数(例如 TargetServerName),但将该值留空。 然后在进程开始时添加一个powershell构建步骤,并输入这样的脚本;

$BuildMode = "%buildMode%"
$ServerName = ""

if ($BuildMode -eq "Debug") {
  $ServerName = "localhost"
}
elseif ($BuildMode -eq "Release") {
  $ServerName = "theserver"
}
else 
{
exit 1
}
echo "##teamcity[setParameter name='TargetServerName' value='$ServerName']"

最后一行是魔法。通过输出,teamcity 基本上会执行它,设置您的 TargetServerName 参数。然后,您可以在后续构建步骤中使用该参数。

关于parameters - TeamCity 条件参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17138693/

相关文章:

c# - Powershell哈希表作为C#中自定义cmdlet的参数

linux - AOSP 构建错误 - ld.lld:错误: undefined symbol :v8::internal::RuntimeCallStats

git - 在 CI 服务器中构建 merge 请求

方法签名上的 C# 参数不会破坏重写/实现

Python参数语法错误: invalid syntax

parameters - Pyomo:如何更新现有模型实例的约束定义?

zip - 如何让 TeamCity 压缩 zip 文件

SCons 能否跟踪链接依赖项?

java - 如何使用 netbeans 创建可执行的 .jar 文件

java - 为什么不使用上次提交来构建 TeamCity 项目?