1. 分支策略

持续集成中使用的分支策略包括以下三个:

  • The master branch
  • The integration branch
  • The feature branch

而CD只在Integration的release上分支上执行即可。

2. Release 分支

一些团队采用发布分支的策略。release分支是在所有代码在生产环境中经过验证之后创建的。也就是从master上面拉取的。创建release分支的目的就是在相应的版本上进行bug修复。

3. CD 管道

在此处,不会再创建新的pipeline;而是利用我们之前创建CI多分支管道。 创建新的管道应该有以下步骤

  1. 从版本控制器中拉取代码
  2. 构建和单元测试代码,把单元测试报告发布到Jenkins。
  3. 执行静态代码分析,并把结果上传到SonarQube.假如错误的数量超过在SonarQubea质量门设置的阀值,那么将会导致管道执行失败。
  4. 执行集成测试,并公布单元测试报告到Jenkins.
  5. 上传构建的构建好的artifacts到Artifactory,并对artifacts附加一些属性。
  6. 部署二进制到测试环境
  7. 执行测试(质量分析)
  8. 在Artifcatory提高解决方案,就是把它标记为候选版本。

先前的CD Pipeline的目的就是对持续部署,测试(QA),和提升在binary仓库中的artifacts(比如以前只是构建好的二进制,现在可以把它列为候选,就是没有什么问题可以发布了)。并且针对每步的成功或者失败都执行报告 。

在真实的情况下,QA可能包含多个阶段的测试,比如性能测试,用户可接受测试,组件测试等。此处我们只执行性能测试

4. CD的实验将会用到的CD的工具集

Tool/Technology Description
Java Primary programming language used for coding
Maven Build tool
Junit Unit test and integration test tools
Jenkins CI tool
GitHub VCS
SonarQube Static code analysis tool
Artifactory Binary repository mananger
Apache Tomcat Application server to host solution
Apache JMeter Performance testing tool

DEVOPS技术实践_13:使用Jenkins持续传送设计-CD基础的更多相关文章

  1. DEVOPS技术实践_04:Jenkins参数化构建

    一.参数化构建 1.1 各个参数的信息 凭据参数存储一个用户的账号密码信息,等等,运用最多的是选项参数 1.2 使用选项参数 构建已经变成参数化构建 1.3 获取这个值,修改Jenkinsfile文件 ...

  2. DEVOPS技术实践_03:Jenkins自动构建

    一.提交代码自动构建 当开发人员在gitlab提交代码后,会自动触发jenkin构建 点击项目---->点击diy_maven-TEST----->点击配置--->构建触发器---- ...

  3. DEVOPS技术实践_12:创建持续集成的管道

    持续集成不仅包含了Jenkins或者相关其它的CI工具,也包含了包含代码如何控制,采用的什么分支策略等.不同的组织可能采用不同的类型的策略来完成CI,策略类型和项目的类型的有很大的关系. 一 分支策略 ...

  4. DEVOPS技术实践_11:Jenkins集成Sonar

    前言 前面已经有介绍sonar的安装,简单应用,下面在简答的研究一下sonar和jenkins集成的简单使用,对于sonar的安装不做介绍 一 sonar的简单介绍 持续检查避免了低质量的代码,比如S ...

  5. DEVOPS技术实践_18:Jenkins的Pinpeline对于参数的使用

    因为最近使用Pipeline声明式语法构建项目,但是最近项目的参数设置较多,特地的来学习一下关于参数的调用和测试,主要式从一个大神那里学习的,结尾回贴上大神的博客链接 1 构建一个pipeline项目 ...

  6. DEVOPS技术实践_17:Jenkins使用扩展邮件功能发送邮件

    一 环境准备 1.1 安装插件Email Extension 系统管理-管理插件-安装Email Extension插件 1.2 配置 配置jenkins邮箱的全局配置:系统管理-系统设置-完成邮箱配 ...

  7. DEVOPS技术实践_15:使用Docker作为Jenkins的slave

    前面实验了使用docker搭建一个jenkins,下面实验使用docker作为jenkins的slave节点 1. 环境准备 一个运行Docker的主机或者群集 Jenkins应该能访问互联网,方便安 ...

  8. DEVOPS技术实践_14:使用docker部署jenkins

    一 基础环境准备 [root@node6 ~]# cat /etc/redhat-release CentOS Linux release (Core) [root@node6 ~]# yum -y ...

  9. DEVOPS技术实践_09:Jenkins多分支管道

    简介 多分支的管道是在jenkins2.x中新增的功能 . 多分支管道允许你针对分布式的控制器的每个分支创建一个管道. 下图是对它的一个描述.使用jenkinsfile去创建多分支的管道,jenkin ...

随机推荐

  1. python 检测文件夹的数据变动

    from watchdog.observers import Observerfrom watchdog.events import *import time class FileEventHandl ...

  2. OpenStack组件系列☞horizon搭建

    第一步:部署horizon环境: 安装部署memcache 安装软件包 yum install memcached python-memcached 启动memcache并且设置开机自启动 syste ...

  3. OracleSpatial函数

    Oracle_spatial的函数 一sdo_Geom包的函数: 用于表示两个几何对象的关系(结果为True/False)的函数:RELATE,WITHIN_DISTANCE 验证的函数:VALIDA ...

  4. DTCC 2019 | 深度解码阿里数据库实现 数据库内核——基于HLC的分布式事务实现深度剖析

    摘要:分布式事务是分布式数据库最难攻克的技术之一,分布式事务为分布式数据库提供一致性数据访问的支持,保证全局读写原子性和隔离性,提供一体化分布式数据库的用户体验.本文主要分享分布式数据库中的时钟解决方 ...

  5. ccf-201403-3有趣的命令行

    傻逼题,要是考试只能得0分.. 提供几组傻逼数据,这要是在真实的生活中一定是错的... 还是要好好读题吧,全凭自己的感觉就得0分 albw:x 4 ls -a docu Case 1: -a ls - ...

  6. 本地测试读取redis和普通文件缓存的速度,redis慢一倍?

    重新测试了,换成了Linux服务器,php5.6,512内存.连续读取1千次不同的文件(每个文件41KB),redis也是1千个不同的key,文件缓存还是比redis快! 但是,但是,后来我换成连续读 ...

  7. gSOAP calc服务端与客户端示例

    1. Web服务定义描述头文件 typedef double xsd__double; int ns__add(xsd__double a, xsd__double b, xsd__double &a ...

  8. no_expand优化案例

    bond 来看一个烂语句: select a.*,b.dn from temp_allcrmuser a, phs_smc_user b  where a.USERNUMBER=b.dn  and ( ...

  9. 4-10 items设计

    1,items相当于dict,但是又比字典好 2,parse.urljoin(response.url,post_url)方法,其中image_url是一个域名的话,其中的当前域名就不用再添加. yi ...

  10. 常用mime.types

    以下是从nginx配置文件mime.types中提取出的最常用的文件格式, 整理了下, 方便查看 类型 文件格式 default_type application/octet-stream - tex ...