在TFS RMI任务中设置变量

时间:2016-09-23 20:14:39

标签: tfs tfs2015 ms-release-management

TFS版本管理有一个变量概念。它们在设计时设置在发布定义中。有没有办法让任务改变变量,以便其他任务看到变化?

Windows SET命令仅影响当前正在执行的cmd.exe实例的环境,它不会影响封闭过程'环境。

可以在工作文件夹中的临时文件中逐步传递信息,但粗略。

1 个答案:

答案 0 :(得分:2)

我相信。我没有对此进行过测试,但请看一下这个VSO构建任务:

https://marketplace.visualstudio.com/items?itemName=jessehouwing.jessehouwing-vsts-variable-tasks

它有一个可以设置变量的任务。以下是它调用的特定powershell脚本:

https://github.com/jessehouwing/vsts-variable-tasks/blob/master/vsts-variable-set/vsts-variable-set.ps1

第22行:

Write-Host "##vso[task.setvariable variable=$($VariableName);]$Value"

更新:
此后我发现了Microsoft文档:
https://github.com/Microsoft/vsts-tasks/blob/master/docs/authoring/commands.md
具体做法是:

  

VSO [task.setvariable]值

     

variable =变量名称(必填)   issecret = true(可选)   在taskcontext的变量服务中设置变量。第一个任务可以设置变量,以下任务可以使用变量。变量作为环境变量暴露给以下任务。当issecret设置为true时,变量的值将保存为secret并从log中屏蔽掉。秘密变量不作为环境变量传递给任务,必须作为输入传递。   示例:

##vso[task.setvariable variable=testvar;]testvalue

##vso[task.setvariable variable=testvar;issecret=true;]testvalue