TFS版本管理有一个变量概念。它们在设计时设置在发布定义中。有没有办法让任务改变变量,以便其他任务看到变化?
Windows SET
命令仅影响当前正在执行的cmd.exe实例的环境,它不会影响封闭过程'环境。
可以在工作文件夹中的临时文件中逐步传递信息,但粗略。
答案 0 :(得分:2)
我相信。我没有对此进行过测试,但请看一下这个VSO构建任务:
https://marketplace.visualstudio.com/items?itemName=jessehouwing.jessehouwing-vsts-variable-tasks
它有一个可以设置变量的任务。以下是它调用的特定powershell脚本:
第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