用途
该技能覆盖 CI/CD 流水线设计、部署平台选择与生产基础设施。核心聚焦于 GitHub Actions,并强调安全加固(OIDC、权限范围限定、Action 固定)、以 Bun 为先的构建优化,以及从 MVP 到企业规模的部署模式。
适用场景:搭建 GitHub Actions 工作流、选择部署目标、为云厂商配置 OIDC、优化 CI 性能、规划多环境流水线。
不适用场景:应用层架构决策(应使用框架相关技能)、Kubernetes 集群管理(应使用专用 IaC 工具)、云厂商控制台配置。
主要能力
技能以快速参考表的形式给出常见需求与对应方案:
- MVP 部署(少于 1K 用户):Vercel、Netlify、Railway、Cloudflare Pages
- 成长型产品(1K–100K):AWS Amplify、Cloud Run、Fly.io、Render
- 企业级(100K+):AWS ECS/EKS、GKE、DigitalOcean App Platform
- 静态站点:Vercel、Netlify、Cloudflare Pages
- 全栈 + 数据库:Railway、Render、AWS Amplify
- 全球低延迟:Cloudflare Workers、Vercel Edge、Fly.io
- 合规(HIPAA、SOC 2):AWS、GCP、Azure
- 从 CI 进行云认证:OIDC 角色(绝不使用长期密钥)
- Action 固定:固定到提交 SHA,而非标签
- Bun CI 缓存:以 lockfile 为键缓存 ~/.bun/install/cache
- 流水线安全:使用 StepSecurity Harden-Runner 进行出站控制
- 容器构建:多阶段 Dockerfile(builder + runtime 阶段)
- Docker 层缓存:--cache-from 配合 actions/cache 用于 buildx
- 多平台构建:docker buildx 面向 linux/amd64、linux/arm64
- 镜像扫描:推送前在流水线中使用 Trivy 或 Snyk
- 镜像仓库推送:GHCR(ghcr.io)、ECR、Docker Hub
- 流水线阶段:build → test → security scan → deploy
- DORA 指标:部署频率、前置时间(目标 < 1 小时)、变更失败率(目标 < 5%)、MTTR(目标 < 1 小时)
使用方式
技能通过“需求—方案”对照表与“常见错误—正确模式”对照表指导实践,并给出与其他技能的协作与委派方式:
- 若存在 github-actions 技能,将详细工作流编写、矩阵策略与复合 Action 委派给它;本技能负责 CI/CD 架构与平台选择,github-actions 负责工作流语法深度。
- 若存在 deployment-strategy 技能,将部署模式选择(蓝绿、金丝雀、滚动)委派给它;本技能负责平台选择与 CI 流水线机制。
委派示例:
- 审计现有 CI 工作流的安全与权限:使用 Explore agent 扫描工作流 YAML 文件,查找过宽权限、未固定的 Action 与暴露的密钥。
- 搭建多环境部署流水线:使用 Task agent 创建 dev/staging/prod 工作流并配置环境保护规则。
- 规划从托管平台迁移到容器化基础设施:使用 Plan agent 评估当前部署、定义迁移步骤并选择目标架构。
常见错误与正确模式
- 将长期 AWS/GCP/Azure 密钥存为 GitHub secrets → 使用 OIDC 角色并授予 id-token: write 权限,实现零信任云认证
- 将 GitHub Actions 固定到标签而非提交 SHA → 将第三方 Action 固定到完整提交 SHA,防止供应链攻击
- 工作流权限保留默认(过宽)→ 在作业级别显式限定权限,默认 contents: read
- 每次分支推送都运行完整 CI → 使用 on.pull_request 过滤与基于路径的触发,避免浪费算力
- 在产品市场契合前过度设计基础设施 → 从托管平台(Vercel、Railway)起步,仅在需要时扩展到 AWS/GKE
- 使用过时的 Action 版本(v3 或更早)→ 使用当前主版本:checkout@v6、cache@v5、configure-aws-credentials@v5
- 只缓存 bun.lockb 而未考虑 bun.lock → Bun 1.2+ 使用基于文本的 bun.lock;按项目实际使用的 lockfile 格式进行哈希
- 跳过 PR 的预览部署 → 每个 PR 都应获得预览 URL,以便合并前测试
适用场景与限制
适用于 CI/CD 架构设计、部署平台选型、GitHub Actions 安全加固、CI 性能优化与多环境流水线规划。限制在于:不处理应用层架构决策、Kubernetes 集群管理与云厂商控制台配置;详细工作流语法与部署模式选择应分别委派给 github-actions 与 deployment-strategy 技能。
参考资料
技能引用的资料主题包括:GitHub Actions 工作流、OIDC、矩阵构建与安全加固;部署模式(Jamstack、无服务器、传统、微服务);平台选择框架、数据库需求与成本优化;监控、可观测性层级与部署检查清单;容器构建(多阶段 Dockerfile、层缓存、buildx、镜像扫描与镜像仓库推送)。