论产品的需求与实现系列之ci持续集成

阅读更多

           产品的需求与实现系列:

         论产品的需求与实现系列之日志系统

         论产品的需求与实现系列之监控系统

         论产品的需求与实现系列之数据平台

         论产品的需求与实现系列之ci持续集成

 

 

           ci用过了两个产品,一个是hudson,另一个是jenkins.关于这两个的历史可以jenkins与hudson的恩怨

            

论产品的需求与实现系列之ci持续集成_第1张图片            
 
 
              需求1:ant 打包java项目,发布到WAS,自动重启

              解决需求1:项目工程很大,大的什么程度呢,当时我统计脚本行码将有500百万行。由于项目工程结构及依赖,尝试用maven去替换ant,发现效果还没ant好,maven一些包管理特性也没突显出来。so,还是用ant吧。

             1.先用ant写framework的基类的打包,再写每一个小工程的ant包,写到最后发现ant文件越来越多,后面又重构一下,采复用的模式。这是典型的程序员的思维,什么重构,复用。

 

             2.先看配置

             
论产品的需求与实现系列之ci持续集成_第2张图片
       

 
 

 

                 

             需求2:activator打包scala应用,功能有自动打包,分级发布,一键回滚,自定义回滚,查看版本等

             解决需求2:
论产品的需求与实现系列之ci持续集成_第3张图片
 

             需求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

 

   

  • 论产品的需求与实现系列之ci持续集成_第4张图片
  • 大小: 17.7 KB
  • 论产品的需求与实现系列之ci持续集成_第5张图片
  • 大小: 27 KB
  • 论产品的需求与实现系列之ci持续集成_第6张图片
  • 大小: 123.8 KB
  • 论产品的需求与实现系列之ci持续集成_第7张图片
  • 大小: 26.6 KB
  • 论产品的需求与实现系列之ci持续集成_第8张图片
  • 大小: 18.2 KB
  • 查看图片附件

你可能感兴趣的:(ci)