CI/CD 流水线
CI/CD Pipeline
自动化代码质量检查、测试执行、安全审计和容器化构建部署
子问题
1.Lint 自动检查
2.E2E 测试自动执行
3.npm 安全审计
4.多架构 Docker 构建
5.分支保护策略
6.CI 内服务器健康检查轮询与超时处理
7.Docker 构建缓存策略(Registry 级 vs GitHub Actions 级)
8.Docker 标签语义化(release vs development vs PR)
各项目的解法1 solutions
Signals
横向对比
| 维度 | ClawFeed |
|---|---|
| CI 架构 | GitHub Actions 三 job 并行(Lint+E2E+Audit),无 job 间依赖 |
| 测试策略 | 450 行纯 Bash + curl E2E,16 分组 50+ 断言,零测试框架依赖 |
| DB 测试环境 | CI 内 Node.js 内联迁移 + sqlite3 CLI 种子注入,无 service container |
| 容器构建 | QEMU + Buildx 双架构(amd64+arm64),Registry 级缓存 |
| 安全加固 | 多阶段构建 + 非 root USER + HEALTHCHECK + npm audit |
| 标签策略 | tag → version+latest,branch → devel,PR 仅构建不推送 |
最佳实践
1.CI 中自动创建测试 DB 并注入种子数据
2.Docker 多阶段构建减小镜像体积
3.非 root 用户运行容器
4.用 Node.js 内联脚本执行 SQL 迁移避免额外 CLI 工具
5.Registry 级 cache-from/cache-to 跨 CI 运行复用构建层
6.PR 触发构建但不推送镜像(push 条件守卫)
7..dockerignore 排除 test/.env/.git/data 防止敏感文件泄入镜像