I have a situation where, if files in a certain directory change, then I want to run job A; and if no files in that directory change, then I want to run job B. I always want to run exactly one of either job A or job B; I never want to run both.
Unfortunately, I can't find a way to set up this behavior using the VCS triggering rules, since it seems that the `:-` rules only exclude files from being considered for triggering - they don't ensure that the job is NOT triggered.
As an example - say my repository has these two directories:
Then, I have a build config, JobA, that has this vcs rule:
So far, so good - JobA will trigger if and only if files in jobA/ are modified.
Then, I try to set up JobB with this VCS trigger rule:
Unfortunately, this does not work as intended, because if a commit alters files in BOTH jobA/ AND other/, JobB will still trigger, when I want JUST JobA to run.
Is there any way to get this desired "partitioned" behavior, where EITHER JobA OR JobB is run, but never both?