Родительский файл сборки в buildr
В настоящее время я смотрю на переход с maven2 на buildr, и меня беспокоит, как сохранить скрипты сборки DRY.
В настоящее время наш проект maven определен с родительским pom-файлом, содержащим весь общий код сборки, и выбирается как любая другая зависимость:
<parent>
<groupId>com.companyname</groupid>
<artifactId>parent</artifactId>
<version>1.0.0</artifactId>
</parent>
Сейчас я смотрю на buildr и замечаю, что он имеет симуляционную концепцию, но для этого потребуется поместить файл сборки на один уровень выше, например:
/svnrepo/buildfile
/svnrepo/ProjectA
/svnrepo/ProjectB
Это проблема, однако, потому что эти проекты не связаны и будут проверены и построены полностью отдельно. Поэтому мой вопрос: как мне лучше решить эту проблему? Как я могу сослаться на общий файл сборки, имея возможность извлекать только один проект за раз?
2 ответа
Я обнаружил ответ на эту проблему, и я забочусь о том, как это просто: создать драгоценный камень.
замените parent-pom.xml на parent.rb и распространите файл ruby как драгоценный камень, необходимый для всех других проектов.
Я думаю, что вы смущены
с одной стороны, ваши проекты сейчас собраны вместе с Maven, с 4 различными хранилищами, которые вы проверяете в нужных местах или используете svn:externals. Это звучит как плохая идея.
С другой стороны, вы хотите сделать то же самое с Buildr, но обеспокоены тем, что он не будет хорошо выглядеть?
Пожалуйста, строите эти проекты отдельно! Если у вас есть код, который можно повторно использовать из проекта в другом, например, в пользовательской задаче, тогда используйте svn: externals в каждом проекте, указывающий на файл ruby, который требуется для файла сборки.