第七章 部署流水线原则与工具设计

部署流水线

部署流水线是对软件交付过程的一种可视化呈现方式,展现了从代码提交、构建、部署、测试到发布的整个过程,为团队提供状态可视化即时反馈

流水线的设计原则

  1. 一次构建,多次使用:当部署流水线的一次运行实例构建出制品,如果需要,它就应该直接被用于该流水线后续阶段的构建过程,而不是在后续阶段中被再次重复构建
  2. 与业务逻辑松耦合:部署流水线应该与具体的部署构建业务相分离。也就是说,仅仅将部署流水线平台工具视为任务的调度者、执行者和记录者只需要知道做什么,而不关心如何做如何做的脚本应该单独放在代码仓库里,而不应该放在部署流水线平台存储
  3. 并行化原则
  4. 快速反馈优先
  5. 重要反馈优先

团队的协作纪律

  1. 立即暂停原则:当部署流水线运行时,某个环节一旦出了问题导致执行失败,团队应该立即停下手中的任务,安排人员着手开始修复它,而不是放任不管。并且,在问题被修复之前,除因修复这个问题提交的代码外,禁止其他人再向代码仓库提交新的代码变更。

  2. 安全审计原则

    • 角色协作时,如果要传递代码或软件包,那么它们应该来自受控环境。受控环境是指对该环境的一切操作均被审计,并且在该环境中的任何组件均已通过审计。
    • 每个部署流水线实例的任何环节均应使用部署流水线所提供的制品,其产生的任何产物也应该接受受控管理
    • 每个角色对交付物进行验证时,都应该确保该交付物来自公共受信源,即统一的版本控制仓库或制品仓库

    ** * **尽可能早地对部署流水线产物进行安全审计,包括在构建过程中所使用的第三方软件包以及企业内其他团队提供的类库或者软件服务

部署流水线平台的构成

工具链总体架构:
受信源、部署流水线平台、基础支撑服务层
在这里插入图片描述
平台应当具备的基本能力

  • 能够准确展现部署流水线各环节的状态,并在不增加团队负担的情况下自动收集各环节产生的衡量数据,并对价值流动的效率进行度量
  • 平台要具备可追溯能力。一是对事件的追溯能力,二是对部署流水线产物的追溯能力
  • 平台要具备对历史构建进行重建的能力
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值