2014-01-30 2 views
0

У меня очень много небольших проектов (~ 100), которые я хочу использовать бамбук для создания и развертывания в nexus. Вместо того, чтобы создавать более 100 планов сборки в бамбуке, есть способ для одного плана сборки отслеживать наш единственный репозиторий источника (например, git), обнаруживать изменения в одном из этих проектов (как правило, только один файл), проверять этот один файл и запускать общий сценарий по этому проекту?Bamboo Generic Build Plan

Если это не возможно, есть средство программно генерировать эти строить планы, а не с помощью бамбукового гуй

ответ

0

Один из способов заключается в использовании либо или , чтобы запустить все тесты и загрузить архивы для вас. Предполагая, что ваш ребенок программы Foo, Bar

В - Пример - http://www.gradle.org/docs/current/userguide/multi_project_builds.html

======== Gradle

В основе определения build.gradle, который имеет свои зависимости, определить settings.gradle и просто следующая строка

include 'Foo', 'Bar' 

Для ваших детей проектов - они могут необязательно иметь свои собственные сценарии build.gradle

======== MAVEN

В - Пример - http://books.sonatype.com/mvnex-book/reference/multimodule.html

Вы объявляете простой родитель в корень, а затем определить модули, как так

<modules> 
    <module>Foo</module> 
    <module>Bar</module> 
</modules> 

Для каждого вашей программы вы определяете свой pom и определяете с помощью <artifactId>Foo</artifactId>

+0

Я больше ищу инструмент, который будет публиковать только те артефакты, которые имеют изменилось. Таким образом, некоторые сценарии или программы, которые получают информацию о том, какие модули изменились с git/bamboo в этом одном репозитории, и разворачивают эти файлы с помощью какого-то общего сценария развертывания – jshe857

+0

Aah, в этом случае вам понадобится отдельный сценарий для каждой сборки, которая выполняется только когда все изменилось. Трудно просто создать 1 сборку, которая «знает», что изменилось, и только загружает ее. Теоретически вы можете запускать 'cksum' против всех артефактов, проверять на сохраненный txt-документ и затем загружать, я просто перехожу с размышлениями об этом :) –

+0

Чтение этого doco: https://confluence.atlassian.com/ display/BAMBOO/Repository + Triggers + the + Build + when + Changes + are + Committed заставляет меня думать, что бамбук может и передается информация о изменениях в репозитории, и если он каким-то образом пересылает эту информацию скрипту сборки, это может быть возможно – jshe857

Смежные вопросы