我经历过buildbot,CruiseControl.net,CruiseControl和Hudson。尽管我真的很喜欢CruiseControl
*,但是对于非常复杂的依赖项来说,这太麻烦了。buildbot的设置并不容易,但是它有一个不错的先兆(我就像python,仅此而已)。但哈德逊赢得了前三名,原因是:
- 设置简单
- 易于定制
- 看起来不错,并具有很好的概述功能
- 它本身和所有已安装的插件均获得了点击式更新。这是一个非常不错的功能,我越来越感谢
警告:我只使用linux作为上述构建服务器的基础(CC.net在mono上运行),但根据文档,它们都应跨平台运行。
设置哈德逊服务器
先决条件:
- Java(1.5可以满足您的需要)
- 对Subversion服务器的读取访问权限(我为hudson用户拥有一个单独的帐户)
从这里开始,只是:
java -jar hudson.war
这将立即在控制台上运行一个小型服务器实例,并且
http://localhost:8080如果您事先没有在该端口上运行任何其他操作,则应该可以在您的浏览该安装(您可以通过将
--httpPort=ANOTHER_HTTP_PORT选项传递给上面的命令),并且在“安装”过程中一切正常。
如果转到可用的插件目录(
http://localhost:8080/pluginManager/available),则会找到支持上述任务的插件(默认情况下已安装Subversion支持)。
如果您对此有兴趣,则应该安装Java应用程序服务器,例如tomcat或jetty。安装说明适用于所有主要应用程序服务器
更新:Kohsuke川口构建了一个窗口服务安装哈德森
在哈德森建立一个项目
以下演练中的链接假定hudson的运行实例位于
http://localhost:8080
http://localhost:8080/view/All/newJob
从左侧菜单中选择新作业()- 给工作起个名字
Build a free-style software project
并在列表上打勾 - 按“确定”将带您到作业的配置页面。除所有选项外,所有选项都带有一个问号。按下此按钮将弹出有关该选项的帮助文本。
- 在选项组“源代码管理”下,您将使用Subversion。Hudson接受url访问以及本地模块访问
- 在选项组“构建触发器”下,您将使用“轮询SCM”。这里使用的语法是cron的语法,因此每5分钟轮询一次Subversion存储库
*/5 * * * *
- 在选项组“构建”下指定了构建项目的过程。如果您已经有了一个包含所有所需目标的ant构建文件,那么您很幸运。只需选择“调用蚂蚁”并输入目标名称即可。选项组也支持开箱即用的maven和shell命令,但也有一个可用于phing的插件。
- 选中“后期构建操作”中的其他构建操作,例如电子邮件通知或构建工件的存档。
要设置hudson没有插件的进程,您可以在构建设置中直接通过Shell脚本调用它们,也可以编写自己的插件
陷阱:
- 如果您产生了假象,请记住定期对哈德森进行清理。
- 如果您设置了20个以上的项目,请考虑 不将 其构建状态显示为hudson的默认主页
祝好运!



