GitHub Actions构建失败(Exit Code 1),原因是:
- 错误的Workflow配置 - 项目被自动初始化了Deno的workflow (
deno.yml) - Python项目运行Deno测试 - 项目是Python项目,但workflow试图运行Deno命令
- 依赖版本冲突 - 某些依赖库版本不兼容
git rm .github/workflows/deno.yml- 删除了自动生成的
.github/workflows/deno.yml - 原因:这个workflow是为Deno项目设计的,不适合Python项目
创建了 .github/workflows/python-tests.yml,包含:
name: Python Tests
on:
push:
branches: ["master", "main"]
pull_request:
branches: ["master", "main"]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11"]
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Run tests
run: |
python -m unittest tests -v
- name: Run quick_start demo (optional)
run: |
python quick_start.py
continue-on-error: true特点:
- ✅ 在多个Python版本上测试 (3.8, 3.9, 3.10, 3.11)
- ✅ 自动安装依赖
- ✅ 运行单元测试
- ✅ 可选的快速开始演示
修改了 requirements.txt 中的版本约束:
- Pillow>=9.0.0
+ Pillow>=9.0.0,<10.0.0
- opencv-python>=4.5.0
+ opencv-python>=4.5.0,<5.0.0
- numpy>=1.20.0
+ numpy>=1.20.0,<2.0.0
- scipy>=1.7.0
+ scipy>=1.7.0,<2.0.0
- Flask>=2.0.0
+ Flask>=2.0.0,<3.0.0
- flask-cors>=3.0.0
+ flask-cors>=3.0.0,<4.0.0
- Werkzeug>=2.0.0
+ Werkzeug>=2.0.0,<3.0.0原因:
- 明确上限版本,避免重大版本更新导致的兼容性问题
- 防止依赖库的breaking changes
✅ 已修复
- 删除
.github/workflows/deno.yml - 创建
.github/workflows/python-tests.yml - 修复
requirements.txt版本约束 - 提交修复 (commit:
8650f12) - 推送到GitHub
推送成功:
To https://github.com/findpsyche/jiuxingHttp.git
cf63fe5..8650f12 master -> master
现在GitHub Actions应该能够正确运行:
- 每次push时自动运行Python测试
- 在4个不同的Python版本上测试
- 运行所有单元测试和集成测试
可以访问你的GitHub项目的 Actions 标签页查看CI执行结果。
.github/workflows/python-tests.yml- 新的Python测试workflowrequirements.txt- 更新的依赖版本tests.py- 现有的测试套件(无需修改)
修复日期: 2025-12-21
提交哈希: 8650f12
修复者: GitHub Copilot