【问题标题】:change build variable with powershell not working使用powershell更改构建变量不起作用
【发布时间】:2019-06-11 19:03:29
【问题描述】:

我想在构建时更改 tfs 变量 BUILD_SOURCEBRANCHNAME,在我的构建步骤中使用这个 powershell 脚本:

##vso[build.sourcebranch]master

这不会引发错误,但也不起作用?

我怎样才能做到这一点?

【问题讨论】:

  • 你为什么要改变它?它是信息性的,而不是功能性的。更改此变量不会更改正在构建的分支。你的目标是什么?
  • 我想在构建时伪造我的 tfs 分支名称。这不应该改变实际的分支——只是构建结束前的 tfs 变量。
  • 你为什么要这样做?
  • # 是 Powershell 中的注释字符 - 它后面的所有内容都将被忽略。你试过删除##吗?
  • @RichMoss 语法(有点)正确,Powershell 是从解释发送到 PS 控制台输出的##vso 命令的 Shell 运行的。

标签: powershell tfs tfsbuild


【解决方案1】:

在 Azure DevOps 中更改任何环境变量的语法是:

Write-Host "##vso[task.setvariable variable=someVar]varValue"

所以在你的情况下,如果你想“伪造”源分支:

$fakeBranch = "shayki"
Write-Host "##vso[task.setvariable variable=build.sourcebranch]$fakeBranch"
Write-Host "##vso[task.setvariable variable=build.sourcebranchname]$fakeBranch"

之前的变量:

脚本:

后面的变量:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-10
    • 2021-06-08
    • 2015-01-07
    • 1970-01-01
    • 1970-01-01
    • 2018-07-16
    • 2016-07-12
    • 1970-01-01
    相关资源
    最近更新 更多