TFS 2018 minimatch pattern failing to exclude test projects

57 Views Asked by At

I'm attempting to use the following minimatch pattern to exclude some test projects during a build, but the exclude pattern seems to be ignored and the build server attempts to build them anyway.

Components\**\*.vcxproj;!**\*Test.vcxproj

Using the Visual Studio Build step, the textbox labeled Solution contains the pattern. I use nearly the same pattern in another build step that packages the binaries for nuget and it doesn't have any issues.

Am I missing something?

1

There are 1 best solutions below

0
Chris Gessler On BEST ANSWER

This pattern works for the Visual Studio build step:

Components\**\*.vcxproj;-:**\*Test.vcxproj

While this pattern works for the NuGet pack step:

**/*.csproj;!**/*Test*.csproj;!**/_nuget/**

Note the difference from using ! to using -: I think the determining factor is the new "Version" drop down at the top of each build step. For example, in my case, the NuGet build step says Version 2.*, while the Visual Studio build step says Version 1.*.