mcpField
D
deployment

deployment

github.com/pixel-process-ug云与 DevOps381 次安装33 周前更新
代码仓库

关于 deployment

此技能引导团队选择部署目标、设计 CI/CD、生成配置,并准备验证与回滚检查。它会在关键阶段暂停以确认方案,并根据项目环境调整流程。

主要功能

  1. 01识别部署目标与 CI/CD 需求
  2. 02设计流水线并提供配置示例
  3. 03生成部署前后检查清单
  4. 04提供回滚、监控与安全建议

适用场景

  1. 01规划新的生产环境部署
  2. 02为项目自动化 CI/CD
  3. 03准备部署验证与回滚步骤

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/pixel-process-ug/superkit-agents --skill deployment

安装后在 Claude Code 中输入/deployment确认已加载。

详细介绍

部署

概述

设置 CI/CD 流水线和部署配置,自动完成从代码到生产环境的流程。此技能会检测部署目标、生成流水线配置、创建部署前后检查清单并配置监控,从而构建一条全自动、可随时回滚的部署流水线。

开始时说明:“我将使用部署技能来设置部署流水线。”

阶段 1:检测部署目标

在此阶段结束后暂停 — 向用户展示检测结果,待其确认后再继续。

提出问题以了解完整的部署环境:

平台检测:

  • 部署到哪里?(Vercel、AWS、GCP、Azure、DigitalOcean、可自托管)
  • 是否基于容器?(Docker、Kubernetes)
  • 是否采用无服务器架构?(Lambda、Cloud Functions、Edge Functions)

CI/CD 检测:

  • 使用什么 CI 系统?(GitHub Actions、GitLab CI、CircleCI、Jenkins)
  • 什么操作会触发部署?(推送到 main、标签、手动触发)
  • 是否有多个环境?(开发、预发布、生产)

基础设施检测:

  • 是否需要数据库迁移?
  • 如何管理环境变量?(密钥管理器、.env)
  • 是否使用 CDN/缓存?是否有资源流水线?
  • 是否需要监控/告警?(Datadog、Sentry、New Relic)
平台选择决策表
项目类型推荐平台CI/CD原因
静态网站 / SPAVercel、Netlify、Cloudflare Pages内置无需配置、边缘 CDN
Node.js APIAWS ECS、Cloud Run、RailwayGitHub Actions支持容器、自动扩缩容
单体仓库(前端 + 后端)Vercel + AWS / RailwayGitHub Actions分离关注点、独立扩缩容
企业级 / 合规要求严格AWS EKS、GKEGitLab CI、Jenkins完全掌控、审计追踪
爱好项目 / 业余项目Railway、Fly.io、Render内置或 GitHub Actions简单、成本低
ML / 数据流水线AWS SageMaker、GCP VertexGitHub Actions + Airflow支持 GPU、流水线编排

阶段 2:设计流水线

在此阶段结束后暂停 — 向用户展示流水线设计,待其批准后再生成配置。

标准流水线阶段
┌─────────┐   ┌──────────┐   ┌──────────┐   ┌──────────┐   ┌──────────┐
│  Build   │──▶│   Test   │──▶│  Lint/   │──▶│  Deploy  │──▶│  Verify  │
│          │   │          │   │  Check   │   │          │   │          │
└─────────┘   └──────────┘   └──────────┘   └──────────┘   └──────────┘

构建: 安装依赖项、编译、打包 测试: 单元测试、集成测试、覆盖率检查 Lint/检查: 代码检查、类型检查、安全审计 部署: 部署到目标环境 验证: 健康检查、冒烟测试、监控

