Reputation: 1231
I have a VCS Root's client mapping set up on the root level like this:
VCS root name: My Main
VCS root ID: Main
client mapping: //Main/... //team-city-agent/...
Main contains the source of multiple projects so its structure looks like:
Main/Project1
Main/Project2
...
Then in my build definition for Project1 I have a VCS trigger set up with a rule like:
+:root=Main:/source/Project1/**
I can see build kick off whenever I check in something under Main/Project1. However the problem is whenever there are changes checked in under Project2, I see the Pending Changes number incremented on the admin page for Project 1. This is very annoying and I wonder if my setup is correct.
Is there any way to not show the pending changes in Project2? Do I have the VCS Root set up correctly?
Upvotes: 0
Views: 1855
Reputation: 3081
I can't speak for Perforce directly, but I would suggest you're seeing the pending changes for all projects because it's the VCS root (and checkout rules) that detect changes and it's looking at the full source; your VCS trigger is simply limiting the build running to a specific subset of that.
You can try specifying a checkout rule on the VCS root :
+:/source/Project1 => .
I've used this to achieve similar results where I need 2 builds running in isolation across 2 solutions under the same VCS.
Upvotes: 1