SuperAPI AI 工具集

deployment-pipeline-design

设计与创作

查看项目

更新于 10-16 08:10

技能介绍

用途:用于从零设计并实现持续集成与部署流水线,涵盖流水线架构、部署策略、质量门禁与平台特定模式(GitHub Actions、GitLab CI)。

主要能力:

  1. 流水线架构:推荐阶段顺序为 Build -> Test -> Analyze -> Package -> Deploy -> Verify,并给出各阶段目的与失败动作(如构建快速失败、测试阻断部署、分析按阈值阻断或告警、部署失败回滚、验证触发回滚)。设计原则包括快速失败、并行执行、制品缓存、不可变制品、环境一致性。
  2. 部署策略:蓝绿部署(两套相同生产环境,负载均衡切换流量,秒级回滚,需双份基础设施预算);金丝雀部署(按 5%、25%、50%、100% 逐步放量,按错误率、延迟、健康检查失败触发回滚);滚动部署(逐批替换实例,可配置 maxUnavailable、maxSurge、minReadySeconds,适合资源有限、可容忍混合版本的无状态应用);特性开关(部署与发布解耦,回滚只需关闭开关)。
  3. 质量门禁:单元测试与集成测试 100% 通过、代码覆盖率 >= 80%、严重安全发现为 0、依赖无严重漏洞;生产部署可加人工审批门禁(至少 2 名审批人、禁止自审批、限时审批窗口、保留审计记录)。
  4. 平台模式:GitHub Actions 提供基础流水线结构、矩阵构建、可复用工作流、环境防护规则;GitLab CI 提供 stages、artifacts、rules、include 模板、动态环境(review 环境及 on_stop 清理)。
  5. 回滚机制:基于指标(错误率、p99 延迟、健康检查失败)的自动回滚触发;数据库迁移回滚建议前向迁移、避免破坏性操作、新列可空、用特性开关切换行为;基于制品的回滚脚本示例。
  6. 安全集成:SAST/DAST 与依赖扫描(如 npm audit、trivy fs)、密钥扫描与轮换。

使用方式:作为技能在需要设计流水线、实现部署策略、配置质量门禁、设置审批流程、实现自动回滚、创建多环境部署、集成安全扫描时调用。资料中给出 GitHub Actions 与 GitLab CI 的 YAML 示例,可按需参考。

适用场景:新建 CI/CD 流水线、高风险部署验证、多环境发布、需要快速回滚的生产部署。

限制:资料未提供该技能的安装命令、收费方式、平台支持范围与效果数据;示例中的阈值(如覆盖率 80%、金丝雀放量比例)为示例配置,实际需按项目调整。