CI 故障¶
當我的 PR 上的 CI 作業失敗,但我認為我的 PR 並沒有導致失敗時,我該怎麼做?
-
檢視當前 CI 測試失敗的儀表板
👉 CI Failures Dashboard -
如果您的失敗 已列出,則很可能與您的 PR 無關。隨時歡迎提供修復幫助!
- 留下評論並附上失敗的其他例項連結。
- 使用 👍 表情符號來表示受影響的人數。
-
如果您的失敗 未列出,則應 提交問題。
提交 CI 測試失敗問題¶
-
提交 bug 報告
👉 新的 CI 故障報告 -
使用此標題格式
-
對於環境欄位
-
在描述中,包含失敗的測試
FAILED failing/test.py:failing_test1 - Failure description FAILED failing/test.py:failing_test2 - Failure description https://github.com/orgs/vllm-project/projects/20 https://github.com/vllm-project/vllm/issues/new?template=400-bug-report.yml FAILED failing/test.py:failing_test3 - Failure description -
附加日誌 (可摺疊部分示例)
日誌
ERROR 05-20 03:26:38 [dump_input.py:68] Dumping input data --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/dist-packages/vllm/v1/engine/core.py", line 203, in execute_model return self.model_executor.execute_model(scheduler_output) ... FAILED failing/test.py:failing_test1 - Failure description FAILED failing/test.py:failing_test2 - Failure description FAILED failing/test.py:failing_test3 - Failure description
整理日誌¶
從 Buildkite 下載完整的日誌檔案到本地。
去除時間戳和顏色編碼
.buildkite/scripts/ci-clean-log.sh
使用工具 wl-clipboard 進行快速複製貼上
調查 CI 測試失敗¶
- 前往 👉 Buildkite 主分支
- 使用二分查詢來找到出現問題的第一個構建。
- 將您的發現新增到 GitHub 問題中。
- 如果您找到了一個強有力的候選 PR,請在問題中提及它並 ping 貢獻者。
重現失敗¶
CI 測試失敗可能是間歇性的。使用 bash 迴圈反覆執行
.buildkite/scripts/rerun-test.sh
提交 PR¶
如果您提交 PR 來修復 CI 故障
- 將 PR 連結到問題:在 PR 描述中新增
Closes #12345。 - 新增
ci-failure標籤:這有助於在 CI Failures GitHub Project 中跟蹤它。
其他資源¶
日常分類¶
使用 Buildkite 分析 (2 天檢視) 來
- 識別
main分支上最近的測試失敗。 - 排除 PR 上的合法測試失敗。
- (可選) 忽略可靠性為 0% 的測試。
與 CI Failures Dashboard 進行比較。