在TFS版本管道中有条件地执行批处理文件

时间:2017-11-02 14:45:32

标签: tfs azure-pipelines azure-pipelines-release-pipeline

我正在研究TFS并面临TFS存储库中有不同文件夹的问题

例如:

C#项目 极端 CCM

基本上它们是不同的技术文件夹,而tfs用户只需要检查相应的文件夹。

在Release管道中,我有各种批处理任务,基本上在代理上执行一些批处理脚本文件并执行。

有多个批处理任务,它们执行一些操作,我的问题是我想要有条件地执行批处理文件。

例如,如果在C#应用程序上发生任何更改,它将不会执行某些脚本,如果在特定文件夹上发生更改,则执行的特定bat文件将不会执行。

1 个答案:

答案 0 :(得分:-1)

没有任何开箱即用的功能允许您根据更改的文件夹有条件地执行任务。但是,你可以通过两种方式做你想做的事情

1)为每个技术领域创建单独的构建定义。使用触发器中的路径过滤器来控制基于已更改文件的路径触发的构建。

enter image description here

2)为构建定义中的每种技术创建变量。在构建定义的开始,添加一个Powershell任务(或类似的东西),根据更改的文件设置适当的变量。您可以在自定义条件中使用这些变量来执行任务。