У меня есть два решения в соответствующей папке, например
SolutionA\SolutionsA.sln
SolutionB\SolutionB.sln
Для каждого решения настроена сборка Gated Check-in; то есть два определения сборки GatedSolutionA и GatedSolutionB.
Теперь ситуация такова, что, если я проверяю изменения в обеих папках вместе, TFS показывает диалоговое окно для выбора сборки (раскрывающейся с GatedSolutionA, GatedSolutionB) для запуска с набором изменений. В моем наборе изменений есть критические изменения в решении B и нерушимые изменения в решении A. То есть, сборка GatedSolutionB не будет выполнена, но GatedSolutionA пройдет.
Когда я выбираю GatedSolutionA для сборки на основе моей ревизии, TFS регистрирует ее, что, в свою очередь, оставляет решение B в нерабочем состоянии, и цель проверки Gated отменяется для решения B.
Если я изменю триггер на CI для определений сборки, TFS ставит в очередь обе сборки.
То, что я ищу, - это одно и то же поведение, т. Е. Все сборки Gated ставятся в очередь, и в случае сбоя одной из них набор изменений должен быть отклонен.
Примечание : я не хочу создавать одно определение сборки для обоих решений. Кроме того, я знаю, что мы можем избежать этой проблемы, создав два отдельных набора изменений, но обычно это происходит, когда разработчики не знают, что у них есть какие-то файлы, проверенные для решения, отличного от того, над которым они работают.