一,CI/CD流程和持续交付简介

CI(Continuous Integration)持续集成
  CD(Continuous Deployment)持续部署
  CD(Continuous delivery)持续交付

持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。持续集成的优点可参考文章https://www.jianshu.com/p/325f447e7881 。

·本文展示了CI/CD的一种解决方案,下文将进行基于这种方案的持续集成流水线的流程说明。使用到的开源组件如下:

1,git 代码仓库
2,gerrit 代码审查
3,sonarqube 代码质量检查
4,jenkins 自动化工具
5,sonatype nexus maven私库
6,rundeck 自动化工具
7,dashboard 问题跟踪

二,架构图及流程介绍

根据架构图简单概述为几个阶段:

一,  提交阶段

1,开发人员提交代码到git仓库。

2,开发人员使用sonarqube进行代码质量检查并根据检查结果进行修复代码。

3,测试人员使用jenkins对代码进行构建并进行单元测试、代码质量检查。

3,运维人员使用jenkins对代码进行构建并打包发布到测试环境。

二,测试阶段

1,测试人员使用jenkins进行集成测试

2,测试人员使用jenkins进行容量测试

三,发布阶段

1,运维人员使用jenkins将经过测试的master分支的包发布到生产环境

 

最新文章

  1. 严重: Exception loading sessions from persistent storage Java.io.EOFException
  2. 自动化安装SQL Server+SP就那么简单
  3. 部署网站出现System.ServiceModel.Activation.HttpModule错误
  4. Hadoop在eclipse中的配置
  5. Java-BlockingQueue的使用
  6. gulp学习笔记4
  7. PDF 补丁丁 0.4.1.820 测试版发布:统一PDF的页面尺寸
  8. 微信开发之开发环境搭建( visual studio 2015we + IIS express + ngrok)
  9. 【网络流24题】 No.14 孤岛营救问题 (分层图最短路)
  10. real server 的一个启动脚本例子
  11. atlas z 轴
  12. BootstrapTable(附源码) Bootstrap结合BootstrapTable的使用,分为两种模试显示列表。
  13. Day71Django基础
  14. Docker部署Consul集群
  15. HTML中--定义header和footer高度中间自适应
  16. CFDA
  17. Unity绘制Png图片
  18. hdu 5078(2014鞍山现场赛 I题)
  19. PLSQL Developer工具的使用
  20. logistic 回归Matlab代码

热门文章

  1. HDU100题简要题解(2030~2039)
  2. Dockerfile中如何自动回答标准输入的问题
  3. springboot中使用Filter、Interceptor和aop拦截REST服务
  4. 关于C# Span的一些实践
  5. iMindMap不同视图的应用技巧介绍
  6. 关于redis在cluster模式化下的 分布式锁的探索
  7. get、post、
  8. B 站今日黑白页是怎么实现的?
  9. 我与PHP,ULM和Vue.js不得不说的故事(我与PHP白月光的那些事儿之第三年的见异思迁番外篇)
  10. Django 的模板语法之过滤器