cnb.cool 流水线配置引擎
自动生成和修改 .cnb.yml 流水线配置。覆盖分支 glob 触发、Docker 构建环境、多层缓存、环境变量管理、手动触发按钮和登录调试。附带 7 份参考文档按需加载。
FEATURES
根据项目语言和结构自动生成 .cnb.yml,覆盖 pipeline/stage/job 语法、触发规则和环境配置。
支持 push、pull_request、commit.add、web_trigger、schedule、api_trigger 等事件,分支 glob 匹配。
支持 docker.image(预构建镜像)、docker.build(Dockerfile 构建)、docker.devcontainer 三种模式。
docker.volumes(copy-on-write 跨 stage)和 docker:cache(跨节点共享)两层缓存机制。
通过 .cnb/web_trigger.yml 配置按钮参数,支持选择目标构建、传递参数。
login debug 模式:添加可登录 stage,进入容器排查问题。
REFERENCE
.cnb.yml 流水线配置
| 命令 | 说明 | 示例 |
|---|---|---|
.cnb.yml | 主配置文件 | 分支 → 事件 → pipelines → stages → jobs |
.cnb/web_trigger.yml | 手动触发按钮 | 定义按钮 ID、参数、目标 pipeline |
.cnb/env/*.yml | 环境变量复用 | imports / exports 跨仓库共享变量 |
按需加载的 7 份详细文档
| 命令 | 说明 | 示例 |
|---|---|---|
cnb-yml.md | 完整配置语法 | references/cnb-yml.md |
trigger-rule.md | 触发规则详解 | references/trigger-rule.md |
docker-and-runner.md | Docker 环境与 runner 资源 | references/docker-and-runner.md |
cache.md | 缓存策略 | references/cache.md |
env.md | 环境变量 / imports / exports | references/env.md |
web-trigger.md | 手动触发按钮 | references/web-trigger.md |
debug.md | 登录调试 | references/debug.md |
recipes.md | 常见场景配方 | references/recipes.md |
告诉 Agent 你的构建需求,它会自动生成配置:
> "为这个 Node.js 项目生成 CNB 构建配置,main 分支 push 触发,需要缓存 node_modules"
Agent 会:
1. 分析项目结构和语言
2. 生成 .cnb.yml(pipeline → stage → job)
3. 配置 docker.volumes 缓存 node_modules
4. 设置分支 glob 触发规则同一 <branch>/<event> 下:
├── Pipeline A ──┐ (并发)
│ ├── Stage 1 │ (串行)
│ │ ├── Job1 │ (并发)
│ │ └── Job2 │
│ └── Stage 2 │
├── Pipeline B ──┘| 事件 | 说明 |
|---|---|
push | 代码推送 |
pull_request | PR 创建/更新 |
commit.add | 新增 commit |
web_trigger_* | 手动按钮触发 |
schedule | 定时触发 |
api_trigger | API 触发 |
遇到问题时按此顺序检查:
CODING 平台用户注意
若用户使用的是 CODING 平台的云原生构建(配置文件为 .coding-ci.yml),语法与变量机制与本 CNB 有差异,应改用 coding-ci Skill。
Agent 生成配置前会尽量一次问完以下问题:
$ 兖底配置?| 用户问题 | Agent 加载的参考 |
|---|---|
| 怎么写 .cnb.yml | cnb-yml.md + docker-and-runner.md |
| 触发规则/事件/分支 | trigger-rule.md |
| env/imports/exports | env.md |
| 缓存/加速 | cache.md |
| 手动触发按钮 | web-trigger.md |
| 登录调试 | debug.md |
| Monorepo/Docker push/超时/权限 | recipes.md |
INSTALL