分支策略决策表
分支操作环境门槛
feature/*构建 + 测试 + Lint无PR 检查通过
main构建 + 测试 + Lint + 部署预发布所有检查通过
release/* 或标签构建 + 测试 + Lint + 部署生产手动批准
hotfix/*构建 + 测试 + 部署生产(加急)高级人员批准
部署策略决策表
策略适用场景风险等级回滚速度
直接部署个人/爱好项目、预发布环境高慢(重新部署)
蓝绿部署有健康检查、需要低停机时间的应用低即时(切换)
金丝雀发布高流量生产环境、逐步推出极低快(重新路由)
滚动部署Kubernetes 集群、无状态服务低中等
功能标志将部署与发布解耦极低即时(切换开关)

阶段 3:生成配置

GitHub Actions 示例
name: CI/CD Pipeline

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  build-and-test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
          cache: 'npm'
      - run: npm ci
      - run: npm run lint
      - run: npm run type-check
      - run: npm test -- --coverage
      - run: npm run build

  deploy-staging:
    needs: build-and-test
    if: github.ref == 'refs/heads/main'
    runs-on: ubuntu-latest
    environment: staging
    steps:
      - uses: actions/checkout@v4
      # [platform-specific deploy steps]

  deploy-production:
    needs: build-and-test
    if: startsWith(github.ref, 'refs/tags/v')
    runs-on: ubuntu-latest
    environment: production
    steps:
      - uses: actions/checkout@v4
      # [platform-specific deploy steps]
GitLab CI 示例
stages:
  - build
  - test
  - deploy

build:
  stage: build
  script:
    - npm ci
    - npm run build
  artifacts:
    paths: [dist/]

test:
  stage: test
  script:
    - npm run lint
    - npm run type-check
    - npm test -- --coverage

deploy-staging:
  stage: deploy
  environment: staging
  script:
    - # platform-specific deploy
  only:
    - main

deploy-production:
  stage: deploy
  environment: production
  script:
    - # platform-specific deploy
  when: manual
  only:
    - tags

阶段 4:创建部署检查清单

暂停 — 向用户展示检查清单。根据其技术栈进行定制。

部署前检查清单
## Pre-Deploy Checklist

- [ ] All tests passing on CI
- [ ] Code reviewed and approved
- [ ] No critical/high security vulnerabilities
- [ ] Environment variables configured for target environment
- [ ] Database migrations tested (if applicable)
- [ ] Feature flags configured (if applicable)
- [ ] Rollback plan documented
- [ ] Monitoring/alerts configured
- [ ] Changelog updated
- [ ] Version bumped
部署后验证
## Post-Deploy Verification

- [ ] Health check endpoint returns 200
- [ ] Smoke tests passing
- [ ] Error rate within normal range
- [ ] Response times within SLA
- [ ] Database migrations applied successfully
- [ ] Feature flags active/inactive as expected
- [ ] Monitoring dashboard showing expected metrics
- [ ] No new errors in error tracking (Sentry, etc.)

阶段 5:审查并定稿

向用户展示完整的流水线配置:

  1. 验证 CI/CD 配置文件语法有效
  2. 验证所有环境变量均有文档说明
  3. 验证回滚方案已准备就绪
  4. 验证部署前后检查清单完整
  5. 验证可在本地测试流水线(act 等)

将配置保存到 .github/workflows/ 或同等目录。

反模式 / 常见错误

反模式为什么不对应该怎么做
手动部署到生产环境容易出错,且没有审计记录通过 CI/CD 流水线实现自动化
没有回滚计划部署导致生产环境故障时会陷入困境每次部署前制定回滚计划
跳过预发布环境问题会在生产环境中才被发现始终先部署到预发布环境
在代码/配置文件中存放密钥有安全漏洞风险使用密钥管理器或环境变量
生产镜像使用 latest 标签部署无法复现固定使用特定版本标签
没有并发控制部署之间会相互冲突在 CI 中添加并发组
部署时不进行健康检查无法了解部署的健康状况添加健康检查端点和部署后检查
监控噪声过多导致告警疲劳真实问题会被忽略针对症状设置告警,并调整阈值

核心原则

  • 全部自动化 — 关键流程中不应有手动步骤
  • 快速反馈 — 尽早失败,快速失败
  • 环境一致 — 预发布环境应与生产环境一致
  • 随时可回滚 — 每次部署都有回滚计划
  • 可观测 — 在部署前、部署期间和部署后进行监控
  • 安全 — 不在代码中存放密钥,使用密钥管理
  • 幂等 — 两次部署相同版本应产生相同结果

集成点

技能集成方式
senior-devops提供部署配置中使用的 Docker、K8s 和 IaC 模式
git-commit-helper约定式提交可驱动变更日志生成和版本升级
finishing-a-development-branch分支完成后触发部署流水线
verification-before-completion部署后的验证关卡
security-review流水线中的安全扫描阶段
planning部署计划是实施计划的一部分

技能类型

灵活 — 根据项目的云服务提供商、团队规模和运维成熟度,调整流水线设计、平台选择和工具。原则(自动化、回滚、可观测性)保持不变;具体工具可以互换。

评论

支持 Markdown