Многоэтапная сборка использует ту же ветку, что и запуск сборки

#azure-devops

#azure-devops

Вопрос:

В моем конвейере есть две сборки для разных решений в одном репозитории. Решение 1 запускается при фиксации в git, а решение 2 запускается всякий раз, когда сборка решения 1 завершена.

Проблема, с которой я сталкиваюсь, заключается в том, что мой первоначальный триггер git ищет любую ветку, соответствующую шаблону release/* . Это работает так, как задумано, но сборка Solution2 использует только то, что настроено как ветвь по умолчанию в задаче «Получить источники» в конвейере сборки. Я должен установить это значение по умолчанию для ветки, не могу использовать шаблон.

Изначально я настроил это с обоими запусками из git с release/* шаблоном, это сработало, но поскольку у меня есть только один агент сборки, это иногда вызывало проблемы, когда этап выпуска запускался до завершения обеих сборок. Пытаюсь настроить эту многоэтапную сборку, чтобы я мог просто запустить выпуск на последнем этапе сборки.

Есть ли способ, чтобы моя сборка в Solution2 по-прежнему запускалась по завершении сборки, но использовать любую ветку, которая запускала сборку Solution1?

Ответ №1:

Сначала установите https://marketplace.visualstudio.com/items?itemName=benjhuser.tfs-extensions-build-tasks

Затем, если вы отключите запуск Solution2

Наконец, отредактируйте конвейер решения 1 и настройте новую задачу «Триггерная сборка» в конце конвейера.

Затем, когда решение 1 завершено, оно запустит решение 2 из этой задачи в той же ветке.