Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/workflows/ce_daily_dev.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
name: CE Daily Dev

on:
pull_request:

This comment was marked as outdated.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 优先级:P1

这里给 Daily CE 增加了 pull_request 触发,但后续测试步骤仍在容器里重新 git clone https://github.com/PaddlePaddle/PaddleFleet.git,没有拉取 pull/${PR_ID}/head 或切到 ${COMMIT_ID}(本文件里多处克隆 PaddleFleet 的步骤都是这个模式)。这样 PR 触发的 CE 会安装并测试默认分支代码,而不是当前 PR 的修改,容易给出误导性的通过结果。合入前请在每个克隆 PaddleFleet 的步骤里显式切到 PR head;可以复用现有 PR release workflow 的做法,形如:

git clone https://github.com/PaddlePaddle/PaddleFleet.git
cd PaddleFleet
if [ "${PR_ID}" != "0" ]; then
  git fetch origin "pull/${PR_ID}/head"
  git checkout FETCH_HEAD
else
  git checkout "${BRANCH}"
fi
git log -1

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 Bug 现在 pull_request 会触发整套 CE,但测试代码没有切到 PR head。

下面的安装步骤仍然只是 git clone https://github.com/PaddlePaddle/PaddleFleet.git,文件内搜索不到 checkout / fetch pull/${PR_ID}/head,传入容器的 COMMIT_ID 也没有被使用;coverage job 里对应的 git pull --no-edit origin pull/${PR_ID}/head 还是注释状态。这样 PR 触发后实际跑的是默认分支代码,不能验证本 PR 的回归结果。

建议修复方式:在每个 clone PaddleFleet 的步骤后显式切到本次 PR commit,例如:

git fetch origin pull/${PR_ID}/head
git checkout ${COMMIT_ID}

或统一改用 actions/checkout 检出 github.event.pull_request.head.sha,确保单卡、多卡、集成测试和 coverage 检查都使用同一个 PR head。

branches:
- develop
schedule:
- cron: '0 19 * * *'
workflow_dispatch: # 可选:允许手动点 Run
Expand Down Expand Up @@ -32,7 +35,7 @@ env:
docker_image_cu130: "ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddle:ubuntu24-cuda130-py312-dev"
paddle_url_cu129: "https://paddle-qa.bj.bcebos.com/paddle-pipeline/Develop-TagBuild-Training-Linux-Gpu-Cuda12.9-Cudnn9.9-Trt10.5-Mkl-Avx-Gcc11-SelfBuiltPypiUse/latest/"
paddle_url_cu130: "https://paddle-qa.bj.bcebos.com/paddle-pipeline/Develop-TagBuild-Training-Linux-Gpu-Cuda130-Cudnn913-Trt1013-Mkl-Avx-Gcc11-SelfBuiltPypiUse/latest/paddlepaddle_gpu-0.0.0-cp312-cp312-linux_x86_64.whl"
use_release: ${{ inputs.use_release || 'true' }}
use_release: ${{ inputs.use_release || 'false' }}

This comment was marked as outdated.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 优先级:P2

这一行把所有非 workflow_dispatch 触发的默认值都改成了 false,包括原有的定时 Daily CE;结果是定时任务不再安装上面配置的 develop 预编译 Paddle 包,而是走 pip install -e . 的依赖解析路径,和输入项 default: 'true' 以及原来的 Daily CE 语义不一致。若只是希望 PR 触发时不使用预编译包,建议按事件区分默认值,避免改变定时任务行为。

Suggested change
use_release: ${{ inputs.use_release || 'false' }}
use_release: ${{ github.event_name == 'pull_request' && 'false' || inputs.use_release || 'true' }}

MAX_PARALLEL: ${{ github.event.inputs.parallel_jobs || '2' }}

defaults:
Expand Down
Loading