您的位置:首页 > 其它

多种持续集成工具全面比较

2007-04-26 12:15 429 查看
现在随着持续集成的广泛使用,也出现了很多支持持续集成的工具。由于有许多持续集成服务(CI)服务器可以选择,包括商业的和开源的。

虽然这些工具都试图自动进行软件构建的过程,但是都有各自的优点和不足。而且,有太多工具可供选择的不良后果就是很难决定究竟应该选择使用哪个。

在选用自动化过程的工具时,要时刻记住的就是:工具要确实适用。选择错误的工具可能会限制整体的灵活性,会导致执行简单动作反而需要更长时间,或者会把人锁定在特定的支持工具或过程。

用java实现的持续集成的开源工具有

CruiseControl http://cruisecontrol.sf.net/

Continuum http://maven.apache.org/continuum/

Anthill http://www.anthillpro.com/e/giant-ci-matrix-os

LuntBuild http://luntbuild.javaforge.com/

Gump http://jakarta.apache.org/gump/



更多工具的比较请见下面的图表:

图例说明:


当前版本已经实现


当前版本已经实现,但是还存在Bug或未经测试


计划在下一个版本实现


该功能没有实现

CruiseControl CruiseControl.NET DamageControl Drumbeat CI Tinderbox & Tinderbox2 BuildBot Anthill Professional Anthill BeetleJuice Luntbuild professional LuntBuild Gump Draco.NET Continuum Sin Parabuild Server Tinderbox3 Pulse TeamCity
Project info EAP
Project origin ThoughtWorks ThoughtWorks ThoughtWorks Timpani Software

Mozilla Project ? Urbancode Urbancode ? PMEase PMEase ? ? Apache CSH Consult Viewtier Systems John Keiser Zutubi JetBrains
Open Source





























+OpenAPI
Implementation language Java C# Ruby C# Perl Python Java Java Java Java Java Java C# Java C# Java Perl Java Java
Free



Free 2-user version




Free for Open Source Projects



Free for Open Source Projects






Free for Open Source Projects


Free for Small Teams and Open Source Projects


Free for Open Source Projects
Issue tracker JIRA JIRA JIRA ? Bugzilla ? private JIRA ? Supports SourceForge ? ? JIRA
Official support Bugzilla Jira Jira
Online demo here here openauthenticated here Working implementation ?

request


? here Use demo/domo ? ? Working implementation on Codehaus

here Eval download Working implementation
coming soon
Online Demo
Number of active developers 5 2 3 5 ? ? ? ? ? ? 2 ? ? 4 1 ? ? 2 5~7
SCM support
AccuRev

?

?

?

? ? ?






AlienBrain

? ? ? ?





? ? ? ? ? ? ? ? ?



Bazaar

? ? ? ?





? ? ? ? ?
? ? ?

BitKeeper

? ? ? ?



? ? ? ? ? ? ? ? ?

ClearCase




?


?

? ?





CA Harvest

? ? ? ?



? ? ? ? ? ? ? ? ?



CM Synergy

? ? ? ?





? ? ? ? ? ? ? ? ?

CVS




?

?

? ?





Dimensions

? ? ? ?



? ? ? ? ? ? ? ? ?



"File system SCM"




?

?

? ?





HTTP file


?
?

?

? ?





MKS




?

?

? ? ?






Perforce (p4)




?

?

? ?





PVCS




?

?

? ? ?







SourceGear Vault




?

?

? ? ?





StarTeam




?

?

? ?







Subversion




?

?

? ?





Surround




?

?

? ? ?





Team Foundation Server ?
(via plugin)
? ? ? ?

? ? ? ? ? ? ? ? ? ?
VSS




?

?

? ?







VSS Journal




?





?

? ? ?





SCM related support
SCM filtering




?

?

? ? ?




Multi-SCM




?
about

?

? ? ?




Can create new SCM repositories


Via web admin
?
?

?

? ?






Build management
Parallel builds (ability to build several projects simultaneously)




?

?

? ?





Distributed builds




?

?

? ?





Agents' code auto-updated ? ? ? ?
?




? ? ? ? ? ? ? ?


Manually force builds




Email
?

?

? ?
Not needed



SCM trigged builds
(if supported by SCM)


(if supported by SCM)


?

?

? ?





SCM poll based builds




Tinderbox2
?

?

? ?







Temporal build scheduling




?

?

? ?





Builds promotion
? ?

?
about

?

? ?





Interproject Dependencies ? ? ? ? ? ?

?

? ? ? ? ? ?

Builds deletion
? ? ? ? ?

?

? ?


?



Reproduce history builds
? ? ?
?

?

? ?





Proactive (can prevent build breakages)
? ?

?

? ? ? ? ? ?




Detect new failing tests while build ? ? ? ? ? ?
(via report)

? ? ? ? ? ? ? ? ? ?
Notify when first test in build fails ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ?
Security
User authentication


Apache recommended


For management
?

?

? ?



For management




User authorization schemes



? ?

?

? ?



Database



Admin/ Developer/Guest
LDAP Integration

?
? ?

? ?
? ?



?

Kerebos ? ?

?

?

?

?



? ? ?

?

?

? ?

?

