2014-01-30 43 views
0

我有许多小型项目(~100),我希望使用竹子构建和部署到nexus。而不是在竹子中创建100多个构建计划,有一种方法可以让一个构建计划监视我们的单一源代码库(比如git)检测其中一个项目(通常只有一个文件)中的更改,检出这个文件并运行通用脚本在这个项目上?Bamboo通用构建计划

如果无法做到这一点是有使用竹桂

回答

0

的方法之一是为使用运行所有测试并上传档案的编程方式产生这些建设计划,而不是一种手段。假设你的孩子程序FooBar

- 示例 - http://www.gradle.org/docs/current/userguide/multi_project_builds.html

========摇篮

在根定义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在这种情况下,您需要为每个只运行当事情变了。它很难有一个“知道”什么变化,只上传的构建。从理论上讲,你可以对所有的工件运行一个'cksum',检查存储的txt文件,然后上传,我只是用眼睛去思考它:) –

+0

阅读这个doco:https://confluence.atlassian.com/显示/ BAMBOO/Repository +触发器+ + Build + when + Changes + are + Committed让我认为竹子可以传递关于存储库更改的信息,并且如果它能以某种方式将这些信息转发给构建脚本,这可能是可能的 – jshe857