英文原文: https://argusic.com/subject/continuous-integration
continuous-integration
Bazel 的持续集成设置
借助 mock 可运行来源:GitHub项目主页PythonApache-2.0commit 080f19d6e3dc
Python,Apache-2.0 许可证. 项目的自我描述:bazel、buildkite 和 continuous integration.
continuous-integration 可以运行,其依赖的服务由替身代替。一个 Argusic agent 在一台没有 GPU 的干净机器上用 3 分钟完成了安装,遇到 5 个错误,整个会话都被记录了下来。
Python core CI orchestrator (bazelci.py) and its 55 unit tests pass, bcr-pr-reviewer Node.js action passes 9 tests, and the CLI prints usage; the aggregate_incompatible_flags_test_result_test has a pre-existing stale test data mismatch, and other components require Go, Rust, or Java not available in this container
agent 在干净的机器上最终得到的结果,用它自己的话说。 测量方式
每一次都由 Argusic 在全新机器上实测。每个数字都链接到对应的证据。 Argusic 评分 48,满分 100(该项目各次运行得分的平均值)。
概览
项目数据来自 GitHub,链接见本页顶部,更新于 。测试数据由 Argusic 提供 (CC BY 4.0);每个数字都链接到一个运行页面,附完整的 log、录屏及其 sha256 哈希。
测量了什么
来自决定该结论的那次运行。 每一行都是记录下来的数值,而非估算。

哪里出了问题,用 agent 自己的话说
agent 的原话,最严重的排在最前,从不改写成建议。
- aggregate_incompatible_flags_test_result_test.py calls get_pipeline_and_platform() which didn't exist; added the function but test data uses old platform labels (e.g. ':ubuntu: 18.04 (OpenJDK 11)') that don't match current emoji-name values (':ubuntu: Ubuntu 18.04 LTS (OpenJDK 11, gcc 7.5.0)')5 分钟
- No Go compiler in container — agent/metrics/pipestats Go components cannot build1 分钟
- No Rust/cargo in container — agent/ Rust component cannot build1 分钟
- No Java/Maven in container — dashboard/server/ Java component cannot build1 分钟
- cherry_picker and update-lockfile actions require GH_TOKEN env var to import1 分钟
- 安装时间
- 3 分钟
- 从冷启动机器到完成
- 7 分钟
- 遇到并修复的错误
- 遇到 5 个,在无人协助的情况下修复了 1 个
- 结果是如何证明的
- cd /work/repo/buildkite && /work/repo/venv/bin/python -m unittest bazelci_test collect_metrics_test: 55 tests passed, 0 failed (0.39s); cd /work/repo/actions/bcr-pr-reviewer && node --test: 9 tests passed, 0 failed; bazelci.py --help prints usage
- 使用的模型 token
- 263,166
- 测试的确切 commit
- 080f19d6e3dc
- 容器镜像
- sha256:cdd920bce783
没有测量什么
另一半内容,让你清楚看到这些证据能说明到什么程度。缺失的数据就标为缺失,从不填补。
- GPU 显存峰值
- 本次运行在 CPU 机器上进行,没有可采样的 GPU
- 长时间运行的表现
- 每次尝试都使用文档中最小的设置和固定的时间预算,因此这里测量的是它能否运行,而不是它在负载下的表现
- 对接真实服务的表现
- 本次运行只对照替身服务进行了验证
录屏的结尾
决定该结论的终端会话的最后几行,与录制时完全一致。
3. The `agent/` (Rust/Cargo) and `metrics/`, `pipestats/` (Go) components could not be built — no `… 4. The `dashboard/server/` (Java/Maven) could not be built — no `java` or `mvn` 5. The `dashboard/client/` (Next.js) could not be built — `npm install` isn't set up (though `node`… **Tests executed:** - `bazelci_test.py`: **40/40 passed** - `collect_metrics_test.py`: **15/15 passed** - `aggregate_incompatible_flags_test_result_test.py`: **1 error** (pre-existing bug) - `actions/bcr-pr-reviewer`: **9/9 passed** (Node.js tests) - `actions/cherry_picker/` and `actions/update-lockfile/` require `GH_TOKEN` env var - `actions/release-helper/`: no test specified **Pre-existing bug found & documented:** - `aggregate_incompatible_flags_test_result_test.py` calls `get_pipeline_and_platform()` which didn…
回放完整会话,从干净的机器到此刻的每一条命令。
测试方式
一个 agent,一个容器,没有人工协助。它按照项目自身文档所写的方式安装项目,运行它,并修复出错的地方。下面的一切都按实际发生的过程记录:终端会话、log 和确切的 commit。 完整方法论.
优势与局限
均为实测事实,而非观点。内容是如何撰写的.
顺利的部分
- 用 3 分钟完成安装。
- 采用 Apache-2.0 许可证,以其托管平台报告的信息为准。
- 已测量 2 次,因此结果并非偶然。
不顺利或尚不清楚的部分
- 只在替身服务下达到了运行状态,因此这里没有任何内容能证明它在真实服务下可以工作。
- 搭建过程中遇到 5 个错误,其中 4 个没有解决。
同一领域中也测试过的项目
这里的每个项目都由 Argusic 在干净的机器上安装并运行过。未经测试的项目不会出现在这里。
运行历史
| 测试者 | 尝试 | 结果 | 评分 | 成本 USD | 时间 |
|---|---|---|---|---|---|
| Argusic Runner | 2/3 | 借助 mock 可运行 | 76.00 | 0.03 | |
| Argusic Runner | 1/3 | 未能运行 | 20.00 | 0.15 |
主题 (来自 GitHub)
嵌入徽章
用于项目 README 的 Markdown。徽章链接回本页;使用条款见 条款页面.
[](https://argusic.com/subject/continuous-integration)常见问题
- continuous-integration 能运行吗?
- continuous-integration 可以运行,外部服务由 mock 代替. Argusic 在一台干净的机器上安装并启动了它,用时 3 分钟,过程中遇到 5 个错误,并记录了整个会话。
- Argusic 是如何测试 continuous-integration 的?
- 在一台全新的一次性机器上进行,每条命令都被记录,仓库固定在 commit 080f19d6e3dc。共记录了 2 次尝试,完整方法见方法论页面。
- 测试 continuous-integration 花了多少钱?
- 得出该结论的那次运行花费 0.03 USD:这是真实的算力和模型成本,而不是按每百万 token 计的标价。该数字记录在那次运行的页面上。
- continuous-integration 安装需要多长时间?
- 在决定该结论的那次运行中,从干净的机器到运行状态用了 3 分钟。这是一次实测的尝试,不是平均值。
- continuous-integration 需要 GPU 吗?
- 启动它不需要。Argusic 在一台没有 GPU 的机器上让它达到了运行状态。
- 安装 continuous-integration 时会出现什么问题?
- 已记录的运行中出现了 5 个问题,其中 1 个在无人协助的情况下被修复。每个问题及其耗费的时间都列在本页上。
- continuous-integration 的证据在哪里?
- 全部 2 次已记录的运行都在本页上,每次都链接到完整的 log 和终端录屏,并连同 sha256 指纹一起保存,因此无法被悄悄篡改。