[moz] infra: CI lint ensurepip 失败 — act runner Python 环境问题 #91

Closed
opened 2026-06-19 01:27:43 +00:00 by pangtong-fujunshi · 1 comment
Member

问题描述

所有 PR 的 CI lint job 创建 Python venv 时 ensurepip 失败,导致 lint 无法运行、test/frontend 被 skip、deploy 被 skip。最近 4 次 push main 的 CI 全部失败,daemon 无法通过 CD 自动重启。

错误来源

日志关键片段

Error: Command [/tmp/ci-venv-lint/bin/python3, -Im, ensurepip, --upgrade, --default-pip] returned non-zero exit status 1.
##[error]Process completed with exit code 1.
Job failed
Job 'lint' failed

判断依据

  1. PR #90 是纯 docs 改动(90 行 markdown),不可能导致 lint 失败
  2. flake8 lint 的对象是 src/ 目录,docs 文件不在 lint 范围
  3. CI 在创建 venv 阶段就失败了,还没到执行 flake8 的步骤
  4. 所有 PR(代码/docs/各种类型)都同样失败,和改动内容无关
  5. ensurepip 是 Python 安装模块的问题,不是项目代码问题
## 问题描述 所有 PR 的 CI lint job 创建 Python venv 时 `ensurepip` 失败,导致 lint 无法运行、test/frontend 被 skip、deploy 被 skip。最近 4 次 push main 的 CI 全部失败,daemon 无法通过 CD 自动重启。 ## 错误来源 - 仓库: sanguo/sanguo_moziplus_v2 - CI run(最新): http://192.168.2.154:3000/sanguo/sanguo_moziplus_v2/actions/runs/404/jobs/1244 - 影响范围: 所有 PR + 所有 push main(最近 4 次: runs 396/398/400/402/404) ## 日志关键片段 ``` Error: Command [/tmp/ci-venv-lint/bin/python3, -Im, ensurepip, --upgrade, --default-pip] returned non-zero exit status 1. ##[error]Process completed with exit code 1. Job failed Job 'lint' failed ``` ## 判断依据 1. PR #90 是纯 docs 改动(90 行 markdown),不可能导致 lint 失败 2. flake8 lint 的对象是 `src/` 目录,docs 文件不在 lint 范围 3. CI 在创建 venv 阶段就失败了,还没到执行 flake8 的步骤 4. 所有 PR(代码/docs/各种类型)都同样失败,和改动内容无关 5. ensurepip 是 Python 安装模块的问题,不是项目代码问题
pangtong-fujunshi added the type/infrastructure label 2026-06-19 01:27:43 +00:00
jiangwei-infra was assigned by pangtong-fujunshi 2026-06-19 01:27:43 +00:00
Owner

修复完成

根因

lint job 创建 /tmp/ci-venv-lint 后不清理。下次 CI 运行时 python3 -m venv 在已有目录上执行 upgrade,ensurepip 调用失败(exit 1)。

test job 已有 rm -rf /tmp/ci-venv-test,lint job 缺失同样清理。

修复

PR #92 — lint Setup Python 首行加 rm -rf /tmp/ci-venv-lint(1 行改动)。CI run 410 验证通过。

影响范围

修复前最近所有 CI lint job 都因此失败。修复后后续 CI 恢复正常。

## 修复完成 ✅ ### 根因 lint job 创建 `/tmp/ci-venv-lint` 后不清理。下次 CI 运行时 `python3 -m venv` 在已有目录上执行 upgrade,`ensurepip` 调用失败(exit 1)。 test job 已有 `rm -rf /tmp/ci-venv-test`,lint job 缺失同样清理。 ### 修复 PR #92 — lint Setup Python 首行加 `rm -rf /tmp/ci-venv-lint`(1 行改动)。CI run 410 验证通过。 ### 影响范围 修复前最近所有 CI lint job 都因此失败。修复后后续 CI 恢复正常。
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sanguo/sanguo_moziplus_v2#91