我已经配置了一个将其输出复制到干净的VM没有问题的构建。现在我想定义一个构建后事件,它调用放置机器上的安装程序。还没有运气。事件看起来像这样:
$ (DropLocation) 提交 (BuildNumber)美元(IntfGenericName) _ (BuildNumber)美元(BuildLabel)。msi/qn
…并正确指定安装程序的名称。我尝试了一个简单的命令:
($DropLocation)echo "HI" >tmp.txt
…这也行不通。是不是不可能在掉落机器上发出命令?
将机器配置为TFS实验室环境(在MTM/Lab Center中)。然后使用LabDefaultTemplate创建TFS Build。Lab Default Template是专门设计用于从另一个构建中获取拖放,将其复制到目标环境中,然后在该环境中执行命令(并可选择运行一些测试)。
我认为dylanssmith的答案可能是正确的,但你也可以使用Exec任务:
<Exec WorkingDirectory="$(DropLocation)" Command='echo "HI" >tmp.txt' ContinueOnError="false" />.
我在我添加的msbuild文件中使用这些,这些文件在我的解决方案构建后运行,所以我不必修改我的xaml,修改xaml是通常要做的事情,尽管我相信。