论产品的需求与实现系列之ci持续集成
? ? ? ? ? ?产品的需求与实现系列:
? ? ? ? ?论产品的需求与实现系列之日志系统
? ? ? ? ?论产品的需求与实现系列之监控系统
? ? ? ? ?论产品的需求与实现系列之数据平台
? ? ? ? ?论产品的需求与实现系列之ci持续集成
?
?
? ? ? ? ? ?ci用过了两个产品,一个是hudson,另一个是jenkins.关于这两个的历史可以jenkins与hudson的恩怨
? ? ? ? ? ??? ? ? ? ? ??
?
?
? ? ? ? ? ? ? 需求1:ant 打包java项目,发布到WAS,自动重启
? ? ? ? ? ? ? 解决需求1:项目工程很大,大的什么程度呢,当时我统计脚本行码将有500百万行。由于项目工程结构及依赖,尝试用maven去替换ant,发现效果还没ant好,maven一些包管理特性也没突显出来。so,还是用ant吧。
? ? ? ? ? ? ?1.先用ant写framework的基类的打包,再写每一个小工程的ant包,写到最后发现ant文件越来越多,后面又重构一下,采复用的模式。这是典型的程序员的思维,什么重构,复用。
?
? ? ? ? ? ? ?2.先看配置
? ? ? ? ? ? ?
? ? ? ?
?
?
?
? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ?需求2:activator打包scala应用,功能有自动打包,分级发布,一键回滚,自定义回滚,查看版本等
? ? ? ? ? ? ?解决需求2:
?
? ? ? ? ? ? ?需求3:gradle +android应用
? ? ? ? ? ? ?解决需求3: 先装gradle 2.6 ,下载android依赖的包,然后是一堆配置,后来又作了junit测试
? ? ? ? ? ? ?
? ??
? ? ? ? ? ? ?需求4:xcode+ios打包发布应用
? ? ? ? ? ? ?解决需求4:还是先安装xcode,不过这xcode 版本有要求,要10以上
?
?
? ? ? ? ? ? 需求5:jenkins的master-slave方式,pipline流工作依赖,代码质量检测,定时任务(githook)..........
? ? ? ? ? ??
? ? ? ? ? ?最后的产品展现:
? ? ? ? ? ?
?
?
? ? ? ? ? ? ?总结:对比hudson与jenkins,更喜欢jenkins,jenkins更新快,插件丰富,一些特性比如githook等,更容易在社区找到答案。hudson运行很稳定,一直用作java主ci
?
? ?
原文:http://hugoren.iteye.com/blog/2280746