Hudson是一款用来监控类似软件项目构建或Cron任务执行过程这样重复性工作执行情况的工具。
在这些工作中,目前Hudson主要关注:
- 持续构建、测试软件项目。提供CruiseControl和DamageControl的类似功能。简言之,Hudson提供了一个非常易用的持续集成系统,使得开发人员更加容易将更新集成到项目中来,用户也更容易获得应用的新版本。这种全自动的持续的构建功能使得生产力得以提升。
- 监控外部执行任务的执行情况。诸如cron任务和promail任务,甚至是在远程机器上执行的任务都可以进行监控。例如用cron,你所收到的是记录着输出信息的普通邮件,而且由你决定是否要认真阅读,还能在发生问题时进行提醒。Hudson能够提供持续性输出并且在出问题的时候让你很容易发现。
特性
Hudson提供了如下主要功能:
- 易安装:只需执行
java –jar hudson.war
命令就能测试,或者将它部署到一个servlet容器中并用于生产环境。没有其他内容需要安装,也无需数据库。 - 易配置:由于有大量的动态错误检查机制和内置的帮助文档,Hudson完全可以通过友好的Web界面就完成所有配置而无需手动编辑XML配置文件,当然如果你更喜欢那么做,我们也支持XML文件配置。
- 支持变更记录:Hudson可以生成一个列表,它记录了从CVS、SVN、Git等软件配置管理(SCM)系统中所产生的对版本构建的变更影响。
- 永久链接:对于大多数页面,Hudson都给出了清晰可读的URL地址,包括一些像“最近构建版本”、“最近成功构建版本”的永久链接。这样就能很容易的从别的地方链接到它了。
- 集成了RSS、电子邮件、即时通讯:当构建失败时监控结果会以RSS或者电子邮件的形式实时提醒。
- 事后标记:构建在完成之后的很长时间内都可以被标记。
- 支持Junit、TestNG测试:Junit测试报告可以和历史信息一起被制成表格、总结并展示出来。
- 分布式构建:Hudson可以将构建、测试分布式地负载到多台电脑上进行。这使得你能够最大限度的利用那些开发人员桌子下面的空闲工作站。
- 文件指纹:Hudson可以记录哪次构建产生了哪些jar包或者哪次构建在使用哪个版本的jar包等等。这个功能甚至同样适用于在Hudson之外产生的jar包,这是追踪一个项目依赖的理想方法。
- 插件扩展支持:Hudson可以通过第三方插件来进行扩展。你也可以为Hudson编写插件,使其能支持你们项目所用到的工具。
安装
- Hudson提供本地安装包也提供了简单的将war包安装到servlet容器中或者直接在其中启动的方式。点击安装Hudson了解详情。
支持多种业界标准产品
Hudson通过插件可以支持上百种标准产品,下面列举了其中的一小部分:
- 软件配置管理(SCM)系统:Git、CVS、SVN、Perforce、Mercurial、Team Foundation
- 构建工具:Ant、maven、gradle、MSBuild、Nant、Rake
- 单元测试框架:JUnit、NUnit、Selenium、CppUnit、TestNg、XUnit
- 代码覆盖率工具:Clover、Cobertura、Emma、Serenity、Sonar、NCover、Jacoco
- 代码分析工具:Checkstyle、PMD、Dry、Findbugs、Warnings、CCM、Violations
- 安全工具:LDAP、Active Directory、Crowd、OpenID
- 应用服务器:Weblogic、Glassfish、Tomcat、JBoss、IIS、JRebel
- 虚拟机环境:EC2、Virtual Box、VmWare、JCloud
- 社交通讯工具
开发资源
- 下载
- 文档:包括介绍、Husdon Book(用户指南)、架构文档、开发指南
- 构建指南:从源码构建Hudson
- 2.x源码仓库:https://github.com/hudson/hudson-2.x
官方网站:http://hudson-ci.org/
开源地址:https://git.eclipse.org/c/hudson
原文出处:伯乐在线