错误的累计性
错误越多,删除每个错误就越困难。部分原因是我们遇到了交错的错误,其中故障表现实际是多个故障叠加的结果,这使得更难找到每个故障。 这也是心理上的影响,当错误很多时,人们就没有精力去寻找和消除错误。
快速反馈
频繁部署很有价值,因为它使我们的用户能够更快地获得新功能,更快地对这些功能提供反馈,并且在开发周期中通常会变得更加协作。 这有助于打破客户和开发之间的障碍,这些障碍是成功软件开发的最大障碍。
立即修复
有些团队倾向于使用预测试、门禁提交来消除破坏主线的所有风险。以便推送到主线进行集成的提交不会立即进入主线。 它们可能会被放置在另一个分支上,直到构建完成,并且只有在绿色构建后才会迁移到主线。 虽然这种技术可以避免破坏主线的任何危险,但高效的团队应该很少看到红色主线,而且在少数情况下,它的可见性会鼓励人们学习如何避免它。
XaC
X是指的所有要素,也包含质量要素。流水线会检查所有合并到主线分支的提交内容经过代码检视,未经检视的提交内容禁止发布部署。
参考文档
- 持续集成
- 自动实现无需干预的安全部署
- 采用持续交付,加速交付进度
- ThoughtWorks: 持续交付洞察
- ThoughtWorks: 持续交付架构
- ThoughtWorks: CD和行政部门
- ThoughtWorks: CI/CD 基础设施即服务
- AWS: 通过CodePipeline控制OpsWorks
- AWS: 通过CodePipeline创建自定义Job
- AWS: 监控CodePipeline事件