? ?

?

Single Sign On ?

?

?

?

?

?





?

?

?

?

?

?

?

?

?

?

?

Custom JAAS ? ?

?

?

?

?



?

?

?

?

?

?

?

?

?

?

?

Publishing
Confluence


?
?

?

? ? ?




Email




?

?

? ?





Run executable




?

?

? ?





FTP




?





?

? ?







IRC


?
?





?

? ?







Jabber


?
?





?

? ?





Lotus Sametime




?





?

? ?







NetSend




?





?

? ?







ProjectStart




?





?

? ?







RSS




?





?

? ?







SCP


?
?



?

? ?







Windows System Tray




?





?

? ?







Formatted Logging
XML

XML

YAML

(In Relational Db)


?

?

Xml, Html
? ?





(In DB)
Yahoo Messenger


?
?




?

?









MSN Messenger ? ? ? ?
?





?

? ?







X10




?





?

? ? ?






Web interface
View changesets



Bonsai ?

?

? ?


Bonsai

Add new projects




"Tree" only
?

?

? ?



"Tree" only




Clone projects



? ?

?

? ?





Delete projects




?

?

? ?





Modify projects




?

?

? ?





Kill builds




?

?

? ?





Pause builds




?

?

? ?





Access to build artifacts




?

?

? ?






Browse CI's working copy


?
?

?

? ?





Delete CI's working copy


?
?

?

? ?





Search in builds




?

?

? ? ?






Historic graphs




?

?

? ?





Self-updating web page




?

?

? ?





Ajax
Multi project support




?

?

? ?





Multi project view




?

?

? ?





Add/remove agent machines (for distributed builds) ? ? ? ?
?


? ? ? ? ? ? ?



Directly supported build tools
Shell / command script




?

?

? ?





Ant




?

?

? ?





Groovy


















NAnt




?


?

? ?








Maven




?

?

? ?





Maven2




















Make




?

? ?
? ?





Visual Studio ('devenv')




?
about

? ?
? ?







Tools integration
ViewCVS


?
?

?

? ?





Fisheye




?

?

? ?





Bonsai ? ? ?

?





? ? ? ? ? ? ? ?


Bugzilla




?

?

? ?




Scarab




?

?
? ? ?





Trac


?
?

? ? ? ? ?






sourceforge.net


?
?

? ? ? ? ?





rubyforge.org


?
?

? ? ? ? ?





JIRA




?

?

? ?




Confluence




?

?

? ?





ClearQuest ?

?

?

?

?

?







? ?

?

?

?

?

?

?

?

?

?

JUnit result rendering




?

?

? ?





NUnit result rendering




?

?

? ?





Clover result rendering

? ?

?

?

? ?

? ? ? ? ? ? ?
? ? (/)about
Selenium result rendering

? ? ? ? ? ?



? ? ? ? ? ? ?
? ? (/)about
IntelliJ Plugin


?
?

?

? ?





Eclipse Plugin




?

?

? ?





VS 2005 Plugin ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ?
Remote Management API
SOAP



Asynchronous Messaging


?

?

? ? ?






XML-RPC


n/a
?

?

? ?





JMX
N/A N/A n/a
?

?

? ?





Hessian
? ? n/a
?





?

? ?





Client Library ? ? ? ? ? ?
about
? ? ? ? ? ? ? ? ? ? ?
OpenAPI
Eclipse ALF ? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ?
Installation and Configuration
Windows installer




?

?

? ?





Self contained distribution (except SCM clients)




?

?

? ?





Additional dependencies JRE, SCM client .NET Runtime, IIS, SCM client SCM client .NET Runtime, SQL Server (MSDE Included in distribution)

Perl, CVS ? JRE, SCM client JDK, Servlet container, SCM client ? jdk, SCM client jdk,tomcat,SCM client ? ? JRE, SCM client Subversion, .NET runtime/IIS or Mono/XSP
Perl, CVS, SCP JDK, some SCM clients

Some SCM clients
Execution platform JVM Windows, .NET, Mono

Ruby Windows, .NET, Mono

Perl ? JVM JVM ? JVM JVM ? ? JVM Windows, Linux Windows, Unix, Linux, Mac OS X, Solaris, HP UX Perl JVM JVM
Project platform (what it can build) Java + anything Ant/Maven/NAnt can build .NET or anything with a command line interface build Any language Any language

Any language ? Any language Any language with supplied ant wrapper ? Any language Any language with supplied ant wrapper ? ? Any language Any language Any language (i)Any language Any Language Any Language
Preferred build tool Ant, Maven Nant Any build tool NAnt

Make ? Any build tool Ant ? Any build tool Ant, Maven ? ? Maven 2 Any build tool Any build tool Make Any build tool Any
Requires modifications to build scripts NO NO NO NO
? NO NO ? NO NO ? ? NO NO NO
NO NO
Supports multiple projects




?

?

? ?





Automatic configuration from build script













Maven only







Text file configuration
XML

XML

YAML
Stored in SQL Db - XML input/export coming soon


?
XML import/export.

Database backend

?

? ?







XML configs for projects
转自: http://damagecontrol.codehaus.org/Continuous+Integration+Server+Feature+Matrix
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: