Arm backend: Consolidate CI testing#19696
Conversation
Testing is done via test_arm_backed.sh instead of different scripts. OOBT tests in CI is part of the test matrix instead of separate job descriptions doing the same thing. Github job names all start with test-arm-backend making it easier know what jobs belongs to and to filter in the HUD. Signed-off-by: Zingo Andersen <Zingo.Andersen@arm.com> Change-Id: Ic36bc41eb1a0581c68aa5bc3c15cdf4377ed981d
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/19696
Note: Links to docs will display an error until the docs builds have been completed. ❗ 1 Active SEVsThere are 1 currently active SEVs. If your PR is affected, please view them below: ❌ 1 Cancelled Job, 1 Unrelated Failure, 1 Unclassified FailureAs of commit e924c16 with merge base 7724fd7 ( UNCLASSIFIED FAILURE - DrCI could not classify the following job because the workflow did not run on the merge base. The failure may be pre-existing on trunk or introduced by this PR:
CANCELLED JOB - The following job was cancelled. Please retry:
BROKEN TRUNK - The following job failed but were present on the merge base:👉 Rebase onto the `viable/strict` branch to avoid these failures
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
There was a problem hiding this comment.
Pull request overview
This PR consolidates Arm backend CI coverage by routing out-of-the-box (OOTB) notebook/e2e checks through backends/arm/test/test_arm_backend.sh, simplifying the workflow matrix and standardizing job naming.
Changes:
- Add OOTB test entrypoints to
test_arm_backend.shthat delegate totest_arm_ootb.sh. - Add a dedicated requirements file for OOTB notebook execution (
notebook,nbconvert) and install it on-demand in the OOTB script. - Update CI workflows to include OOTB tests in the Arm backend test matrices and remove the standalone OOTB CI job; rename the PR workflow Arm job.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| backends/arm/test/test_arm_ootb.sh | Adds repo-root/requirements discovery and on-demand install for notebook execution deps. |
| backends/arm/test/test_arm_backend.sh | Introduces new test_* entrypoints to run OOTB suites via test_arm_ootb.sh. |
| backends/arm/requirements-arm-ootb-test.txt | New requirements list for OOTB notebook conversion/execution. |
| backends/arm/README.md | Documents the newly added OOTB test entrypoints. |
| .github/workflows/trunk.yml | Moves OOTB coverage into the existing Arm backend test matrices; removes standalone OOTB job. |
| .github/workflows/pull.yml | Renames the Arm backend “no driver” job (but currently introduces a YAML syntax issue). |
Comments suppressed due to low confidence (1)
backends/arm/test/test_arm_ootb.sh:40
install_ootb_test_requirementsfalls back topip install ...if the imports fail. Using barepipcan install into a different interpreter thanpython3(especially in conda), which can still leavepython3/jupytermissing the modules. Preferpython3 -m pip install -r "${ootb_requirements}"(and ideally check thatjupyter nbconvertis available after install).
install_ootb_test_requirements() {
python3 - <<'PY' || pip install -r "${ootb_requirements}"
import notebook # noqa: F401
import nbconvert # noqa: F401
PY
}
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| script_dir=$(cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd) | ||
| et_root_dir=$(cd "${script_dir}/../../.." && pwd) | ||
| ootb_requirements="${et_root_dir}/backends/arm/requirements-arm-ootb-test.txt" | ||
|
|
|
|
||
| unittest-arm-backend-with-no-deps: | ||
| name: unittest-arm-backend-with-no-deps | ||
| test-arm-backend-no-driver |
Testing is done via test_arm_backed.sh instead of different scripts. OOBT tests in CI is part of the test matrix instead of separate job descriptions doing the same thing.
GitHub job names all start with test-arm-backend making it easier know what jobs belongs to and to filter in the HUD.
Test plan
Github testing
cc @digantdesai @freddan80 @per @oscarandersson8218 @mansnils @Sebastian-Larsson @robell @rascani