Предположим, у меня есть три конфигурации сборки
- Сборка и запуск тестов
- QA Build
- Производственная сборка
QA зависит от тестов сборки и запуска. Производство зависит от QA.
Обычный рабочий процесс выглядит следующим образом.
- Подтвердить изменение
- Тесты сборки и запуска запускаются автоматически
- Запустить QA Build вручную.
- QA утверждает изменения
- Запуск производственной сборки вручную.
Это прекрасно работает. Тем не менее, давайте предположим, что какое-то изменение происходит между этапами 3 и 5. Итак, теперь у меня есть 1 ожидание изменения для QA и 2 ожидающих для производства (1 из которых утвержден QA).
Если я нажму кнопку Выполнить в TeamCity, он запустит ожидающее изменение для сборки QA и оба изменения для производственной сборки.
Если я нажимаю «...» на кнопке Run , я могу нажать «Изменения» и выбрать конкретную ревизию для включения в эту сборку. Тем не менее, это не показывает мне, какая ревизия в настоящее время находится в QA. Так что теперь я должен проверить, какая версия QA одобрена и убедиться, что я выбрал правильную.
Есть ли что-то вроде того, как работают зависимости артефактов? В этом я могу указать "Последний Завершено" или "Последний Прикрепленный". Это гарантирует, что неутвержденные изменения не будут включены в сборку.