触发CI仅在使用Git对VSTS(TFS Online)中的子文件夹进行更改时构建

way*_*est 5 git tfs continuous-integration azure-devops azure-pipelines

我在Visual Studio Team Services中有一个带有两个子文件夹的Git仓库.一个是HelloWorld,另一个是ST.路径在我的本地文件夹中显示为此.

root/HelloWorld/HelloWorld/ST

在HelloWorld下是一个C#应用程序.ST下是一组基本的DB脚本.

我想分别用CI构建这些CI.我有一个HelloWorld构建和一个ST构​​建,每个都独立工作.如果我使用git和push提交更改,则构建会成功运行.意思是,如果我从VS提交C#更改,将运行ST数据库构建,然后运行c#,VS解决方案构建.如果我提交并推送db更改,同样的事情.两个版本都运行.

但是,如果我在VSTS中使用新路径过滤器,并使用以下任一方法为ST构建添加过滤器:

  • 包括"ST"
  • 排除"HelloWorld"

并在任一文件夹中提交更改,ST构建将无法运行.

同样,如果我向HelloWorld构建,包含或排除添加过滤器,则该构建将不会运行.

我试过像这样的路径:

  • /你好,世界
  • 你好,世界/*
  • 的HelloWorld /的HelloWorld
  • 的HelloWorld /的HelloWorld/*
  • H*
  • /H*

一些组合,要么建立.如果我使用任何路径过滤器,事情将不会触发构建.无论过滤器是什么,手动构建都可以正常工作.

我错过了什么或路径过滤器坏了吗?

Edd*_*SFT 5

我不确定TFS/VSTS中项目的文件夹结构,所以我创建了一个示例项目供您参考,以下是文件夹结构: 在此输入图像描述

当推送到第一个"HelloWorld"文件夹中的更改时,将触发构建,并且按下"ST"文件夹的更改将不会使用以下设置触发构建: 在此输入图像描述

只有在"ST"文件夹中有更改时才会触发构建: 在此输入图像描述

请先从"代码"选项卡检查文件夹结构,然后更新构建定义的设置.


Pat*_*SFT 0

这是一个问题,请参阅此链接了解详细信息:CI 构建可能不会按预期触发。尝试检查您的构建定义是否受到影响,通过历史选项卡验证定义

此外,该问题已于 6 月 27 日得到修复。

最终更新:2016 年 6 月 27 日星期一 22:53 UTC

修补程序部署于 2016 年 6 月 27 日 21:26 UTC 完成,我们已确认无法再重现该问题。我们了解客户依赖 VS Team Services 作为一项关键服务,并对此次事件造成的任何影响表示歉意。

此致,阿尔文