1. 分支策略
持续集成中使用的分支策略包括以下三个:
- The master branch
- The integration branch
- The feature branch
而CD只在Integration的release上分支上执行即可。
2. Release 分支
一些团队采用发布分支的策略。release分支是在所有代码在生产环境中经过验证之后创建的。也就是从master上面拉取的。创建release分支的目的就是在相应的版本上进行bug修复。
3. CD 管道
在此处,不会再创建新的pipeline;而是利用我们之前创建CI多分支管道。 创建新的管道应该有以下步骤
- 从版本控制器中拉取代码
- 构建和单元测试代码,把单元测试报告发布到Jenkins。
- 执行静态代码分析,并把结果上传到SonarQube.假如错误的数量超过在SonarQubea质量门设置的阀值,那么将会导致管道执行失败。
- 执行集成测试,并公布单元测试报告到Jenkins.
- 上传构建的构建好的artifacts到Artifactory,并对artifacts附加一些属性。
- 部署二进制到测试环境
- 执行测试(质量分析)
- 在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 |
原文地址:https://www.cnblogs.com/zyxnhr/p/11783631.html
时间: 2024-10-01 03:18:13