Мне нужны некоторые разъяснения относительно обязанностей скрипта сборки и сервера сборки.
Я прочитал несколько статей в сети о непрерывной интеграции и сборках. В том числе
- Клавиша F5 не является процессом сборки
- Сервер сборки: монитор сердца вашего проекта
- Ежедневные сборки - ваш друг
И я поговорил с моим консультантом о процессе сборки нашего программного обеспечения. Поскольку он очень опытный, я доверяю его заявлениям, но я остался в замешательстве.
Насколько я понимаю, исходя из моих исследований (и, пожалуйста, исправьте меня здесь, поскольку это то, о чем я спрашиваю), идеал должен быть следующим:
- каждый проект имеет свой скрипт сборки
- этот скрипт строит проект
- этот скрипт гарантирует, что зависимости построены ранее
Поскольку зависимости могут быть другим проектом, со своим собственным сценарием сборки нарастает древовидная иерархия. Может быть верхний скрипт сборки, который собирает все проекты и приложения.
Однако обязанности сервера сборки:
- проверить хранилище
- вызвать сборку
- триггерные тесты и другие инструменты QA
- сделать артефакт доступным
Это может быть вызвано вручную, ночью или при изменении хранилища.
Задачи моего советника, насколько я понимаю, состоят в том, что один сценарий сборки является негибким и не обслуживаемым (кроме того факта, что создание его для нашей унаследованной базы кода займет очень много времени). Также Build Server должен поддерживать зависимости, например, использовать старые зависимости при создании новых сбоев. И особенно потому, Ant
что это был конкретный предмет, он не способен создавать все виды различных технологий, которые используются в базе кода, и не способен поддерживать зависимости.
Можете ли вы уточнить цели и уточнить обязанности?