GoCD 持续集成及部署利器 项目简介
GoCD 一款先进的持续集成和发布管理系统,由ThoughtWorks开发。(不要和Google的编程语言Go混淆了!)其前身为CruiseControl,是ThoughtWorks在做咨询和交付交付项目时自己开发的一款开源的持续集成工具。后来随着持续集成及持续部署的火热,ThoughtWorks专门成立了一个项目组,基于Cruise开发除了Go这款工具。ThoughtWorks开源持续交付工具Go。使用Go来建立起一个项目的持续部署pipeline是非常快的,非常方便。GoCD 的强大: 使用PipeLineGroup,PipeLine,Stage,Job,Task 分级分层控制任务粒度和关联性 强大的用户,角色系统 go-server <--> go-agent 通信和管理模式 除了JRE 1.6+ 以外不依赖其它组件,对系统的冲击很小,方便部署 不足: 不支持一个PipeLine、Job在多个Agent上依次执行(对于大规模集群式部署的应用来说,这简直要命) 插件比较稀少 开源时间短,用户群还比较小 Go的架构设计Go使用了Server-Agent的模式。Server用来展示和配置pipeline的DashBoard,并存放构建出来的Artifacts(存档文件,比如一个war包); Agent则用来执行真正的构建操作,一个Server可以和多个Agent建立连接,Agent支持多个主流的操作系统。