Управление версиями модулей независимо в многопроектной среде и архивирование всех зависимостей
Я новичок в муравьях и Айви. Мы используем Jenkins для CI с ant для сборок, Ivy для менеджера зависимостей. У нас есть несколько модулей / проектов, которые генерируют файлы jar и wars, которые могут быть независимо версии и выпущены (не все модули будут выпущены одновременно), поэтому необходимо поддерживать номер версии отдельно для каждого модуля. Мы хотим использовать версию формата ABCD (например: 1.2.1.2). Я обнаружил, что могу использовать файл свойств для ввода номера версии и использовать задачу Ant BuildNumber для увеличения номера для наших ночных сборок. Итак, после того, как все функции введены и протестированы, мы переносим последнюю успешную ночную сборку как новую выпущенную версию, но мы хотим изменить номер версии, не перестраивая ее. Например, последняя успешная сборка была 1.2.1.20, и она была тщательно протестирована и имеет все функции, мы должны сделать эту сборку с 1.2.1.20 до 1.3.0.0 без перекомпоновки модулей. Как я могу сделать это с помощью муравья? А также мне нужно опубликовать их в моем общем хранилище с версией 1.3.0.0. Как я могу это сделать?
Также мы хотим создать zip-файл для каждого модуля со всеми файлами зависимостей вместе с файлом jar модуля для доставки. Есть ли какие-нибудь задачи по плющу или муравью, которые могут помочь создать это?
1 ответ
Я думаю, что вы задали два вопроса...
Как правило, каждая создаваемая мной сборка выпускается, поэтому я всегда увеличиваю последнюю цифру в своей схеме номеров релизов. Для управления номером версии я предпочитаю использовать задачу ivy buildnumber, которая увеличивается в зависимости от того, что было ранее передано в ваш репозиторий (очень полезно).
Создание почтового пакета довольно просто. Просто измените свой файл плюща, чтобы опубликовать более одного артефакта.