我们正在从CruiseControl.NET迁移到Jenkins,以便与合作伙伴保持同步,因此我们没有两个不同的CI脚本。我们试图设置Jenkins来做一些类似于CruiseControl的工作,它有一个中央服务器在远程构建机器上调用项目(jenkins中的作业)。主jenkins可以在远程jenkins上运行作业吗?
我们必须分配给一个单独的项目,所以当我们从中央CI服务器生成项目,将调用远程CI服务器上的多个项目的生成计算机。远程CI服务器将从集中式CI服务器项目中提取版本。
在CruiseCruise控制,我们建立了一个项目,会做远程项目forceBuild
。构建机器上的项目使用remoteProjectLabeller
来检索版本号,以便它们始终保持同步。
要检索的主版本号:
<labeller type="remoteProjectLabeller">
<project>MainProject</project>
<serverUri>tcp://central-server:21234/CruiseManager.rem</serverUri>
</labeller>
调用远程项目:
<forcebuild>
<project>RemoteBuildMachineA</project>
<serverUri>tcp://remote-server:21234/CruiseManager.rem</serverUri>
<integrationStatus>Success</integrationStatus>
</forcebuild>
到目前为止,在詹金斯我设置为从属使用Java Web Start的辅助服务器但我不知道我会如何让主jenkins调用从站上的项目设置。
我可以设置Jenkins以调用从站上的项目(作业)吗?
我可以让奴隶从主站拉出版本号吗?
编辑 -
让我补充一些更多的信息。
- 主人和远程生成机器奴隶都运行Windows。
- 我们让中央大师CruiseControl在同一时间启动远程项目,以便他们同时运行,并且如果可能的话,希望与詹金斯有相同的事情。
+1是的我一直在考虑巡航控制思维的配置。谢谢。 –